- Shadow Iron Elementals now are immune to every damage that comes from pets

(http://www.uodemise.com/discussion/showthread.php?t=128063)

- Barkeep/Vendors now recognize Z axis
(http://www.uodemise.com/discussion/showthread.php?t=136970)
This commit is contained in:
daedalus 2010-01-30 11:26:30 +00:00
parent 42e4e9987d
commit ba8f9ebf40
3 changed files with 21 additions and 5 deletions

View file

@ -464,6 +464,9 @@ namespace Server.Mobiles
public virtual int BreathColdDamage{ get{ return 0; } }
public virtual int BreathPoisonDamage{ get{ return 0; } }
public virtual int BreathEnergyDamage{ get{ return 0; } }
// Is immune to breath damages
public virtual bool BreathImmune{ get{ return false; } }
// Effect details and sound
public virtual int BreathEffectItemID{ get{ return 0x36D4; } }
@ -535,6 +538,9 @@ namespace Server.Mobiles
public virtual void BreathDamage_Callback( object state )
{
Mobile target = (Mobile)state;
if ( target is BaseCreature && ((BaseCreature)target).BreathImmune )
return;
if ( CanBeHarmful( target ) )
{

View file

@ -56,6 +56,8 @@ namespace Server.Mobiles
public override bool AutoDispel{ get{ return true; } }
public override bool BleedImmune{ get{ return true; } }
public override int TreasureMapLevel{ get{ return 1; } }
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
public override bool BreathImmune{ get{ return true; } }
public override void AlterMeleeDamageFrom( Mobile from, ref int damage )
{
@ -72,6 +74,11 @@ namespace Server.Mobiles
{
scalar = 0.0; // Immune to magic
}
public override void AlterSpellDamageFrom( Mobile from, ref int damage )
{
damage = 0;
}
public ShadowIronElemental( Serial serial ) : base( serial )
{

View file

@ -442,13 +442,16 @@ namespace Server.Mobiles
IPooledEnumerable mobiles = Map.GetMobilesInRange( location, 0 );
if ( mobiles.GetEnumerator().MoveNext() )
foreach ( Mobile m in mobiles )
{
mobiles.Free();
return false;
if ( m.Z >= location.Z && m.Z < location.Z + 16 )
{
mobiles.Free();
return false;
}
}
else
mobiles.Free();
mobiles.Free();
BounceInfo bi = item.GetBounce();