public virtual void DrainLife()
{
List<Mobile> list = new List<Mobile>();
foreach (Mobile m in this.GetMobilesInRange(2))
{
if (m == this || !CanBeHarmful(m))
continue;
if (m is BaseCreature && (((BaseCreature)m).Controlled || ((BaseCreature)m).Summoned || ((BaseCreature)m).Team != this.Team))
list.Add(m);
else if (m.Player)
list.Add(m);
}
foreach (Mobile m in list)
{
DoHarmful(m);
m.FixedParticles(0x374A, 10, 15, 5013, 0x496, 0, EffectLayer.Waist);
m.PlaySound(0x231);
m.SendMessage("You feel the life drain out of you!");
int toDrain = DrainAmount;
//Monster Stealables
if (m is PlayerMobile)
{
PlayerMobile pm = m as PlayerMobile;
toDrain = (int)drNO.ThieveItems.LifeShieldLotion.HandleLifeDrain(pm, toDrain);
}
//end
Hits += toDrain;
m.Damage(toDrain, this);
}
}