public virtual IEnumerator <object> CombatTask() { while (true) { yield return(new Sleep(CombatPeriod)); // Hitrate = 2/3 // Damage = 2d6 int damage = Program.RNG.Next(1, 6 - 1) + Program.RNG.Next(1, 6 - 1); if (Program.RNG.Next(0, 3) <= 1) { Event.Send(new { Type = EventType.CombatHit, Sender = this, Target = _CombatTarget, WeaponName = "Longsword", Damage = damage }); _CombatTarget.Hurt(damage); } else { Event.Send(new { Type = EventType.CombatMiss, Sender = this, Target = _CombatTarget, WeaponName = "Longsword" }); } } }