void OnDamageInflicted(FightActor fighter, Damage damage) { if (fighter.IsAlive()) { return; } if (!(damage.Source is CharacterFighter)) { return; } if (damage.Spell == null) { UpdateStatus(ChallengeStatusEnum.FAILED, damage.Source); return; } if (fighter.IsIndirectSpellCast(damage.Spell) || fighter.IsPoisonSpellCast(damage.Spell)) { return; } UpdateStatus(ChallengeStatusEnum.FAILED, damage.Source); }
protected override void OnFighterRemoved(FightTeam team, FightActor actor) { if (base.State == FightState.Placement && team == this.AttackersTeam && actor is CharacterFighter) { TaxCollectorHandler.SendGuildFightPlayersEnemyRemoveMessage(this.TaxCollector.TaxCollectorNpc.Guild.Clients, this.TaxCollector.TaxCollectorNpc, (actor as CharacterFighter).Character); } if (actor is TaxCollectorFighter && actor.IsAlive()) { (actor as TaxCollectorFighter).TaxCollectorNpc.RejoinMap(); } base.OnFighterRemoved(team, actor); }