protected override bool TryExecuteWorker(IncidentParms parms)
        {
            if (!settings.Active)
            {
                return(false);
            }

            int spawnPoint = GetPlace(Current.Game.AnyPlayerHomeMap);

            ClimateBombSite site = (ClimateBombSite)WorldObjectMaker.MakeWorldObject(WorldObjectsDefOfLocal.ClimateBombSite);

            site.Tile = spawnPoint;
            ClimateBombComp comp = site.GetComponent <ClimateBombComp>();

            comp.SetTimer();
            Find.WorldObjects.Add(site);

            CommunicationDialog dialog = QuestsManager.Communications.AddCommunication(QuestsManager.Communications.UniqueIdManager.GetNextDialogID(), "ClimateBombTitle".Translate(), "ClimateBombDesc".Translate(), incident: def);

            comp.CommunicationDialog = dialog;

            SendStandardLetter(parms, site);

            return(true);
        }
Example #2
0
        public override void SpawnSetup()
        {
            base.SpawnSetup();

            Comp = GetComponent <ClimateBombComp>();

            caravanAction = new CaravanVisitAction_ClimateBomb(this);
        }