Exemple #1
0
        public override string GetInspectString()
        {
            string text = "InspectString_Timer".Translate(TicksToPass.TicksToDays().ToString("f2"));

            text += $"\n{"Quest_KillOrderTargetInfo".Translate(TargetPawn.Name.ToStringFull, Rewards[0].LabelCap)}";
            return(text);
        }
 public override string GetInspectString()
 {
     return("InspectString_Timer".Translate(TicksToPass.TicksToDays().ToString("f2")));
 }
 public override string GetInspectString()
 {
     return(saved ? "Quest_MissingPeople_InspectString2".Translate(TicksToPass.TicksToDays().ToString("f2")) : "Quest_MissingPeople_InspectString".Translate(TicksToPass.TicksToDays().ToString("f2")));
 }
Exemple #4
0
 public override string GetInspectString()
 {
     return($"InspectString_Timer".Translate(UnlimitedTime ? rebelFight.TicksToDays().ToString("f2") : TicksToPass.TicksToDays().ToString("f2")));
 }
        public override void Notify_CaravanFormed(QuestSite site, Caravan caravan)
        {
            foreach (var pawn in savedPawns)
            {
                if (pawn != null && !pawn.Dead)
                {
                    caravan.AddPawn(pawn, false);

                    pawn.DestroyOrPassToWorld();
                }
            }

            saved = true;
            ResetIcon();

            Settlement settlement = Find.WorldObjects.Settlements.Where(delegate(Settlement settl)
            {
                return(settl.Faction == Faction && Find.WorldReachability.CanReach(site.Tile, settl.Tile));
            }).OrderBy(x => Find.WorldGrid.ApproxDistanceInTiles(site.Tile, x.Tile)).FirstOrDefault();

            if (settlement != null)
            {
                int arrivalTime = CaravanArrivalTimeEstimator.EstimatedTicksToArrive(site.Tile, settlement.Tile, caravan);
                TicksToPass   = arrivalTime + (3 * 60000);
                UnlimitedTime = false;

                Find.LetterStack.ReceiveLetter("Quest_MissingPeople_Stage2Title".Translate(), "Quest_MissingPeople_Stage2".Translate(TicksToPass.ToStringTicksToDays("0.#")), LetterDefOf.PositiveEvent);
                site.Tile = settlement.Tile;

                Target = new LookTargets(site.Tile);
            }

            Current.Game.DeinitAndRemoveMap(site.Map);
        }