diff --git a/Assemblies/WhatTheHack.dll b/Assemblies/WhatTheHack.dll index 5ba850e7..ba106d04 100644 Binary files a/Assemblies/WhatTheHack.dll and b/Assemblies/WhatTheHack.dll differ diff --git a/Defs/ThingDefs/Buildings.xml b/Defs/ThingDefs/Buildings.xml index 7671ad51..d49add64 100644 --- a/Defs/ThingDefs/Buildings.xml +++ b/Defs/ThingDefs/Buildings.xml @@ -399,6 +399,12 @@ 5 (138,73,73,0) +
  • + CompPowerTrader + false + 200 + true +
  • PlaceWorker_NotUnderRoof
  • diff --git a/Source/WhatTheHack/Buildings/Building_MechanoidBeacon.cs b/Source/WhatTheHack/Buildings/Building_MechanoidBeacon.cs index 16edb16a..d02a66a9 100644 --- a/Source/WhatTheHack/Buildings/Building_MechanoidBeacon.cs +++ b/Source/WhatTheHack/Buildings/Building_MechanoidBeacon.cs @@ -29,6 +29,12 @@ public IEnumerable StartupGizmos() bool isDisabled = false; string disabledReason = ""; bool rogueAIAvailable = false; + + if (GetComp().coolDownTicks > 0) + { + isDisabled = true; + disabledReason = "WTH_CompHibernatable_MechanoidBeacon_Cooldown".Translate(((GetComp().coolDownTicks / (float)GenDate.TicksPerDay)).ToStringDecimalIfSmall()); + } foreach (ThingWithComps thing in this.Map.listerThings.AllThings.OfType()) { if (thing.def == WTH_DefOf.WTH_RogueAI) @@ -51,16 +57,15 @@ public IEnumerable StartupGizmos() } } - if (GetComp().coolDownTicks > 0) + if (!rogueAIAvailable) { isDisabled = true; - disabledReason = "WTH_CompHibernatable_MechanoidBeacon_Cooldown".Translate(((GetComp().coolDownTicks / (float)GenDate.TicksPerDay)).ToStringDecimalIfSmall()); - + disabledReason = "WTH_Reason_NoRogueAI".Translate(); } - if (!rogueAIAvailable) + if (!GetComp().PowerOn) { isDisabled = true; - disabledReason = "WTH_Reason_NoRogueAI".Translate(); + disabledReason = "WTH_Reason_NoPower".Translate(); }