private void InitializeVolcanicWinter() { GameConditionManager gameConditionManager = this.gameConditionManager; int duration = Mathf.RoundToInt(this.Duration); GameCondition cond = GameConditionMaker.MakeCondition(GameConditionDefOf.VolcanicWinter, duration); gameConditionManager.RegisterCondition(cond); }
private void InitializeDeathSkies() { GameConditionManager gameConditionManager = this.gameConditionManager; int duration = Mathf.RoundToInt(this.Duration); GameCondition cond2 = GameConditionMaker.MakeCondition(TorannMagicDefOf.DarkClouds, duration); gameConditionManager.RegisterCondition(cond2); }
private void InitializeSolarFlare() { GameConditionManager gameConditionManager = this.gameConditionManager; int duration = Mathf.RoundToInt(this.Duration); GameCondition cond = GameConditionMaker.MakeCondition(GameConditionDefOf.SolarFlare, duration); gameConditionManager.RegisterCondition(cond); }
protected override bool TryExecuteWorker(IncidentParms parms) { GameConditionManager gameConditionManager = parms.target.GameConditionManager; GameCondition cond = GameConditionMaker.MakeCondition(this.def.gameCondition, Ticks, 0); gameConditionManager.RegisterCondition(cond); base.SendStandardLetter(); return(true); }
protected override bool TryExecuteWorker(IncidentParms parms) { GameConditionManager gameConditionManager = parms.target.GameConditionManager; int duration = Mathf.RoundToInt(base.def.durationDays.RandomInRange * 60000f); GameCondition cond = GameConditionMaker.MakeCondition(base.def.gameCondition, duration, 0); gameConditionManager.RegisterCondition(cond); //base.SendStandardLetter(); //it's that easy! return(true); }
private void InitializeDarkStorms() { GameConditionManager gameConditionManager = base.CasterPawn.Map.gameConditionManager; int duration = 45000; GameCondition cond = GameConditionMaker.MakeCondition(TorannMagicDefOf.DarkThunderstorm, duration); gameConditionManager.RegisterCondition(cond); GameCondition_DarkThunderstorm gcdt = cond as GameCondition_DarkThunderstorm; if (gcdt != null) { gcdt.faction = base.CasterPawn.Faction; } }
protected override bool TryExecuteWorker(IncidentParms parms) { if (!settings.Active) { return(false); } GameConditionManager gameConditionManager = parms.target.GameConditionManager; int duration = Mathf.RoundToInt(def.durationDays.RandomInRange * 60000f); GameCondition cond = GameConditionMaker.MakeCondition(def.gameCondition, duration); gameConditionManager.RegisterCondition(cond); SendStandardLetter(parms, null); return(true); }
public override void CompTickRare() { base.CompTickRare(); if (!LoadedModManager.GetMod <MonsterHunterRimworldMod>().GetSettings <MonsterHunterRimworldModSettings>().elderDragonWeatherEffects) { return; } if (!(parent is Pawn elderDragon)) { return; } if (!WyvernUtility.IsElderDragon(elderDragon)) { return; } if (elderDragon.Dead) { return; } Map map = elderDragon.Map; if (map == null) { return; } GameConditionManager gameConditionManager = map.GameConditionManager; if (gameConditionManager.ConditionIsActive(GameConditionDefOf.ToxicFallout)) { return; } int duration = Mathf.RoundToInt(0.5f * 60000f); // lasts half a day after elder dragon dies GameCondition cond = GameConditionMaker.MakeCondition(GameConditionDefOf.ToxicFallout, duration); gameConditionManager.RegisterCondition(cond); }