#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,54 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A8, 0x27F3 )]
public class Bokuto : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Feint; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.NerveStrike; } }
public override int AosStrengthReq{ get{ return 20; } }
public override int AosMinDamage{ get{ return 9; } }
public override int AosMaxDamage{ get{ return 11; } }
public override int AosSpeed{ get{ return 53; } }
public override float MlSpeed{ get{ return 2.00f; } }
public override int OldStrengthReq{ get{ return 20; } }
public override int OldMinDamage{ get{ return 9; } }
public override int OldMaxDamage{ get{ return 11; } }
public override int OldSpeed{ get{ return 53; } }
public override int DefHitSound{ get{ return 0x536; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 25; } }
public override int InitMaxHits{ get{ return 50; } }
[Constructable]
public Bokuto() : base( 0x27A8 )
{
Weight = 7.0;
}
public Bokuto( 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,55 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A9, 0x27F4 )]
public class Daisho : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Feint; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override int AosStrengthReq{ get{ return 40; } }
public override int AosMinDamage{ get{ return 13; } }
public override int AosMaxDamage{ get{ return 15; } }
public override int AosSpeed{ get{ return 40; } }
public override float MlSpeed{ get{ return 2.75f; } }
public override int OldStrengthReq{ get{ return 40; } }
public override int OldMinDamage{ get{ return 13; } }
public override int OldMaxDamage{ get{ return 15; } }
public override int OldSpeed{ get{ return 40; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 45; } }
public override int InitMaxHits{ get{ return 65; } }
[Constructable]
public Daisho() : base( 0x27A9 )
{
Weight = 8.0;
Layer = Layer.TwoHanded;
}
public Daisho( 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,59 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27AD, 0x27F8 )]
public class Kama : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.WhirlwindAttack; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.DefenseMastery; } }
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 55; } }
public override float MlSpeed{ get{ return 2.00f; } }
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 55; } }
public override int DefHitSound{ get{ return 0x232; } }
public override int DefMissSound{ get{ return 0x238; } }
public override int InitMinHits{ get{ return 35; } }
public override int InitMaxHits{ get{ return 60; } }
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 Kama() : base( 0x27AD )
{
Weight = 7.0;
Layer = Layer.TwoHanded;
}
public Kama( 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,59 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A7, 0x27F2 )]
public class Lajatang : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DefenseMastery; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.FrenziedWhirlwind; } }
public override int AosStrengthReq{ get{ return 65; } }
public override int AosMinDamage{ get{ return 16; } }
public override int AosMaxDamage{ get{ return 18; } }
public override int AosSpeed{ get{ return 32; } }
public override float MlSpeed{ get{ return 3.50f; } }
public override int OldStrengthReq{ get{ return 65; } }
public override int OldMinDamage{ get{ return 16; } }
public override int OldMaxDamage{ get{ return 18; } }
public override int OldSpeed{ get{ return 55; } }
public override int DefHitSound{ get{ return 0x232; } }
public override int DefMissSound{ get{ return 0x238; } }
public override int InitMinHits{ get{ return 90; } }
public override int InitMaxHits{ get{ return 95; } }
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 Lajatang() : base( 0x27A7 )
{
Weight = 12.0;
Layer = Layer.TwoHanded;
}
public Lajatang( 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,55 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A2, 0x27ED )]
public class NoDachi : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.CrushingBlow; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.RidingSwipe; } }
public override int AosStrengthReq{ get{ return 40; } }
public override int AosMinDamage{ get{ return 16; } }
public override int AosMaxDamage{ get{ return 18; } }
public override int AosSpeed{ get{ return 35; } }
public override float MlSpeed{ get{ return 3.50f; } }
public override int OldStrengthReq{ get{ return 40; } }
public override int OldMinDamage{ get{ return 16; } }
public override int OldMaxDamage{ get{ return 18; } }
public override int OldSpeed{ get{ return 35; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 31; } }
public override int InitMaxHits{ get{ return 90; } }
[Constructable]
public NoDachi() : base( 0x27A2 )
{
Weight = 10.0;
Layer = Layer.TwoHanded;
}
public NoDachi( 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( 0x27AE, 0x27F9 )]
public class Nunchaku : BaseBashing
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Block; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Feint; } }
public override int AosStrengthReq{ get{ return 15; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 47; } }
public override float MlSpeed{ get{ return 2.50f; } }
public override int OldStrengthReq{ get{ return 15; } }
public override int OldMinDamage{ get{ return 11; } }
public override int OldMaxDamage{ get{ return 13; } }
public override int OldSpeed{ get{ return 47; } }
public override int DefHitSound{ get{ return 0x535; } }
public override int DefMissSound{ get{ return 0x239; } }
public override int InitMinHits{ get{ return 40; } }
public override int InitMaxHits{ get{ return 55; } }
[Constructable]
public Nunchaku() : base( 0x27AE )
{
Weight = 5.0;
}
public Nunchaku( 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,59 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27AF, 0x27FA )]
public class Sai : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Block; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.ArmorPierce; } }
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 55; } }
public override float MlSpeed{ get{ return 2.00f; } }
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 55; } }
public override int DefHitSound{ get{ return 0x23C; } }
public override int DefMissSound{ get{ return 0x232; } }
public override int InitMinHits{ get{ return 55; } }
public override int InitMaxHits{ get{ return 60; } }
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 Sai() : base( 0x27AF )
{
Weight = 7.0;
Layer = Layer.TwoHanded;
}
public Sai( 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,59 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27Ab, 0x27F6 )]
public class Tekagi : BaseKnife
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.DualWield; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.TalonStrike; } }
public override int AosStrengthReq{ get{ return 10; } }
public override int AosMinDamage{ get{ return 10; } }
public override int AosMaxDamage{ get{ return 12; } }
public override int AosSpeed{ get{ return 53; } }
public override float MlSpeed{ get{ return 2.00f; } }
public override int OldStrengthReq{ get{ return 10; } }
public override int OldMinDamage{ get{ return 10; } }
public override int OldMaxDamage{ get{ return 12; } }
public override int OldSpeed{ get{ return 53; } }
public override int DefHitSound{ get{ return 0x238; } }
public override int DefMissSound{ get{ return 0x232; } }
public override int InitMinHits{ get{ return 35; } }
public override int InitMaxHits{ get{ return 60; } }
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 Tekagi() : base( 0x27AB )
{
Weight = 5.0;
Layer = Layer.TwoHanded;
}
public Tekagi( 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,57 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A3, 0x27EE )]
public class Tessen : BaseBashing
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.Feint; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Block; } }
public override int AosStrengthReq{ get{ return 10; } }
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 10; } }
public override int OldMinDamage{ get{ return 10; } }
public override int OldMaxDamage{ get{ return 12; } }
public override int OldSpeed{ get{ return 50; } }
public override int DefHitSound{ get{ return 0x232; } }
public override int DefMissSound{ get{ return 0x238; } }
public override int InitMinHits{ get{ return 55; } }
public override int InitMaxHits{ get{ return 60; } }
public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.Bash2H; } }
[Constructable]
public Tessen() : base( 0x27A3 )
{
Weight = 6.0;
Layer = Layer.TwoHanded;
}
public Tessen( 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,57 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A6, 0x27F1 )]
public class Tetsubo : BaseBashing
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.FrenziedWhirlwind; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.CrushingBlow; } }
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 45; } }
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 45; } }
public override int DefHitSound{ get{ return 0x233; } }
public override int DefMissSound{ get{ return 0x238; } }
public override int InitMinHits{ get{ return 60; } }
public override int InitMaxHits{ get{ return 65; } }
public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.Bash2H; } }
[Constructable]
public Tetsubo() : base( 0x27A6 )
{
Weight = 8.0;
Layer = Layer.TwoHanded;
}
public Tetsubo( 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,55 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A4, 0x27EF )]
public class Wakizashi : BaseSword
{
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.FrenziedWhirlwind; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.DoubleStrike; } }
public override int AosStrengthReq{ get{ return 20; } }
public override int AosMinDamage{ get{ return 11; } }
public override int AosMaxDamage{ get{ return 13; } }
public override int AosSpeed{ get{ return 44; } }
public override float MlSpeed{ get{ return 2.50f; } }
public override int OldStrengthReq{ get{ return 20; } }
public override int OldMinDamage{ get{ return 11; } }
public override int OldMaxDamage{ get{ return 13; } }
public override int OldSpeed{ get{ return 44; } }
public override int DefHitSound{ get{ return 0x23B; } }
public override int DefMissSound{ get{ return 0x23A; } }
public override int InitMinHits{ get{ return 45; } }
public override int InitMaxHits{ get{ return 50; } }
[Constructable]
public Wakizashi() : base( 0x27A4 )
{
Weight = 5.0;
Layer = Layer.OneHanded;
}
public Wakizashi( 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,63 @@
using System;
using Server.Network;
using Server.Items;
namespace Server.Items
{
[FlipableAttribute( 0x27A5, 0x27F0 )]
public class Yumi : 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.ArmorPierce; } }
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.DoubleShot; } }
public override int AosStrengthReq{ get{ return 35; } }
public override int AosMinDamage{ get{ return Core.ML ? 16 : 18; } }
public override int AosMaxDamage{ get{ return 20; } }
public override int AosSpeed{ get{ return 25; } }
public override float MlSpeed{ get{ return 4.5f; } }
public override int OldStrengthReq{ get{ return 35; } }
public override int OldMinDamage{ get{ return 18; } }
public override int OldMaxDamage{ get{ return 20; } }
public override int OldSpeed{ get{ return 25; } }
public override int DefMaxRange{ get{ return 10; } }
public override int InitMinHits{ get{ return 55; } }
public override int InitMaxHits{ get{ return 60; } }
public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.ShootBow; } }
[Constructable]
public Yumi() : base( 0x27A5 )
{
Weight = 9.0;
Layer = Layer.TwoHanded;
}
public Yumi( 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();
if ( Weight == 7.0 )
Weight = 6.0;
}
}
}