diff --git a/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/Assemblies/WulaFallenEmpire.dll index d38db1d3..aebff2a8 100644 Binary files a/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/Assemblies/WulaFallenEmpire.dll differ diff --git a/1.6/Defs/BackstoryDefs/Solid/Solid_Child_WULA.xml b/1.6/Defs/BackstoryDefs/Solid/Solid_Child_WULA.xml index 455bb44b..b726d2e8 100644 --- a/1.6/Defs/BackstoryDefs/Solid/Solid_Child_WULA.xml +++ b/1.6/Defs/BackstoryDefs/Solid/Solid_Child_WULA.xml @@ -28,6 +28,7 @@ None
  • Wula_Synth
  • +
  • WULA_Maintenance_Neglect
  • WULA_Addons_Antenna_Hediff_Base
  • diff --git a/1.6/Defs/JobDefs/WULA_JobDefs.xml b/1.6/Defs/JobDefs/WULA_JobDefs.xml new file mode 100644 index 00000000..6bd73007 --- /dev/null +++ b/1.6/Defs/JobDefs/WULA_JobDefs.xml @@ -0,0 +1,18 @@ + + + + + WULA_HaulToMaintenancePod + WulaFallenEmpire.JobDriver_HaulToMaintenancePod + 正在为维护舱补充修复组件。 + true + + + + WULA_EnterMaintenancePod + WulaFallenEmpire.JobDriver_EnterMaintenancePod + 正在进入维护舱。 + true + + + \ No newline at end of file diff --git a/1.6/Defs/JobDefs/WULA_Jobs.xml b/1.6/Defs/JobDefs/WULA_Jobs.xml deleted file mode 100644 index 33914dfa..00000000 --- a/1.6/Defs/JobDefs/WULA_Jobs.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - WULA_HaulToMaintenancePod - WulaFallenEmpire.JobDriver_HaulToMaintenancePod - hauling TargetA to TargetB. - true - - - diff --git a/1.6/Defs/ThingDefs_Buildings/WULA_Buildings_Maintenance.xml b/1.6/Defs/ThingDefs_Buildings/WULA_Buildings_Maintenance.xml index dfc6abb4..7085bba1 100644 --- a/1.6/Defs/ThingDefs_Buildings/WULA_Buildings_Maintenance.xml +++ b/1.6/Defs/ThingDefs_Buildings/WULA_Buildings_Maintenance.xml @@ -59,12 +59,14 @@
  • 60000 250 - 50 + 5 WULA_Maintenance_Neglect ComponentIndustrial 5 0 0.75 + 5 + 0.01 BiosculpterPod_Enter BiosculpterPod_Exit BiosculpterPod_Operating @@ -75,4 +77,4 @@ - \ No newline at end of file + diff --git a/1.6/Defs/WULA_Jobs.xml b/1.6/Defs/WULA_Jobs.xml deleted file mode 100644 index 885db21d..00000000 --- a/1.6/Defs/WULA_Jobs.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - WULA_HaulToMaintenancePod - WulaFallenEmpire.JobDriver_HaulToMaintenancePod - hauling TargetA to TargetB. - true - - - \ No newline at end of file diff --git a/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml b/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml new file mode 100644 index 00000000..90027285 --- /dev/null +++ b/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml @@ -0,0 +1,18 @@ + + + + + 状态 + 空闲 + 运行中 + 储存的零部件 + 进入维护 + 命令一个需要维护的殖民者进入维护舱。 + 需要 {0} 零部件 + 没有殖民者需要维护。 + 中止维护并弹出殖民者。 + {PAWN_nameDef} 的维护已完成。 + 维护已取消。 + 没有可用的零部件来搬运。 + + \ No newline at end of file diff --git a/Source/WulaFallenEmpire/CompMaintenancePod.cs b/Source/WulaFallenEmpire/CompMaintenancePod.cs index 4bc27bb9..80891532 100644 --- a/Source/WulaFallenEmpire/CompMaintenancePod.cs +++ b/Source/WulaFallenEmpire/CompMaintenancePod.cs @@ -24,6 +24,8 @@ namespace WulaFallenEmpire public float componentCostPerSeverity = 1f; // How many components per 1.0 severity public int baseComponentCost = 0; // A flat cost in addition to severity cost public float minSeverityToMaintain = 0.75f; // The hediff severity required to trigger maintenance + public int capacity = 50; + public float hediffSeverityAfterCycle = 0.01f; public CompProperties_MaintenancePod() { @@ -39,7 +41,6 @@ namespace WulaFallenEmpire private CompPowerTrader powerComp; private StorageSettings allowedComponentSettings; public float storedComponents = 0f; - public int capacity = 50; // Let's define a capacity private int ticksRemaining; private MaintenancePodState state = MaintenancePodState.Idle; @@ -59,7 +60,7 @@ namespace WulaFallenEmpire return Props.baseComponentCost + (int)(hediff.Severity * Props.componentCostPerSeverity); } - public bool CanAcceptComponents(int count) => storedComponents + count <= capacity; + public bool CanAcceptComponents(int count) => storedComponents + count <= Props.capacity; // ===================== Setup ===================== public CompMaintenancePod() @@ -172,7 +173,7 @@ namespace WulaFallenEmpire Hediff hediff = occupant.health.hediffSet.GetFirstHediffOfDef(Props.hediffToRemove); if (hediff != null) { - hediff.Severity = 0.01f; + hediff.Severity = Props.hediffSeverityAfterCycle; Messages.Message("WULA_MaintenanceComplete".Translate(occupant.Named("PAWN")), occupant, MessageTypeDefOf.PositiveEvent); } } @@ -215,7 +216,7 @@ namespace WulaFallenEmpire sb.AppendLine("TimeLeft".Translate() + ": " + ticksRemaining.ToStringTicksToPeriod()); } - sb.AppendLine("WULA_MaintenancePod_StoredComponents".Translate() + ": " + storedComponents.ToString("F0") + " / " + capacity.ToString("F0")); + sb.AppendLine("WULA_MaintenancePod_StoredComponents".Translate() + ": " + storedComponents.ToString("F0") + " / " + Props.capacity.ToString("F0")); if (!PowerOn) { diff --git a/Source/WulaFallenEmpire/JobDriver_HaulToMaintenancePod.cs b/Source/WulaFallenEmpire/JobDriver_HaulToMaintenancePod.cs index 8ea6cc1d..29224a9f 100644 --- a/Source/WulaFallenEmpire/JobDriver_HaulToMaintenancePod.cs +++ b/Source/WulaFallenEmpire/JobDriver_HaulToMaintenancePod.cs @@ -12,7 +12,7 @@ namespace WulaFallenEmpire private const TargetIndex PodInd = TargetIndex.B; protected Thing Component => job.GetTarget(ComponentInd).Thing; - protected Building_Storage Pod => (Building_Storage)job.GetTarget(PodInd).Thing; + protected Building Pod => (Building)job.GetTarget(PodInd).Thing; public override bool TryMakePreToilReservations(bool errorOnFailed) { diff --git a/Source/WulaFallenEmpire/WorkGiver_HaulToMaintenancePod.cs b/Source/WulaFallenEmpire/WorkGiver_HaulToMaintenancePod.cs index e1fb21de..838243d3 100644 --- a/Source/WulaFallenEmpire/WorkGiver_HaulToMaintenancePod.cs +++ b/Source/WulaFallenEmpire/WorkGiver_HaulToMaintenancePod.cs @@ -29,7 +29,7 @@ namespace WulaFallenEmpire } // Check if it needs more components - if (comp.storedComponents >= comp.capacity) + if (comp.storedComponents >= comp.Props.capacity) { return false; } @@ -55,7 +55,7 @@ namespace WulaFallenEmpire } Job job = JobMaker.MakeJob(JobDefOf_WULA.WULA_HaulToMaintenancePod, component, t); - job.count = Math.Min(component.stackCount, (int)(comp.capacity - comp.storedComponents)); + job.count = Math.Min(component.stackCount, (int)(comp.Props.capacity - comp.storedComponents)); return job; }