Bug fix for :
skillcaps and things that exceed it Possible threading issue Addition of Generic FindItemsByType - List<T> findItemsByType<T>() Change to make polymorph not have a timer and instead a toggle skill KiAttack no longer works with ranged weapons Poison strike speed and damage changed Necro spells now affected by FC Must have atleast 50 weapon skill if no shield equipped to use Evasion Stalking bonus capped at 10 + skill/10 Stalking bonus now Clears Bugfix w/Guilds Crashguard Exception message moved closer to the top of the file. Character creation of Pallys and necros using advanced skills now gives skill items Honor no longer works on Players Pre-ML area HitArea attacks nolonger require LoS Serialization fix for BladeOfTheRighteous RidingSwipe now has paralyzation immunity as with NerveStrike and ParaBlow AnkhEast renamed to AnkhNorth LeggingsOfBane no longer have 510 HP ElvenWashBasinEastAddon Fixed AnsellaGryen won't be renamed each time the server Restarts DiseasedCats are properly named Localization fixes in DefBlacksmithy BearMasks/DearMAsks and things that extend from them now can be repaired
This commit is contained in:
parent
c3eb5cebc6
commit
ce54fe8635
28 changed files with 1495 additions and 1290 deletions
|
|
@ -11,7 +11,7 @@ namespace Server.Items
|
|||
public ElvenWashBasinEastAddon()
|
||||
{
|
||||
AddComponent( new AddonComponent( 0x30DF ), 0, 0, 0 );
|
||||
AddComponent( new AddonComponent( 0x30E0 ), 0, -1, 0 );
|
||||
AddComponent( new AddonComponent( 0x30E0 ), 0, 1, 0 );
|
||||
}
|
||||
|
||||
public ElvenWashBasinEastAddon( Serial serial ) : base( serial )
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ namespace Server.Items
|
|||
{
|
||||
Hue = 0x4F5;
|
||||
ArmorAttributes.DurabilityBonus = 100;
|
||||
this.HitPoints = this.MaxHitPoints = 255; //Cause the Durability bonus and such and the min/max hits as well as all other hits being whole #'s...
|
||||
Attributes.BonusStam = 8;
|
||||
Attributes.AttackChance = 20;
|
||||
}
|
||||
|
|
@ -30,7 +31,7 @@ namespace Server.Items
|
|||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 1 );
|
||||
writer.Write( (int) 2 );
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
|
|
@ -39,6 +40,12 @@ namespace Server.Items
|
|||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if( version <= 1 )
|
||||
{
|
||||
if( this.HitPoints > 255 || this.MaxHitPoints > 255 )
|
||||
this.HitPoints = this.MaxHitPoints = 255;
|
||||
}
|
||||
|
||||
if ( version < 1 )
|
||||
{
|
||||
if ( Hue == 0x559 )
|
||||
|
|
|
|||
|
|
@ -265,24 +265,26 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public class AnkhEast : Item
|
||||
[TypeAlias( "Server.Items.AnkhEast" )]
|
||||
public class AnkhNorth : Item
|
||||
{
|
||||
private InternalItem m_Item;
|
||||
|
||||
[Constructable]
|
||||
public AnkhEast() : this( false )
|
||||
public AnkhNorth() : this( false )
|
||||
{
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public AnkhEast( bool bloodied ) : base( bloodied ? 0x1E5D : 0x4 )
|
||||
public AnkhNorth( bool bloodied ) : base( bloodied ? 0x1E5D : 0x4 )
|
||||
{
|
||||
Movable = false;
|
||||
|
||||
m_Item = new InternalItem( bloodied, this );
|
||||
}
|
||||
|
||||
public AnkhEast( Serial serial ) : base( serial )
|
||||
public AnkhNorth( Serial serial )
|
||||
: base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
|
|
@ -352,9 +354,10 @@ namespace Server.Items
|
|||
|
||||
private class InternalItem : Item
|
||||
{
|
||||
private AnkhEast m_Item;
|
||||
private AnkhNorth m_Item;
|
||||
|
||||
public InternalItem( bool bloodied, AnkhEast item ) : base( bloodied ? 0x1E5C : 0x5 )
|
||||
public InternalItem( bool bloodied, AnkhNorth item )
|
||||
: base( bloodied ? 0x1E5C : 0x5 )
|
||||
{
|
||||
Movable = false;
|
||||
|
||||
|
|
@ -426,7 +429,7 @@ namespace Server.Items
|
|||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_Item = reader.ReadItem() as AnkhEast;
|
||||
m_Item = reader.ReadItem() as AnkhNorth;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,9 +63,18 @@ namespace Server.Items
|
|||
{
|
||||
int amount = 10 + (int)(10.0 * (attacker.Skills[SkillName.Bushido].Value - 50.0) / 70.0 + 5);
|
||||
|
||||
AOS.Damage( defender, attacker, amount, 100, 0, 0, 0, 0 );
|
||||
AOS.Damage( defender, attacker, amount, 100, 0, 0, 0, 0 );
|
||||
|
||||
defender.Paralyze( TimeSpan.FromSeconds( 3.0 ) );
|
||||
if( Server.Items.ParalyzingBlow.IsImmune( defender ) ) //Does it still do damage?
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1070804 ); // Your target resists paralysis.
|
||||
defender.SendLocalizedMessage( 1070813 ); // You resist paralysis.
|
||||
}
|
||||
else
|
||||
{
|
||||
defender.Paralyze( TimeSpan.FromSeconds( 3.0 ) );
|
||||
Server.Items.ParalyzingBlow.BeginImmunity( defender, Server.Items.ParalyzingBlow.FreezeDelayDuration );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ namespace Server.Items
|
|||
int version = reader.ReadInt();
|
||||
|
||||
if ( Slayer == SlayerName.None )
|
||||
Slayer = SlayerName.DaemonDismissal;
|
||||
Slayer = SlayerName.Exorcism;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1389,9 +1389,9 @@ namespace Server.Items
|
|||
if ( (m_Slayer == SlayerName.Silver || m_Slayer2 == SlayerName.Silver) && context != null && context.Type != typeof( HorrificBeastSpell ) )
|
||||
factor *= 1.25; // Every necromancer transformation other than horrific beast takes an additional 25% damage
|
||||
|
||||
if ( attacker is PlayerMobile )
|
||||
if ( attacker is PlayerMobile && !(Core.ML && defender is PlayerMobile ))
|
||||
{
|
||||
PlayerMobile pmAttacker = (PlayerMobile) attacker;
|
||||
PlayerMobile pmAttacker = (PlayerMobile) attacker;
|
||||
|
||||
if ( pmAttacker.HonorActive && pmAttacker.InRange( defender, 1 ) )
|
||||
factor *= 1.25;
|
||||
|
|
@ -1797,7 +1797,7 @@ namespace Server.Items
|
|||
|
||||
foreach ( Mobile m in from.GetMobilesInRange( 10 ) )
|
||||
{
|
||||
if ( from != m && defender != m && SpellHelper.ValidIndirectTarget( from, m ) && from.CanBeHarmful( m, false ) && from.InLOS( m ) )
|
||||
if ( from != m && defender != m && SpellHelper.ValidIndirectTarget( from, m ) && from.CanBeHarmful( m, false ) && ( !Core.ML || from.InLOS( m ) ) )
|
||||
list.Add( m );
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue