#W# Source and Scripts added. Added Scripts/Settings.cs to expose some basic tweak able settings.

This commit is contained in:
WarrentyExpired 2026-08-06 11:06:05 -04:00
parent b51c58f514
commit 3045c83799
3512 changed files with 627673 additions and 0 deletions

View file

@ -0,0 +1,40 @@
using System;
using Server.Items;
namespace Server.Items
{
public class BlightGrippedLongbow : ElvenCompositeLongbow
{
public override int LabelNumber{ get{ return 1072907; } } // Blight Gripped Longbow
[Constructable]
public BlightGrippedLongbow()
{
Hue = 0x8A4;
WeaponAttributes.HitPoisonArea = 20;
Attributes.RegenStam = 3;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 35;
}
public BlightGrippedLongbow( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,47 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class ColdForgedBlade : ElvenSpellblade
{
public override int LabelNumber{ get{ return 1072916; } } // Cold Forged Blade
[Constructable]
public ColdForgedBlade()
{
WeaponAttributes.HitHarm = 40;
Attributes.SpellChanneling = 1;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
Hue = this.GetElementalDamageHue();
}
public override void GetDamageTypes( Mobile wielder, out int phys, out int fire, out int cold, out int pois, out int nrgy, out int chaos, out int direct )
{
phys = fire = pois = nrgy = chaos = direct = 0;
cold = 100;
}
public ColdForgedBlade( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,47 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class LuminousRuneBlade : RuneBlade
{
public override int LabelNumber{ get{ return 1072922; } } // Luminous Rune Blade
[Constructable]
public LuminousRuneBlade()
{
WeaponAttributes.HitLightning = 40;
WeaponAttributes.SelfRepair = 5;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 55;
Hue = this.GetElementalDamageHue();
}
public override void GetDamageTypes( Mobile wielder, out int phys, out int fire, out int cold, out int pois, out int nrgy, out int chaos, out int direct )
{
phys = fire = cold = pois = chaos = direct = 0;
nrgy = 100;
}
public LuminousRuneBlade( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,49 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class OverseerSunderedBlade : RadiantScimitar
{
public override int LabelNumber{ get{ return 1072920; } } // Overseer Sundered Blade
[Constructable]
public OverseerSunderedBlade()
{
ItemID = 0x2D27;
Hue = 0x485;
Attributes.RegenStam = 2;
Attributes.AttackChance = 10;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 45;
Hue = this.GetElementalDamageHue();
}
public override void GetDamageTypes( Mobile wielder, out int phys, out int fire, out int cold, out int pois, out int nrgy, out int chaos, out int direct )
{
phys = cold = pois = nrgy = chaos = direct = 0;
fire = 100;
}
public OverseerSunderedBlade( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,45 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class PhantomStaff : WildStaff
{
public override int LabelNumber{ get{ return 1072919; } } // Phantom Staff
[Constructable]
public PhantomStaff()
{
Hue = 0x1;
Attributes.RegenHits = 2;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 60;
}
public override void GetDamageTypes( Mobile wielder, out int phys, out int fire, out int cold, out int pois, out int nrgy, out int chaos, out int direct )
{
phys = fire = nrgy = chaos = direct = 0;
cold = pois = 50;
}
public PhantomStaff( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,41 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class RuneCarvingKnife : AssassinSpike
{
public override int LabelNumber{ get{ return 1072915; } } // Rune Carving Knife
[Constructable]
public RuneCarvingKnife()
{
Hue = 0x48D;
WeaponAttributes.HitLeechMana = 40;
Attributes.RegenStam = 2;
Attributes.LowerManaCost = 10;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 30;
}
public RuneCarvingKnife( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,41 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class ShardThrasher : DiamondMace
{
public override int LabelNumber{ get{ return 1072918; } } // Shard Thrasher
[Constructable]
public ShardThrasher()
{
Hue = 0x4F2;
WeaponAttributes.HitPhysicalArea = 30;
Attributes.BonusStam = 8;
Attributes.AttackChance = 10;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 40;
}
public ShardThrasher( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,46 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class SilvanisFeywoodBow : ElvenCompositeLongbow
{
public override int LabelNumber{ get{ return 1072955; } } // Silvani's Feywood Bow
[Constructable]
public SilvanisFeywoodBow()
{
Hue = 0x1A;
Attributes.SpellChanneling = 1;
Attributes.AttackChance = 12;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 35;
}
public override void GetDamageTypes( Mobile wielder, out int phys, out int fire, out int cold, out int pois, out int nrgy, out int chaos, out int direct )
{
phys = fire = cold = pois = chaos = direct = 0;
nrgy = 100;
}
public SilvanisFeywoodBow( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,41 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
public class TheNightReaper : RepeatingCrossbow
{
public override int LabelNumber{ get{ return 1072912; } } // The Night Reaper
[Constructable]
public TheNightReaper()
{
ItemID = 0x26CD;
Hue = 0x41C;
Slayer = SlayerName.Exorcism;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 55;
}
public TheNightReaper( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D21, 0x2D2D )]
public class AssassinSpike : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.InfectiousStrike; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ShadowStrike; } }
public override int AosStrengthReq{ get{ return 15; } }
public override int AosMinDamage{ get{ return 10; } }
public override int AosMaxDamage{ get{ return 12; } }
public override int AosSpeed{ get{ return 50; } }
public override float MlSpeed{ get{ return 2.00f; } }
public override int OldStrengthReq{ get{ return 15; } }
public override int OldMinDamage{ get{ return 10; } }
public override int OldMaxDamage{ get{ return 12; } }
public override int OldSpeed{ get{ return 50; } }
public override int DefMissSound{ get{ return 0x239; } }
public override SkillName DefSkill { get { return SkillName.Fencing; } }
public override int InitMinHits{ get{ return 30; } } // TODO
public override int InitMaxHits{ get{ return 60; } } // TODO
[Constructable]
public AssassinSpike() : base( 0x2D21 )
{
Weight = 4.0;
}
public AssassinSpike( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,40 @@
using System;
using Server.Items;
namespace Server.Items
{
public class ButchersWarCleaver : WarCleaver
{
public override int LabelNumber{ get{ return 1073526; } } // butcher's war cleaver
[Constructable]
public ButchersWarCleaver() : base()
{
}
public ButchersWarCleaver( Serial serial ) : base( serial )
{
}
public override void AppendChildNameProperties( ObjectPropertyList list )
{
base.AppendChildNameProperties( list );
list.Add( 1072512 ); // Bovine Slayer
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,51 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D24, 0x2D30 )]
public class DiamondMace : BaseBashing
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.ConcussionBlow; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.CrushingBlow; } }
public override int AosStrengthReq{ get{ return 35; } }
public override int AosMinDamage{ get{ return 14; } }
public override int AosMaxDamage{ get{ return 17; } }
public override int AosSpeed{ get{ return 37; } }
public override float MlSpeed{ get{ return 3.00f; } }
public override int OldStrengthReq{ get{ return 35; } }
public override int OldMinDamage{ get{ return 14; } }
public override int OldMaxDamage{ get{ return 17; } }
public override int OldSpeed{ get{ return 37; } }
public override int InitMinHits{ get{ return 30; } } // TODO
public override int InitMaxHits{ get{ return 60; } } // TODO
[Constructable]
public DiamondMace() : base( 0x2D24 )
{
Weight = 10.0;
}
public DiamondMace( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,59 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D1E, 0x2D2A )]
public class ElvenCompositeLongbow : BaseRanged
{
public override int EffectID{ get{ return 0xF42; } }
public override Type AmmoType{ get{ return typeof( Arrow ); } }
public override Item Ammo{ get{ return new Arrow(); } }
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.ForceArrow; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.SerpentArrow; } }
public override int AosStrengthReq{ get{ return 45; } }
public override int AosMinDamage{ get{ return 12; } }
public override int AosMaxDamage{ get{ return 16; } }
public override int AosSpeed{ get{ return 27; } }
public override float MlSpeed{ get{ return 4.00f; } }
public override int OldStrengthReq{ get{ return 45; } }
public override int OldMinDamage{ get{ return 12; } }
public override int OldMaxDamage{ get{ return 16; } }
public override int OldSpeed{ get{ return 27; } }
public override int DefMaxRange{ get{ return 10; } }
public override int InitMinHits{ get{ return 41; } }
public override int InitMaxHits{ get{ return 90; } }
public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.ShootBow; } }
[Constructable]
public ElvenCompositeLongbow() : base( 0x2D1E )
{
Weight = 8.0;
}
public ElvenCompositeLongbow( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D35, 0x2D29 )]
public class ElvenMachete : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DefenseMastery; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Bladeweave; } }
public override int AosStrengthReq{ get{ return 20; } }
public override int AosMinDamage{ get{ return 13; } }
public override int AosMaxDamage{ get{ return 15; } }
public override int AosSpeed{ get{ return 41; } }
public override float MlSpeed{ get{ return 2.75f; } }
public override int OldStrengthReq{ get{ return 20; } }
public override int OldMinDamage{ get{ return 13; } }
public override int OldMaxDamage{ get{ return 15; } }
public override int OldSpeed{ get{ return 41; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 30; } }
public override int InitMaxHits{ get{ return 60; } }
[Constructable]
public ElvenMachete() : base( 0x2D35 )
{
Weight = 6.0;
}
public ElvenMachete( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D20, 0x2D2C )]
public class ElvenSpellblade : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.PsychicAttack; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.BleedAttack; } }
public override int AosStrengthReq{ get{ return 35; } }
public override int AosMinDamage{ get{ return 12; } }
public override int AosMaxDamage{ get{ return 14; } }
public override int AosSpeed{ get{ return 44; } }
public override float MlSpeed{ get{ return 2.50f; } }
public override int OldStrengthReq{ get{ return 35; } }
public override int OldMinDamage{ get{ return 12; } }
public override int OldMaxDamage{ get{ return 14; } }
public override int OldSpeed{ get{ return 44; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 30; } } // TODO
public override int InitMaxHits{ get{ return 60; } } // TODO
[Constructable]
public ElvenSpellblade() : base( 0x2D20 )
{
Weight = 5.0;
Layer = Layer.TwoHanded;
}
public ElvenSpellblade( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D22, 0x2D2E )]
public class Leafblade : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Feint; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorIgnore; } }
public override int AosStrengthReq{ get{ return 20; } }
public override int AosMinDamage{ get{ return 13; } }
public override int AosMaxDamage{ get{ return 15; } }
public override int AosSpeed{ get{ return 42; } }
public override float MlSpeed{ get{ return 2.75f; } }
public override int OldStrengthReq{ get{ return 20; } }
public override int OldMinDamage{ get{ return 13; } }
public override int OldMaxDamage{ get{ return 15; } }
public override int OldSpeed{ get{ return 42; } }
public override int DefMissSound{ get{ return 0x239; } }
public override SkillName DefSkill { get { return SkillName.Fencing; } }
public override int InitMinHits{ get{ return 30; } } // TODO
public override int InitMaxHits{ get{ return 60; } } // TODO
[Constructable]
public Leafblade() : base( 0x2D22 )
{
Weight = 8.0;
}
public Leafblade( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,57 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D2B, 0x2D1F )]
public class MagicalShortbow : BaseRanged
{
public override int EffectID{ get{ return 0xF42; } }
public override Type AmmoType{ get{ return typeof( Arrow ); } }
public override Item Ammo{ get{ return new Arrow(); } }
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.LightningArrow; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.PsychicAttack; } }
public override int AosStrengthReq{ get{ return 45; } }
public override int AosMinDamage{ get{ return 9; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 38; } }
public override float MlSpeed{ get{ return 3.00f; } }
public override int OldStrengthReq{ get{ return 45; } }
public override int OldMinDamage{ get{ return 9; } }
public override int OldMaxDamage{ get{ return 13; } }
public override int OldSpeed{ get{ return 38; } }
public override int DefMaxRange{ get{ return 10; } }
public override int InitMinHits{ get{ return 41; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public MagicalShortbow() : base( 0x2D2B )
{
Weight = 6.0;
}
public MagicalShortbow( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D28, 0x2D34 )]
public class OrnateAxe : BaseAxe
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Disarm; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.CrushingBlow; } }
public override int AosStrengthReq{ get{ return 45; } }
public override int AosMinDamage{ get{ return 18; } }
public override int AosMaxDamage{ get{ return 20; } }
public override int AosSpeed{ get{ return 26; } }
public override float MlSpeed{ get{ return 3.50f; } }
public override int OldStrengthReq{ get{ return 45; } }
public override int OldMinDamage{ get{ return 18; } }
public override int OldMaxDamage{ get{ return 20; } }
public override int OldSpeed{ get{ return 26; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 30; } }
public override int InitMaxHits{ get{ return 60; } }
[Constructable]
public OrnateAxe() : base( 0x2D28 )
{
Weight = 12.0;
Layer = Layer.TwoHanded;
}
public OrnateAxe( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D33, 0x2D27 )]
public class RadiantScimitar : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.WhirlwindAttack; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Bladeweave; } }
public override int AosStrengthReq{ get{ return 20; } }
public override int AosMinDamage{ get{ return 12; } }
public override int AosMaxDamage{ get{ return 14; } }
public override int AosSpeed{ get{ return 43; } }
public override float MlSpeed{ get{ return 2.50f; } }
public override int OldStrengthReq{ get{ return 20; } }
public override int OldMinDamage{ get{ return 12; } }
public override int OldMaxDamage{ get{ return 14; } }
public override int OldSpeed{ get{ return 43; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 30; } }
public override int InitMaxHits{ get{ return 60; } }
[Constructable]
public RadiantScimitar() : base( 0x2D33 )
{
Weight = 9.0;
}
public RadiantScimitar( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,55 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D32, 0x2D26 )]
public class RuneBlade : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Disarm; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Bladeweave; } }
public override int AosStrengthReq{ get{ return 30; } }
public override int AosMinDamage{ get{ return 15; } }
public override int AosMaxDamage{ get{ return 17; } }
public override int AosSpeed{ get{ return 35; } }
public override float MlSpeed{ get{ return 3.00f; } }
public override int OldStrengthReq{ get{ return 30; } }
public override int OldMinDamage{ get{ return 15; } }
public override int OldMaxDamage{ get{ return 17; } }
public override int OldSpeed{ get{ return 35; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 30; } }
public override int InitMaxHits{ get{ return 60; } }
[Constructable]
public RuneBlade() : base( 0x2D32 )
{
Weight = 7.0;
Layer = Layer.TwoHanded;
}
public RuneBlade( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,58 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D2F, 0x2D23 )]
public class WarCleaver : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Disarm; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Bladeweave; } }
public override int AosStrengthReq{ get{ return 15; } }
public override int AosMinDamage{ get{ return 9; } }
public override int AosMaxDamage{ get{ return 11; } }
public override int AosSpeed{ get{ return 48; } }
public override float MlSpeed{ get{ return 2.25f; } }
public override int OldStrengthReq{ get{ return 15; } }
public override int OldMinDamage{ get{ return 9; } }
public override int OldMaxDamage{ get{ return 11; } }
public override int OldSpeed{ get{ return 48; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 30; } } // TODO
public override int InitMaxHits{ get{ return 60; } } // TODO
public override SkillName DefSkill{ get{ return SkillName.Fencing; } }
public override WeaponType DefType{ get{ return WeaponType.Piercing; } }
public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.Pierce1H; } }
[Constructable]
public WarCleaver() : base( 0x2D2F )
{
Weight = 10.0;
}
public WarCleaver( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -0,0 +1,51 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x2D25, 0x2D31 )]
public class WildStaff : BaseStaff
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Block; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ForceOfNature; } }
public override int AosStrengthReq{ get{ return 15; } }
public override int AosMinDamage{ get{ return 10; } }
public override int AosMaxDamage{ get{ return 12; } }
public override int AosSpeed{ get{ return 48; } }
public override float MlSpeed{ get{ return 2.25f; } }
public override int OldStrengthReq{ get{ return 15; } }
public override int OldMinDamage{ get{ return 10; } }
public override int OldMaxDamage{ get{ return 12; } }
public override int OldSpeed{ get{ return 48; } }
public override int InitMinHits{ get{ return 30; } }
public override int InitMaxHits{ get{ return 60; } }
[Constructable]
public WildStaff() : base( 0x2D25 )
{
Weight = 8.0;
}
public WildStaff( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.WriteEncodedInt( 0 ); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadEncodedInt();
}
}
}