public virtual void CustomBreathDealDamage( Mobile target ) { Server.Items.FireEffectType effectType = Server.Items.FireEffectType.Fire; int fDamage = 0; int cDamage = 0; int pDamage = 0; int eDamage = 0; if( RangedAttackType == RangedAttackType.BreathePoison ) { effectType = Server.Items.FireEffectType.Poison; pDamage = 100; } if( RangedAttackType == RangedAttackType.BreatheCold ) { effectType = Server.Items.FireEffectType.Cold; cDamage = 100; } if( RangedAttackType == RangedAttackType.BreatheEnergy ) { effectType = Server.Items.FireEffectType.Energy; eDamage = 100; } if( ( cDamage + eDamage + pDamage ) < 1 ) fDamage = 100; if( CustomBreathType == CustomBreathType.Fire ) { FireEffect fire = new FireEffect(); fire.FireEffectType = effectType; fire.OnExplode( this, null, BreathComputeDamage(), target.Location, target.Map ); } else if( CustomBreathType == CustomBreathType.Goo ) { StickyGooEffect goo = new StickyGooEffect(); goo.OnExplode( this, null, 100, target.Location, target.Map ); } if( target is PlayerMobile && ( (PlayerMobile)target ).Evaded() ) return; AOS.Damage(target, this, BreathComputeDamage(), 0, fDamage, cDamage, pDamage, eDamage, 0, 0, 0); }
public virtual void BreathDealDamage(Mobile target) { FireEffect fire = new FireEffect(); fire.OnExplode(this, null, BreathComputeDamage(), target.Location, target.Map); if (target is PlayerMobile && ((PlayerMobile)target).Evaded()) return; AOS.Damage(target, this, BreathComputeDamage(), 0, 100, 0, 0, 0, 0, 0, 0); }