Reorganizes Project (#41)

This commit is contained in:
Kamron Batman 2019-08-02 18:13:40 -07:00 committed by GitHub
parent 08bf44af9a
commit 3614a66aee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3499 changed files with 79 additions and 55 deletions

View file

@ -0,0 +1,37 @@
namespace Server.Items
{
public class BlightGrippedLongbow : ElvenCompositeLongbow
{
[Constructible]
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 int LabelNumber => 1072907; // Blight Gripped Longbow
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,44 @@
namespace Server.Items
{
public class ColdForgedBlade : ElvenSpellblade
{
[Constructible]
public ColdForgedBlade()
{
WeaponAttributes.HitHarm = 40;
Attributes.SpellChanneling = 1;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
Hue = GetElementalDamageHue();
}
public ColdForgedBlade(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1072916; // Cold Forged Blade
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 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,44 @@
namespace Server.Items
{
public class LuminousRuneBlade : RuneBlade
{
[Constructible]
public LuminousRuneBlade()
{
WeaponAttributes.HitLightning = 40;
WeaponAttributes.SelfRepair = 5;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 55;
Hue = GetElementalDamageHue();
}
public LuminousRuneBlade(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1072922; // Luminous Rune Blade
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 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 @@
namespace Server.Items
{
public class OverseerSunderedBlade : RadiantScimitar
{
[Constructible]
public OverseerSunderedBlade()
{
ItemID = 0x2D27;
Hue = 0x485;
Attributes.RegenStam = 2;
Attributes.AttackChance = 10;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 45;
Hue = GetElementalDamageHue();
}
public OverseerSunderedBlade(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1072920; // Overseer Sundered Blade
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 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,42 @@
namespace Server.Items
{
public class PhantomStaff : WildStaff
{
[Constructible]
public PhantomStaff()
{
Hue = 0x1;
Attributes.RegenHits = 2;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 60;
}
public PhantomStaff(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1072919; // Phantom Staff
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 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,37 @@
namespace Server.Items
{
public class RuneCarvingKnife : AssassinSpike
{
[Constructible]
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 int LabelNumber => 1072915; // Rune Carving Knife
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,37 @@
namespace Server.Items
{
public class ShardThrasher : DiamondMace
{
[Constructible]
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 int LabelNumber => 1072918; // Shard Thrasher
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,43 @@
namespace Server.Items
{
public class SilvanisFeywoodBow : ElvenCompositeLongbow
{
[Constructible]
public SilvanisFeywoodBow()
{
Hue = 0x1A;
Attributes.SpellChanneling = 1;
Attributes.AttackChance = 12;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 35;
}
public SilvanisFeywoodBow(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1072955; // Silvani's Feywood Bow
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 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,37 @@
namespace Server.Items
{
public class TheNightReaper : RepeatingCrossbow
{
[Constructible]
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 int LabelNumber => 1072912; // The Night Reaper
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,50 @@
namespace Server.Items
{
[Flippable(0x2D21, 0x2D2D)]
public class AssassinSpike : BaseKnife
{
[Constructible]
public AssassinSpike() : base(0x2D21)
{
Weight = 4.0;
}
public AssassinSpike(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.InfectiousStrike;
public override WeaponAbility SecondaryAbility => WeaponAbility.ShadowStrike;
public override int AosStrengthReq => 15;
public override int AosMinDamage => 10;
public override int AosMaxDamage => 12;
public override int AosSpeed => 50;
public override float MlSpeed => 2.00f;
public override int OldStrengthReq => 15;
public override int OldMinDamage => 10;
public override int OldMaxDamage => 12;
public override int OldSpeed => 50;
public override int DefMissSound => 0x239;
public override SkillName DefSkill => SkillName.Fencing;
public override int InitMinHits => 30; // TODO
public override int InitMaxHits => 60; // TODO
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,37 @@
namespace Server.Items
{
public class ButchersWarCleaver : WarCleaver
{
[Constructible]
public ButchersWarCleaver()
{
}
public ButchersWarCleaver(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1073526; // butcher's war cleaver
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,47 @@
namespace Server.Items
{
[Flippable(0x2D24, 0x2D30)]
public class DiamondMace : BaseBashing
{
[Constructible]
public DiamondMace() : base(0x2D24)
{
Weight = 10.0;
}
public DiamondMace(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.ConcussionBlow;
public override WeaponAbility SecondaryAbility => WeaponAbility.CrushingBlow;
public override int AosStrengthReq => 35;
public override int AosMinDamage => 14;
public override int AosMaxDamage => 17;
public override int AosSpeed => 37;
public override float MlSpeed => 3.00f;
public override int OldStrengthReq => 35;
public override int OldMinDamage => 14;
public override int OldMaxDamage => 17;
public override int OldSpeed => 37;
public override int InitMinHits => 30; // TODO
public override int InitMaxHits => 60; // TODO
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;
namespace Server.Items
{
[Flippable(0x2D1E, 0x2D2A)]
public class ElvenCompositeLongbow : BaseRanged
{
[Constructible]
public ElvenCompositeLongbow() : base(0x2D1E)
{
Weight = 8.0;
}
public ElvenCompositeLongbow(Serial serial) : base(serial)
{
}
public override int EffectID => 0xF42;
public override Type AmmoType => typeof(Arrow);
public override Item Ammo => new Arrow();
public override WeaponAbility PrimaryAbility => WeaponAbility.ForceArrow;
public override WeaponAbility SecondaryAbility => WeaponAbility.SerpentArrow;
public override int AosStrengthReq => 45;
public override int AosMinDamage => 12;
public override int AosMaxDamage => 16;
public override int AosSpeed => 27;
public override float MlSpeed => 4.00f;
public override int OldStrengthReq => 45;
public override int OldMinDamage => 12;
public override int OldMaxDamage => 16;
public override int OldSpeed => 27;
public override int DefMaxRange => 10;
public override int InitMinHits => 41;
public override int InitMaxHits => 90;
public override WeaponAnimation DefAnimation => WeaponAnimation.ShootBow;
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,50 @@
namespace Server.Items
{
[Flippable(0x2D35, 0x2D29)]
public class ElvenMachete : BaseSword
{
[Constructible]
public ElvenMachete() : base(0x2D35)
{
Weight = 6.0;
}
public ElvenMachete(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.DefenseMastery;
public override WeaponAbility SecondaryAbility => WeaponAbility.Bladeweave;
public override int AosStrengthReq => 20;
public override int AosMinDamage => 13;
public override int AosMaxDamage => 15;
public override int AosSpeed => 41;
public override float MlSpeed => 2.75f;
public override int OldStrengthReq => 20;
public override int OldMinDamage => 13;
public override int OldMaxDamage => 15;
public override int OldSpeed => 41;
public override int DefHitSound => 0x23B;
public override int DefMissSound => 0x239;
public override int InitMinHits => 30;
public override int InitMaxHits => 60;
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,50 @@
namespace Server.Items
{
[Flippable(0x2D20, 0x2D2C)]
public class ElvenSpellblade : BaseKnife
{
[Constructible]
public ElvenSpellblade() : base(0x2D20)
{
Weight = 5.0;
Layer = Layer.TwoHanded;
}
public ElvenSpellblade(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.PsychicAttack;
public override WeaponAbility SecondaryAbility => WeaponAbility.BleedAttack;
public override int AosStrengthReq => 35;
public override int AosMinDamage => 12;
public override int AosMaxDamage => 14;
public override int AosSpeed => 44;
public override float MlSpeed => 2.50f;
public override int OldStrengthReq => 35;
public override int OldMinDamage => 12;
public override int OldMaxDamage => 14;
public override int OldSpeed => 44;
public override int DefMissSound => 0x239;
public override int InitMinHits => 30; // TODO
public override int InitMaxHits => 60; // TODO
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,50 @@
namespace Server.Items
{
[Flippable(0x2D22, 0x2D2E)]
public class Leafblade : BaseKnife
{
[Constructible]
public Leafblade() : base(0x2D22)
{
Weight = 8.0;
}
public Leafblade(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.Feint;
public override WeaponAbility SecondaryAbility => WeaponAbility.ArmorIgnore;
public override int AosStrengthReq => 20;
public override int AosMinDamage => 13;
public override int AosMaxDamage => 15;
public override int AosSpeed => 42;
public override float MlSpeed => 2.75f;
public override int OldStrengthReq => 20;
public override int OldMinDamage => 13;
public override int OldMaxDamage => 15;
public override int OldSpeed => 42;
public override int DefMissSound => 0x239;
public override SkillName DefSkill => SkillName.Fencing;
public override int InitMinHits => 30; // TODO
public override int InitMaxHits => 60; // TODO
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;
namespace Server.Items
{
[Flippable(0x2D2B, 0x2D1F)]
public class MagicalShortbow : BaseRanged
{
[Constructible]
public MagicalShortbow() : base(0x2D2B)
{
Weight = 6.0;
}
public MagicalShortbow(Serial serial) : base(serial)
{
}
public override int EffectID => 0xF42;
public override Type AmmoType => typeof(Arrow);
public override Item Ammo => new Arrow();
public override WeaponAbility PrimaryAbility => WeaponAbility.LightningArrow;
public override WeaponAbility SecondaryAbility => WeaponAbility.PsychicAttack;
public override int AosStrengthReq => 45;
public override int AosMinDamage => 9;
public override int AosMaxDamage => 13;
public override int AosSpeed => 38;
public override float MlSpeed => 3.00f;
public override int OldStrengthReq => 45;
public override int OldMinDamage => 9;
public override int OldMaxDamage => 13;
public override int OldSpeed => 38;
public override int DefMaxRange => 10;
public override int InitMinHits => 41;
public override int InitMaxHits => 90;
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,50 @@
namespace Server.Items
{
[Flippable(0x2D28, 0x2D34)]
public class OrnateAxe : BaseAxe
{
[Constructible]
public OrnateAxe() : base(0x2D28)
{
Weight = 12.0;
Layer = Layer.TwoHanded;
}
public OrnateAxe(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.Disarm;
public override WeaponAbility SecondaryAbility => WeaponAbility.CrushingBlow;
public override int AosStrengthReq => 45;
public override int AosMinDamage => 18;
public override int AosMaxDamage => 20;
public override int AosSpeed => 26;
public override float MlSpeed => 3.50f;
public override int OldStrengthReq => 45;
public override int OldMinDamage => 18;
public override int OldMaxDamage => 20;
public override int OldSpeed => 26;
public override int DefMissSound => 0x239;
public override int InitMinHits => 30;
public override int InitMaxHits => 60;
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,50 @@
namespace Server.Items
{
[Flippable(0x2D33, 0x2D27)]
public class RadiantScimitar : BaseSword
{
[Constructible]
public RadiantScimitar() : base(0x2D33)
{
Weight = 9.0;
}
public RadiantScimitar(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.WhirlwindAttack;
public override WeaponAbility SecondaryAbility => WeaponAbility.Bladeweave;
public override int AosStrengthReq => 20;
public override int AosMinDamage => 12;
public override int AosMaxDamage => 14;
public override int AosSpeed => 43;
public override float MlSpeed => 2.50f;
public override int OldStrengthReq => 20;
public override int OldMinDamage => 12;
public override int OldMaxDamage => 14;
public override int OldSpeed => 43;
public override int DefHitSound => 0x23B;
public override int DefMissSound => 0x239;
public override int InitMinHits => 30;
public override int InitMaxHits => 60;
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 @@
namespace Server.Items
{
[Flippable(0x2D32, 0x2D26)]
public class RuneBlade : BaseSword
{
[Constructible]
public RuneBlade() : base(0x2D32)
{
Weight = 7.0;
Layer = Layer.TwoHanded;
}
public RuneBlade(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.Disarm;
public override WeaponAbility SecondaryAbility => WeaponAbility.Bladeweave;
public override int AosStrengthReq => 30;
public override int AosMinDamage => 15;
public override int AosMaxDamage => 17;
public override int AosSpeed => 35;
public override float MlSpeed => 3.00f;
public override int OldStrengthReq => 30;
public override int OldMinDamage => 15;
public override int OldMaxDamage => 17;
public override int OldSpeed => 35;
public override int DefHitSound => 0x23B;
public override int DefMissSound => 0x239;
public override int InitMinHits => 30;
public override int InitMaxHits => 60;
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 @@
namespace Server.Items
{
[Flippable(0x2D2F, 0x2D23)]
public class WarCleaver : BaseKnife
{
[Constructible]
public WarCleaver() : base(0x2D2F)
{
Weight = 10.0;
}
public WarCleaver(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.Disarm;
public override WeaponAbility SecondaryAbility => WeaponAbility.Bladeweave;
public override int AosStrengthReq => 15;
public override int AosMinDamage => 9;
public override int AosMaxDamage => 11;
public override int AosSpeed => 48;
public override float MlSpeed => 2.25f;
public override int OldStrengthReq => 15;
public override int OldMinDamage => 9;
public override int OldMaxDamage => 11;
public override int OldSpeed => 48;
public override int DefHitSound => 0x23B;
public override int DefMissSound => 0x239;
public override int InitMinHits => 30; // TODO
public override int InitMaxHits => 60; // TODO
public override SkillName DefSkill => SkillName.Fencing;
public override WeaponType DefType => WeaponType.Piercing;
public override WeaponAnimation DefAnimation => WeaponAnimation.Pierce1H;
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 @@
namespace Server.Items
{
[Flippable(0x2D25, 0x2D31)]
public class WildStaff : BaseStaff
{
[Constructible]
public WildStaff() : base(0x2D25)
{
Weight = 8.0;
}
public WildStaff(Serial serial) : base(serial)
{
}
public override WeaponAbility PrimaryAbility => WeaponAbility.Block;
public override WeaponAbility SecondaryAbility => WeaponAbility.ForceOfNature;
public override int AosStrengthReq => 15;
public override int AosMinDamage => 10;
public override int AosMaxDamage => 12;
public override int AosSpeed => 48;
public override float MlSpeed => 2.25f;
public override int OldStrengthReq => 15;
public override int OldMinDamage => 10;
public override int OldMaxDamage => 12;
public override int OldSpeed => 48;
public override int InitMinHits => 30;
public override int InitMaxHits => 60;
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();
}
}
}