private static void OnChangingRole(ChangingRoleEventArgs ev) { if (BurningHandler.Get(ev.Player) is BurningHandler burningHandler) { burningHandler.BurnTime = 0f; } }
private static void OnItemUsed(UsedItemEventArgs ev) { if (Plugin.Instance.Config.BurnSettings.HealedBy.Contains(ev.Item.Type) && BurningHandler.Get(ev.Player) is BurningHandler burningHandler) { burningHandler.BurnTime = 0f; } }
private static void OnDied(DiedEventArgs ev) { if (BurningHandler.Get(ev.Target) is BurningHandler burningHandler) { burningHandler.BurnTime = 0f; } if (Scp457.Get(ev.Target) is Scp457 scp457) { scp457.Destroy(); } }
private static void OnDestroying(DestroyingEventArgs ev) { if (BurningHandler.Get(ev.Player) is BurningHandler burningHandler) { burningHandler.Destroy(); } if (Scp457.Get(ev.Player) is Scp457 scp457) { scp457.Destroy(); } }
/// <inheritdoc /> public bool Execute(ArraySegment <string> arguments, ICommandSender sender, out string response) { Player player = Player.Get((sender as PlayerCommandSender)?.SenderId); if (!(Scp457.Get(player) is Scp457 scp457)) { response = "You must be Scp457 to use this command."; return(false); } Config config = Plugin.Instance.Config; if (scp457.CombustCooldown > 0f) { response = config.CombustSettings.CooldownMessage.Replace("%seconds%", scp457.CombustCooldown.ToString()); return(false); } Methods.SpawnGrenade(player.Position); foreach (Player ply in Player.List) { if (ply.IsScp || ply.IsScp035() || ply.IsGhostSpectator() || ply.IsNpc()) { continue; } BurningHandler burningHandler = BurningHandler.Get(ply); if (burningHandler == null || !burningHandler.HasBurned) { continue; } float burnTime = burningHandler.BurnTime + config.CombustSettings.BurnDuration; if (burnTime > config.BurnSettings.MaximumDuration) { burnTime = config.BurnSettings.MaximumDuration; } burningHandler.LastAttacker = scp457; burningHandler.BurnTime = burnTime; ply.Hurt(config.CombustSettings.Damage, DamageTypes.Asphyxiation, player.Nickname, player.Id); ply.EnableEffect <Flashed>(config.CombustSettings.FlashDuration); } scp457.CombustCooldown = config.CombustSettings.Cooldown; response = config.CombustSettings.UsedMessage; return(false); }