public static void Kill(Mob attacker, Mob target) { Communications.DeliverMessage (target, null, MessageVector.Character, "\n\r\n\rYou are " + Colors.BRIGHT_RED + "DEAD!!" + Colors.CLEAR + "\n\r\n\r", ""); Communications.DeliverMessage (target, null, MessageVector.ThirdParty, "$n is " + Colors.BRIGHT_RED + "DEAD!!" + Colors.CLEAR + "\n\r", ""); if (target is Player) { //reward //clean up attacker.TargetEnemy = null; target.TargetEnemy = null; if (target.CombatType == CombatType.TurnBased) { target.Battle.Participants.Remove(target); target.Menu = null; attacker.Menu = null; } target.Battle = null; attacker.Battle = null; target.Move(Global.RoomTable[101]); target.Restore(); target.WaitPulses = Global.RoundDuration * 5; } else if (target is Mob) { //reward attacker.RewardExperience(target.ExperienceReward); attacker.AddCoins(target.Coins); //clean up attacker.TargetEnemy = null; target.TargetEnemy = null; if (target.CombatType == CombatType.TurnBased) { target.Battle.Participants.Remove(target); target.Menu = null; attacker.Menu = null; } target.Battle = null; attacker.Battle = null; target.Delete(); } }