public void TriggerIncident(DelayedIncident delayedIncident)
        {
            Settings.DebugString("Trigger Incident Called");
            var omenCycle =
                Find.Storyteller.storytellerComps.FirstOrDefault(comp =>
                                                                 comp.GetType() == typeof(StorytellerComp_OmenThreatCycle));

            if (omenCycle != null)
            {
                try
                {
                    Settings.DebugString("Fire event: " + delayedIncident.incident.label);
                    delayedIncident.incident.Worker.TryExecute(delayedIncident.incidentParms);
                    delayedIncident.incidentParms.target.StoryState.Notify_IncidentFired(
                        new FiringIncident(delayedIncident.incident, omenCycle, delayedIncident.incidentParms));
                }
                catch
                {
                    // ignored
                }
            }

            delayedIncident.didIt = true;
            Settings.DebugString("Trigger Incident Complete");
        }
 public DelayedIncident(DelayedIncident copy)
 {
     ticksUntilIncident = copy.ticksUntilIncident;
     incident           = copy.incident;
     incidentParms      = copy.incidentParms;
     map = copy.map;
 }
        public void AddDelayedIncident(DelayedIncident delayedIncident)
        {
            ++bigEvents;
            IncidentParms newParms = delayedIncident.incidentParms;

            newParms.points += newParms.points * (bigEvents * 0.05f);
            DelayedIncidents.Add(new DelayedIncident(delayedIncident.map, delayedIncident.incident, newParms, delayedIncident.ticksUntilIncident));
        }
        public void TriggerIncident(DelayedIncident delayedIncident)
        {
            Cthulhu.Utility.DebugReport("Trigger Incident Called");
            var omenCycle = Find.Storyteller.storytellerComps.FirstOrDefault((comp) => comp.GetType() == typeof(StorytellerComp_OmenThreatCycle));

            if (omenCycle != null)
            {
                try
                {
                    Cthulhu.Utility.DebugReport("Fire event: " + delayedIncident.incident.label);
                    delayedIncident.incident.Worker.TryExecute(delayedIncident.incidentParms);
                    delayedIncident.incidentParms.target.StoryState.Notify_IncidentFired(new FiringIncident(delayedIncident.incident, omenCycle, delayedIncident.incidentParms));
                }
                catch (Exception) { }
            }
            delayedIncident.didIt = true;
            Cthulhu.Utility.DebugReport("Trigger Incident Complete");
        }