public void onEnteredCombat() { if (UnityEngine.Random.value < 0.25f) { ShouldSlowThisRoom = true; } else { ShouldSlowThisRoom = false; } if (ShouldSlowThisRoom) { List <AIActor> activeEnemies = Owner.CurrentRoom.GetActiveEnemies(RoomHandler.ActiveEnemyType.All); if (activeEnemies != null) { for (int i = 0; i < activeEnemies.Count; i++) { AIActor aiactor = activeEnemies[i]; if (aiactor.IsNormalEnemy) { ApplyDirectStatusEffects.ApplyDirectSlow(aiactor.gameActor, 10000000000f, 0.75f, Color.white, Color.white, EffectResistanceType.None, "Goomperors Crown", false, false); } } } } }
private void LightEnemiesInRadiusOnFire(PlayerController user) { float effectRadius = 5f; if (user.PlayerHasActiveSynergy("Pyromaniac")) { effectRadius *= 2; } List <AIActor> activeEnemies = user.CurrentRoom.GetActiveEnemies(RoomHandler.ActiveEnemyType.All); if (activeEnemies != null) { for (int i = 0; i < activeEnemies.Count; i++) { AIActor aiactor = activeEnemies[i]; if (aiactor.IsNormalEnemy) { float num = Vector2.Distance(user.CenterPosition, aiactor.CenterPosition); if (num <= effectRadius) { ApplyDirectStatusEffects.ApplyDirectFire(aiactor, 10f, StaticStatusEffects.hotLeadEffect.DamagePerSecondToEnemies, StaticStatusEffects.hotLeadEffect.TintColor, StaticStatusEffects.hotLeadEffect.DeathTintColor, EffectResistanceType.Fire, "Fire", true, true); } } } } }
public void AIActorMods(AIActor target) { if (ShouldSlowThisRoom) { if (target && target.aiActor && target.aiActor.EnemyGuid != null) { ApplyDirectStatusEffects.ApplyDirectSlow(target, 10000000000f, 0.75f, Color.white, Color.white, EffectResistanceType.None, "Goomperors Crown", false, false); } } }
private void AddSlowEffect(Projectile arg1, SpeculativeRigidbody arg2, bool arg3) { if (arg2 != null && arg2.aiActor != null && Owner != null) { if (arg2 != null && arg2.healthHaver.IsAlive) { if (arg2.aiActor.EnemyGuid != "465da2bb086a4a88a803f79fe3a27677" && arg2.aiActor.EnemyGuid != "05b8afe0b6cc4fffa9dc6036fa24c8ec") { Gun gun = ETGMod.Databases.Items["triple_crossbow"] as Gun; GameActorSpeedEffect gameActorSpeedEffect = gun.DefaultModule.projectiles[0].speedEffect; ApplyDirectStatusEffects.ApplyDirectSlow(arg2.gameActor, 20f, gameActorSpeedEffect.SpeedMultiplier, Color.white, Color.white, EffectResistanceType.None, "Snail Bullets", false, false); } } } }
public void onEnteredCombat() { try { //ETGModConsole.Log("OnEnteredCombat was Triggered"); List <AIActor> activeEnemies = Owner.CurrentRoom.GetActiveEnemies(RoomHandler.ActiveEnemyType.All); if (activeEnemies != null) { foreach (AIActor aiactor in activeEnemies) { if (aiactor.IsNormalEnemy) { //ETGModConsole.Log("There are active eligible enemies!"); float freezeAmount = 0; if (aiactor.healthHaver.IsBoss) { freezeAmount = 100; } else { freezeAmount = 150; } ApplyDirectStatusEffects.ApplyDirectFreeze(aiactor.gameActor, 3, freezeAmount, StaticStatusEffects.chaosBulletsFreeze.UnfreezeDamagePercent, ExtendedColours.freezeBlue, ExtendedColours.freezeBlue, EffectResistanceType.None, "Permafrost", true, true); } } } else { //ETGModConsole.Log("Active enemies is NULL!"); } } catch (Exception e) { ETGModConsole.Log(e.Message); ETGModConsole.Log(e.StackTrace); } }