This commit is contained in:
mark 2009-06-28 03:36:42 +00:00
parent c63a5f13fa
commit 2204d5fb86
86 changed files with 1077 additions and 257 deletions

View file

@ -130,7 +130,7 @@ namespace Server.Spells.Spellweaving
public virtual bool CheckResisted( Mobile m )
{
double percent = (50 + 2*(GetResistSkill( m ) - GetDamageSkill( m )))/100; //TODO: According to the guide this is it.. but.. is it correct per OSI?
double percent = (50 + 2*(GetResistSkill( m ) - GetDamageSkill( Caster )))/100; //TODO: According to the guide this is it.. but.. is it correct per OSI?
if( percent <= 0 )
return false;

View file

@ -70,6 +70,13 @@ namespace Server.Spells.Spellweaving
{
Caster.SendLocalizedMessage( 501942 ); // That location is blocked.
}
//say "Target can not be seen" if you target directly a mobile, like in OSI
if (m != null)
{
Caster.SendLocalizedMessage(500237); // Target can not be seen.
}
else if( SpellHelper.CheckTown( p, Caster ) && (m_MobileTarg ? CheckHSequence( m ) : CheckSequence()) )
{
TimeSpan duration = TimeSpan.FromSeconds( Caster.Skills.Spellweaving.Value/24 + 25 + FocusLevel*2 );

View file

@ -27,8 +27,22 @@ namespace Server.Spells.Spellweaving
{
Caster.PlaySound( 0x5CE );
double skill = Caster.Skills[SkillName.Spellweaving].Value;
int damage = Math.Max( 11, 10 + (int)(skill / 24) ) + FocusLevel;
int sdiBonus = AosAttributes.GetValue( Caster, AosAttribute.SpellDamage );
int pvmDamage = damage * ( 100 + sdiBonus );
pvmDamage /= 100;
if ( sdiBonus > 15 )
sdiBonus = 15;
int pvpDamage = damage * ( 100 + sdiBonus );
pvpDamage /= 100;
int range = 2 + FocusLevel;
int damage = 15 + FocusLevel;
TimeSpan duration = TimeSpan.FromSeconds( 5 + FocusLevel );
List<Mobile> targets = new List<Mobile>();
@ -47,7 +61,7 @@ namespace Server.Spells.Spellweaving
Spell oldSpell = m.Spell as Spell;
SpellHelper.Damage( this, m, damage, 0, 0, 0, 0, 100 );
SpellHelper.Damage( this, m, ( m.Player && Caster.Player ) ? pvpDamage : pvmDamage, 0, 0, 0, 0, 100 );
if( oldSpell != null && oldSpell != m.Spell )
{