public static FloatMenuAcceptanceReport CanAttack(IEnumerable <IThingHolder> pods, SettlementBase settlement) { FloatMenuAcceptanceReport result; if (settlement == null || !settlement.Spawned || !settlement.Attackable) { result = false; } else if (!TransportPodsArrivalActionUtility.AnyNonDownedColonist(pods)) { result = false; } else if (settlement.EnterCooldownBlocksEntering()) { result = FloatMenuAcceptanceReport.WithFailMessage("MessageEnterCooldownBlocksEntering".Translate(new object[] { settlement.EnterCooldownDaysLeft().ToString("0.#") })); } else { result = true; } return(result); }
public static FloatMenuAcceptanceReport CanVisit(IEnumerable <IThingHolder> pods, Site site) { FloatMenuAcceptanceReport result; if (site == null || !site.Spawned || !site.core.def.transportPodsCanLandAndGenerateMap) { result = false; } else if (!TransportPodsArrivalActionUtility.AnyNonDownedColonist(pods)) { result = false; } else if (site.EnterCooldownBlocksEntering()) { result = FloatMenuAcceptanceReport.WithFailMessage("MessageEnterCooldownBlocksEntering".Translate(new object[] { site.EnterCooldownDaysLeft().ToString("0.#") })); } else { result = true; } return(result); }
public static FloatMenuAcceptanceReport CanVisit(IEnumerable <IThingHolder> pods, Site site) { if (site == null || !site.Spawned) { return(false); } if (!TransportPodsArrivalActionUtility.AnyNonDownedColonist(pods)) { return(false); } if (site.EnterCooldownBlocksEntering()) { return(FloatMenuAcceptanceReport.WithFailMessage("MessageEnterCooldownBlocksEntering".Translate(site.EnterCooldownTicksLeft().ToStringTicksToPeriod()))); } return(true); }
public static FloatMenuAcceptanceReport CanAttack(IEnumerable <IThingHolder> pods, Settlement settlement) { if (settlement == null || !settlement.Spawned || !settlement.Attackable) { return(false); } if (!TransportPodsArrivalActionUtility.AnyNonDownedColonist(pods)) { return(false); } if (settlement.EnterCooldownBlocksEntering()) { return(FloatMenuAcceptanceReport.WithFailMessage("MessageEnterCooldownBlocksEntering".Translate(settlement.EnterCooldownDaysLeft().ToString("0.#")))); } return(true); }