Fixes casting checks
This commit is contained in:
parent
7ea00fbf4f
commit
03dd5f1926
431 changed files with 5616 additions and 6250 deletions
|
|
@ -14,7 +14,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063347, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido or Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063347, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido or Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063347, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido or Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -28,7 +28,7 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
|
@ -41,7 +41,7 @@ namespace Server.Items
|
|||
|
||||
DefenseMasteryInfo info = m_Table[attacker] as DefenseMasteryInfo;
|
||||
|
||||
if( info != null )
|
||||
if ( info != null )
|
||||
EndDefense( (object)info );
|
||||
|
||||
ResistanceMod mod = new ResistanceMod( ResistanceType.Physical, 50 + modifier );
|
||||
|
|
@ -76,7 +76,7 @@ namespace Server.Items
|
|||
{
|
||||
DefenseMasteryInfo info = m_Table[targ] as DefenseMasteryInfo;
|
||||
|
||||
if( info == null )
|
||||
if ( info == null )
|
||||
return false;
|
||||
|
||||
damageMalus = info.m_DamageMalus;
|
||||
|
|
@ -87,10 +87,10 @@ namespace Server.Items
|
|||
{
|
||||
DefenseMasteryInfo info = (DefenseMasteryInfo)state;
|
||||
|
||||
if( info.m_Mod != null )
|
||||
if ( info.m_Mod != null )
|
||||
info.m_From.RemoveResistanceMod( info.m_Mod );
|
||||
|
||||
if( info.m_Timer != null )
|
||||
if ( info.m_Timer != null )
|
||||
info.m_Timer.Stop();
|
||||
|
||||
// No message is sent to the player.
|
||||
|
|
|
|||
|
|
@ -90,15 +90,15 @@ namespace Server.Items
|
|||
defender.Mount.Rider = null;
|
||||
}
|
||||
|
||||
if( attacker is PlayerMobile )
|
||||
if ( attacker is PlayerMobile )
|
||||
{
|
||||
(attacker as PlayerMobile).SetMountBlock(BlockMountType.DismountRecovery, RemountDelay, true );
|
||||
}
|
||||
else if( Core.ML && attacker is BaseCreature )
|
||||
else if ( Core.ML && attacker is BaseCreature )
|
||||
{
|
||||
BaseCreature bc = attacker as BaseCreature;
|
||||
|
||||
if( bc.ControlMaster is PlayerMobile )
|
||||
if ( bc.ControlMaster is PlayerMobile )
|
||||
{
|
||||
PlayerMobile pm = bc.ControlMaster as PlayerMobile;
|
||||
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063347, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido or Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -37,9 +37,9 @@ namespace Server.Items
|
|||
|
||||
public override bool Validate( Mobile from )
|
||||
{
|
||||
if( base.Validate( from ) )
|
||||
if ( base.Validate( from ) )
|
||||
{
|
||||
if( from.Mounted )
|
||||
if ( from.Mounted )
|
||||
return true;
|
||||
else
|
||||
{
|
||||
|
|
@ -53,7 +53,7 @@ namespace Server.Items
|
|||
|
||||
public void Use( Mobile attacker, Mobile defender )
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) || attacker.Weapon == null ) //sanity
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) || attacker.Weapon == null ) //sanity
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063352, "50" ); // You need ~1_SKILL_REQUIREMENT~ Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -32,10 +32,10 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
if( Registry.Contains( attacker ) )
|
||||
if ( Registry.Contains( attacker ) )
|
||||
{
|
||||
DualWieldTimer existingtimer = (DualWieldTimer)Registry[attacker];
|
||||
existingtimer.Stop();
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063347, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido or Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -32,10 +32,10 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
if( Registry.Contains( defender ) )
|
||||
if ( Registry.Contains( defender ) )
|
||||
{
|
||||
FeintTimer existingtimer = (FeintTimer)Registry[defender];
|
||||
existingtimer.Stop();
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 && GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063347, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido or Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -33,19 +33,19 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !Validate( attacker ) ) //Mana check after check that there are targets
|
||||
if ( !Validate( attacker ) ) //Mana check after check that there are targets
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
||||
Map map = attacker.Map;
|
||||
|
||||
if( map == null )
|
||||
if ( map == null )
|
||||
return;
|
||||
|
||||
BaseWeapon weapon = attacker.Weapon as BaseWeapon;
|
||||
|
||||
if( weapon == null )
|
||||
if ( weapon == null )
|
||||
return;
|
||||
|
||||
ArrayList list = new ArrayList();
|
||||
|
|
@ -59,22 +59,22 @@ namespace Server.Items
|
|||
{
|
||||
Mobile m = (Mobile)list[i];
|
||||
|
||||
if( m != defender && m != attacker && SpellHelper.ValidIndirectTarget( attacker, m ) )
|
||||
if ( m != defender && m != attacker && SpellHelper.ValidIndirectTarget( attacker, m ) )
|
||||
{
|
||||
if( m == null || m.Deleted || m.Map != attacker.Map || !m.Alive || !attacker.CanSee( m ) || !attacker.CanBeHarmful( m ) )
|
||||
if ( m == null || m.Deleted || m.Map != attacker.Map || !m.Alive || !attacker.CanSee( m ) || !attacker.CanBeHarmful( m ) )
|
||||
continue;
|
||||
|
||||
if( !attacker.InRange( m, weapon.MaxRange ) )
|
||||
if ( !attacker.InRange( m, weapon.MaxRange ) )
|
||||
continue;
|
||||
|
||||
if( attacker.InLOS( m ) )
|
||||
if ( attacker.InLOS( m ) )
|
||||
targets.Add( m );
|
||||
}
|
||||
}
|
||||
|
||||
if( targets.Count > 0 )
|
||||
if ( targets.Count > 0 )
|
||||
{
|
||||
if( !CheckMana( attacker, true ) )
|
||||
if ( !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
attacker.FixedEffect( 0x3728, 10, 15 );
|
||||
|
|
@ -90,7 +90,7 @@ namespace Server.Items
|
|||
|
||||
Timer t = Registry[m] as Timer;
|
||||
|
||||
if( t != null )
|
||||
if ( t != null )
|
||||
{
|
||||
t.Stop();
|
||||
Registry.Remove( m );
|
||||
|
|
@ -136,7 +136,7 @@ namespace Server.Items
|
|||
|
||||
protected override void OnTick()
|
||||
{
|
||||
if( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
if ( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
{
|
||||
Stop();
|
||||
Server.Items.FrenziedWhirlwind.Registry.Remove( m_Defender );
|
||||
|
|
@ -146,18 +146,18 @@ namespace Server.Items
|
|||
m_DamageRemaining -= DamagePerTick;
|
||||
m_DamageToDo += DamagePerTick;
|
||||
|
||||
if( m_DamageRemaining <= 0 && m_DamageToDo < 1 )
|
||||
if ( m_DamageRemaining <= 0 && m_DamageToDo < 1 )
|
||||
m_DamageToDo = 1.0; //Confirm this 'round up' at the end
|
||||
|
||||
int damage = (int)m_DamageToDo;
|
||||
|
||||
if( damage > 0 )
|
||||
if ( damage > 0 )
|
||||
{
|
||||
m_Defender.Damage( damage, m_Attacker );
|
||||
m_DamageToDo -= damage;
|
||||
}
|
||||
|
||||
if( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
if ( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
{
|
||||
Stop();
|
||||
Server.Items.FrenziedWhirlwind.Registry.Remove( m_Defender );
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit(Mobile attacker, Mobile defender, int damage)
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1070768, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -27,7 +27,7 @@ namespace Server.Items
|
|||
|
||||
public override bool OnBeforeSwing( Mobile attacker, Mobile defender )
|
||||
{
|
||||
if( defender.Paralyzed )
|
||||
if ( defender.Paralyzed )
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1061923 ); // The target is already frozen.
|
||||
return false;
|
||||
|
|
@ -38,7 +38,7 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
|
@ -70,7 +70,7 @@ namespace Server.Items
|
|||
Server.Items.ParalyzingBlow.BeginImmunity( defender, Server.Items.ParalyzingBlow.FreezeDelayDuration );
|
||||
}
|
||||
}
|
||||
else if( !cantpara )
|
||||
else if ( !cantpara )
|
||||
{
|
||||
AOS.Damage( defender, attacker, (int)(15.0 * (attacker.Skills[SkillName.Bushido].Value - 50.0) / 70.0 + 10), true, 100, 0, 0, 0, 0 ); //10-25
|
||||
defender.Freeze(TimeSpan.FromSeconds(2.0));
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ namespace Server.Items
|
|||
|
||||
public override bool OnBeforeSwing( Mobile attacker, Mobile defender )
|
||||
{
|
||||
if( defender.Paralyzed )
|
||||
if ( defender.Paralyzed )
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1061923 ); // The target is already frozen.
|
||||
return false;
|
||||
|
|
@ -61,12 +61,12 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
||||
if( IsImmune( defender ) ) //Intentionally going after Mana consumption
|
||||
if ( IsImmune( defender ) ) //Intentionally going after Mana consumption
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1070804 ); // Your target resists paralysis.
|
||||
defender.SendLocalizedMessage( 1070813 ); // You resist paralysis.
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Bushido ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1070768, "50" ); // You need ~1_SKILL_REQUIREMENT~ Bushido skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -33,24 +33,24 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( !defender.Mounted )
|
||||
if ( !defender.Mounted )
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1060848 ); // This attack only works on mounted targets
|
||||
ClearCurrentAbility( attacker );
|
||||
return;
|
||||
}
|
||||
|
||||
if( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
||||
if( !attacker.Mounted )
|
||||
if ( !attacker.Mounted )
|
||||
{
|
||||
Mobile mount = defender.Mount as Mobile;
|
||||
BaseMount.Dismount( defender );
|
||||
|
||||
if( mount != null ) //Ethy mounts don't take damage
|
||||
if ( mount != null ) //Ethy mounts don't take damage
|
||||
{
|
||||
int amount = 10 + (int)(10.0 * (attacker.Skills[SkillName.Bushido].Value - 50.0) / 70.0 + 5);
|
||||
|
||||
|
|
@ -65,7 +65,7 @@ namespace Server.Items
|
|||
|
||||
AOS.Damage( defender, attacker, amount, 100, 0, 0, 0, 0 );
|
||||
|
||||
if( Server.Items.ParalyzingBlow.IsImmune( defender ) ) //Does it still do damage?
|
||||
if ( Server.Items.ParalyzingBlow.IsImmune( defender ) ) //Does it still do damage?
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1070804 ); // Your target resists paralysis.
|
||||
defender.SendLocalizedMessage( 1070813 ); // You resist paralysis.
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ namespace Server.Items
|
|||
|
||||
public override bool CheckSkills( Mobile from )
|
||||
{
|
||||
if( GetSkill( from, SkillName.Ninjitsu ) < 50.0 )
|
||||
if ( GetSkill( from, SkillName.Ninjitsu ) < 50.0 )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063352, "50" ); // You need ~1_SKILL_REQUIREMENT~ Ninjitsu skill to perform that attack!
|
||||
return false;
|
||||
|
|
@ -33,7 +33,7 @@ namespace Server.Items
|
|||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
{
|
||||
if( Registry.Contains( defender ) || !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
if ( Registry.Contains( defender ) || !Validate( attacker ) || !CheckMana( attacker, true ) )
|
||||
return;
|
||||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
|
@ -73,7 +73,7 @@ namespace Server.Items
|
|||
|
||||
protected override void OnTick()
|
||||
{
|
||||
if( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
if ( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
{
|
||||
Stop();
|
||||
Server.Items.TalonStrike.Registry.Remove( m_Defender );
|
||||
|
|
@ -83,19 +83,19 @@ namespace Server.Items
|
|||
m_DamageRemaining -= DamagePerTick;
|
||||
m_DamageToDo += DamagePerTick;
|
||||
|
||||
if( m_DamageRemaining <= 0 && m_DamageToDo < 1 )
|
||||
if ( m_DamageRemaining <= 0 && m_DamageToDo < 1 )
|
||||
m_DamageToDo = 1.0; //Confirm this 'round up' at the end
|
||||
|
||||
int damage = (int)m_DamageToDo;
|
||||
|
||||
if( damage > 0 )
|
||||
if ( damage > 0 )
|
||||
{
|
||||
//m_Defender.Damage( damage, m_Attacker, false );
|
||||
m_Defender.Hits -= damage; //Don't show damage, don't disrupt
|
||||
m_DamageToDo -= damage;
|
||||
}
|
||||
|
||||
if( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
if ( !m_Defender.Alive || m_DamageRemaining <= 0 )
|
||||
{
|
||||
Stop();
|
||||
Server.Items.TalonStrike.Registry.Remove( m_Defender );
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ namespace Server.Items
|
|||
|
||||
if ( from.Mana < mana )
|
||||
{
|
||||
if( ( from is BaseCreature ) && ( from as BaseCreature ).HasManaOveride )
|
||||
if ( ( from is BaseCreature ) && ( from as BaseCreature ).HasManaOveride )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
|
@ -176,7 +176,7 @@ namespace Server.Items
|
|||
if ( state == null )
|
||||
return false;
|
||||
|
||||
if( RequiresSE && !state.SupportsExpansion( Expansion.SE ) )
|
||||
if ( RequiresSE && !state.SupportsExpansion( Expansion.SE ) )
|
||||
{
|
||||
from.SendLocalizedMessage( 1063456 ); // You must upgrade to Samurai Empire in order to use that ability.
|
||||
return false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue