Overwrite

Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
Unstable Kitsune
2023-11-28 23:20:26 -05:00
parent 3cd54811de
commit b918192e4e
11608 changed files with 2644205 additions and 47 deletions

View File

@@ -0,0 +1,49 @@
using System;
namespace Server.Items
{
public class Abhorrence : Crossbow
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1154472; } } // Abhorrence
[Constructable]
public Abhorrence()
{
Attributes.SpellChanneling = 1;
WeaponAttributes.HitLightning = 35;
WeaponAttributes.HitLeechMana = 40;
WeaponAttributes.HitLowerDefend = 20;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 50;
ExtendedWeaponAttributes.Bane = 1;
Hue = 1910;
}
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)
{
nrgy = 100;
phys = pois = cold = chaos = direct = fire = 0;
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public Abhorrence(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,41 @@
using System;
namespace Server.Items
{
public class AbyssReaver : Cyclone
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1112694; } } // Abyss Reaver
[Constructable]
public AbyssReaver()
{
SkillBonuses.SetValues(0, SkillName.Throwing, Utility.RandomMinMax(5, 10));
Attributes.WeaponDamage = Utility.RandomMinMax(25, 35);
Slayer = SlayerName.Exorcism;
}
public AbyssReaver(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)1); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = InheritsItem ? 1 : reader.ReadInt();
if (version == 0)
{
Attributes.AttackChance = 0;
Attributes.WeaponSpeed = 0;
}
}
}
}

View File

@@ -0,0 +1,56 @@
using System;
namespace Server.Items
{
public class AbyssalBlade : StoneWarSword
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113520; } } // Abyssal Blade
[Constructable]
public AbyssalBlade()
{
Hue = 2404;
WeaponAttributes.HitManaDrain = 50;
WeaponAttributes.HitFatigue = 50;
WeaponAttributes.HitLeechHits = 60;
WeaponAttributes.HitLeechStam = 60;
WeaponAttributes.HitLeechMana = 60;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 60;
AosElementDamages.Chaos = 100;
}
public AbyssalBlade(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,40 @@
using System;
namespace Server.Items
{
public class AdventurersMachete : ElvenMachete
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public AdventurersMachete()
{
Attributes.Luck = 20;
}
public AdventurersMachete(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073533;
}
}// adventurer's machete
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;
namespace Server.Items
{
public class AncientWildStaff : WildStaff
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public AncientWildStaff()
{
WeaponAttributes.ResistPoisonBonus = 5;
}
public AncientWildStaff(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073550;
}
}// ancient wild staff
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;
namespace Server.Items
{
public class ArcanistsWildStaff : WildStaff
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ArcanistsWildStaff()
{
Attributes.BonusMana = 3;
Attributes.WeaponDamage = 3;
}
public ArcanistsWildStaff(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073549;
}
}// arcanist's wild staff
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,67 @@
using System;
namespace Server.Items
{
public class ArcticDeathDealer : WarMace
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ArcticDeathDealer()
{
Hue = 0x480;
WeaponAttributes.HitHarm = 33;
WeaponAttributes.HitLowerAttack = 40;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 40;
WeaponAttributes.ResistColdBonus = 10;
}
public ArcticDeathDealer(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063481;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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)
{
cold = 50;
phys = 50;
pois = fire = nrgy = chaos = direct = 0;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,41 @@
using System;
namespace Server.Items
{
public class AssassinsShortbow : MagicalShortbow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public AssassinsShortbow()
{
Attributes.AttackChance = 3;
Attributes.WeaponDamage = 4;
}
public AssassinsShortbow(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073512;
}
}// assassin's shortbow
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
{
[FlipableAttribute(0xF47, 0xF48)]
public class AxeOfAbandon : BattleAxe
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113863; } } // Axe of Abandon
[Constructable]
public AxeOfAbandon()
{
Hue = 556;
WeaponAttributes.HitLowerDefend = 40;
WeaponAttributes.BattleLust = 1;
Attributes.AttackChance = 15;
Attributes.DefendChance = 10;
Attributes.CastSpeed = 1;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 50;
}
public AxeOfAbandon(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,65 @@
using System;
namespace Server.Items
{
public class AxeOfTheHeavens : DoubleAxe
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public AxeOfTheHeavens()
{
Hue = 0x4D5;
WeaponAttributes.HitLightning = 50;
Attributes.AttackChance = 15;
Attributes.DefendChance = 15;
Attributes.WeaponDamage = 50;
}
public AxeOfTheHeavens(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1061106;
}
}// Axe of the Heavens
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,55 @@
using System;
namespace Server.Items
{
public class AxesOfFury : DualShortAxes
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113517; } } // Axes Of Fury
[Constructable]
public AxesOfFury()
{
Hue = 33;
WeaponAttributes.HitFireball = 45;
WeaponAttributes.HitLowerDefend = 40;
Attributes.BonusDex = 5;
Attributes.DefendChance = -15;
Attributes.AttackChance = 20;
Attributes.WeaponDamage = 45;
Attributes.WeaponSpeed = 30;
}
public AxesOfFury(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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;
namespace Server.Items
{
public class BansheesCall : Cyclone
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113529; } } // Banshee's Call
[Constructable]
public BansheesCall()
{
Hue = 1266;
WeaponAttributes.HitHarm = 40;
Attributes.BonusStr = 5;
WeaponAttributes.HitLeechHits = 45;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 50;
Velocity = 35;
AosElementDamages.Cold = 100;
}
public BansheesCall(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,40 @@
using System;
namespace Server.Items
{
public class BarbedLongbow : ElvenCompositeLongbow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BarbedLongbow()
{
Attributes.ReflectPhysical = 12;
}
public BarbedLongbow(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073505;
}
}// barbed 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,57 @@
using System;
namespace Server.Items
{
public class BladeDance : RuneBlade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BladeDance()
{
Hue = 0x66C;
Attributes.BonusMana = 8;
Attributes.SpellChanneling = 1;
Attributes.WeaponDamage = 30;
WeaponAttributes.HitLeechMana = 20;
WeaponAttributes.UseBestSkill = 1;
}
public BladeDance(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1075033;
}
}// Blade Dance
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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;
namespace Server.Items
{
public class BladeOfBattle : Shortblade
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113525; } } // Blade of Battle
[Constructable]
public BladeOfBattle()
{
Hue = 2045;
WeaponAttributes.HitLowerDefend = 40;
WeaponAttributes.BattleLust = 1;
Attributes.AttackChance = 15;
Attributes.DefendChance = 10;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
}
public BladeOfBattle(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,65 @@
using System;
namespace Server.Items
{
public class BladeOfInsanity : Katana
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BladeOfInsanity()
{
Hue = 0x76D;
WeaponAttributes.HitLeechStam = 100;
Attributes.RegenStam = 2;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 50;
}
public BladeOfInsanity(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1061088;
}
}// Blade of Insanity
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,66 @@
using System;
namespace Server.Items
{
public class BladeOfTheRighteous : Longsword
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BladeOfTheRighteous()
{
Hue = 0x47E;
Slayer = SlayerName.Exorcism;
WeaponAttributes.HitLeechHits = 87;
WeaponAttributes.UseBestSkill = 1;
Attributes.BonusHits = 10;
Attributes.WeaponDamage = 50;
}
public BladeOfTheRighteous(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1061107;
}
}// Blade of the Righteous
public override int ArtifactRarity
{
get
{
return 10;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,68 @@
using System;
namespace Server.Items
{
public class BlazeOfDeath : Halberd
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BlazeOfDeath()
{
Hue = 0x501;
WeaponAttributes.HitFireArea = 50;
WeaponAttributes.HitFireball = 50;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 35;
WeaponAttributes.ResistFireBonus = 10;
WeaponAttributes.LowerStatReq = 100;
}
public BlazeOfDeath(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063486;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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)
{
fire = 50;
phys = 50;
cold = pois = nrgy = chaos = direct = 0;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,45 @@
using System;
namespace Server.Items
{
public class BlightGrippedLongbow : ElvenCompositeLongbow
{
public override bool IsArtifact { get { return true; } }
[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 int LabelNumber
{
get
{
return 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,64 @@
using System;
namespace Server.Items
{
public class BoneCrusher : WarMace
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BoneCrusher()
{
Hue = 0x60C;
WeaponAttributes.HitLowerDefend = 50;
Attributes.BonusStr = 10;
Attributes.WeaponDamage = 75;
}
public BoneCrusher(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1061596;
}
}// Bone Crusher
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,57 @@
using System;
namespace Server.Items
{
public class Bonesmasher : DiamondMace
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Bonesmasher()
{
Hue = 0x482;
SkillBonuses.SetValues(0, SkillName.Macing, 10.0);
WeaponAttributes.HitLeechMana = 40;
WeaponAttributes.SelfRepair = 2;
}
public Bonesmasher(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1075030;
}
}// Bonesmasher
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,65 @@
using System;
namespace Server.Items
{
public class Boomstick : WildStaff
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Boomstick()
: base()
{
Hue = 0x25;
Attributes.SpellChanneling = 1;
Attributes.RegenMana = 3;
Attributes.CastSpeed = 1;
Attributes.LowerRegCost = 20;
}
public Boomstick(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1075032;
}
}// Boomstick
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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 = nrgy = direct = 0;
chaos = 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,103 @@
using System;
namespace Server.Items
{
public class BowOfTheInfiniteSwarm : CompositeBow
{
public override int LabelNumber { get { return 1157347; } } // bow of the infinite swarm
public override bool IsArtifact { get { return true; } }
[Constructable]
public BowOfTheInfiniteSwarm()
{
ExtendedWeaponAttributes.HitSwarm = 20;
WeaponAttributes.HitLeechMana = 50;
WeaponAttributes.HitLeechStam = 50;
Attributes.BonusStam = 8;
Attributes.RegenStam = 3;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 50;
}
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 = 100;
fire = cold = nrgy = chaos = direct = pois = 0;
}
public BowOfTheInfiniteSwarm(Serial serial)
: base(serial)
{
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt(1); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
if (version == 0 && this.WeaponAttributes.HitLeechMana != 50)
this.WeaponAttributes.HitLeechMana = 50;
}
}
public class GlaiveOfTheInfiniteSwarm : SoulGlaive
{
public override int LabelNumber { get { return 1157366; } } // Glaive of the Infinite Swarm
public override bool IsArtifact { get { return true; } }
[Constructable]
public GlaiveOfTheInfiniteSwarm()
{
ExtendedWeaponAttributes.HitSwarm = 20;
this.WeaponAttributes.HitLeechMana = 50;
this.WeaponAttributes.HitLeechStam = 50;
this.Attributes.BonusStam = 8;
this.Attributes.RegenStam = 3;
this.Attributes.WeaponSpeed = 30;
this.Attributes.WeaponDamage = 50;
}
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 = 100;
fire = cold = nrgy = chaos = direct = pois = 0;
}
public GlaiveOfTheInfiniteSwarm(Serial serial)
: base(serial)
{
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt(1); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
if (version == 0 && this.WeaponAttributes.HitLeechMana != 50)
this.WeaponAttributes.HitLeechMana = 50;
}
}
}

View File

@@ -0,0 +1,58 @@
using System;
namespace Server.Items
{
public class BowOfTheJukaKing : Bow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BowOfTheJukaKing()
{
Hue = 0x460;
WeaponAttributes.HitMagicArrow = 25;
Slayer = SlayerName.ReptilianDeath;
Attributes.AttackChance = 15;
Attributes.WeaponDamage = 40;
}
public BowOfTheJukaKing(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1070636;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,75 @@
using System;
namespace Server.Items
{
public class BraveKnightOfTheBritannia : Katana
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BraveKnightOfTheBritannia()
{
Hue = 0x47e;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 35;
WeaponAttributes.HitLeechStam = 48;
WeaponAttributes.HitHarm = 26;
WeaponAttributes.HitLeechHits = 22;
}
public BraveKnightOfTheBritannia(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1094909;
}
}// Brave Knight of The Britannia [Replica]
public override int InitMinHits
{
get
{
return 150;
}
}
public override int InitMaxHits
{
get
{
return 150;
}
}
public override bool CanFortify
{
get
{
return false;
}
}
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 = chaos = direct = 0;
fire = 40;
cold = 30;
pois = 10;
nrgy = 20;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,88 @@
using System;
namespace Server.Items
{
public class BreastplateOfTheBerserker : GargishPlateChest
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113539; } } // Breastplate of the Berserker
[Constructable]
public BreastplateOfTheBerserker()
{
Hue = 1172;
Attributes.WeaponSpeed = 10;
Attributes.WeaponDamage = 15;
Attributes.LowerManaCost = 4;
Attributes.BonusHits = 5;
Attributes.RegenStam = 3;
}
public BreastplateOfTheBerserker(Serial serial)
: base(serial)
{
}
public override int BasePhysicalResistance
{
get
{
return 18;
}
}
public override int BaseFireResistance
{
get
{
return 16;
}
}
public override int BaseColdResistance
{
get
{
return 5;
}
}
public override int BasePoisonResistance
{
get
{
return 11;
}
}
public override int BaseEnergyResistance
{
get
{
return 5;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,65 @@
using System;
namespace Server.Items
{
public class BreathOfTheDead : BoneHarvester
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BreathOfTheDead()
{
Hue = 0x455;
WeaponAttributes.HitLeechHits = 100;
WeaponAttributes.HitHarm = 25;
Attributes.SpellDamage = 5;
Attributes.WeaponDamage = 50;
}
public BreathOfTheDead(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1061109;
}
}// Breath of the Dead
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,48 @@
using System;
namespace Server.Items
{
public class ButchersWarCleaver : WarCleaver
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ButchersWarCleaver()
: base()
{
Slayer3 = TalismanSlayerName.Bovine;
}
public ButchersWarCleaver(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 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,66 @@
using System;
namespace Server.Items
{
public class Calm : Halberd
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Calm()
{
Hue = 0x2cb;
Attributes.SpellChanneling = 1;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 50;
WeaponAttributes.HitLeechMana = 100;
WeaponAttributes.UseBestSkill = 1;
}
public Calm(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1094915;
}
}// Calm [Replica]
public override int InitMinHits
{
get
{
return 150;
}
}
public override int InitMaxHits
{
get
{
return 150;
}
}
public override bool CanFortify
{
get
{
return false;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,94 @@
using System;
namespace Server.Items
{
public class CaptainJohnesBlade : Scimitar
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1154475; } } // CaptainJohnesBlade
[Constructable]
public CaptainJohnesBlade()
{
Slayer2 = BaseRunicTool.GetRandomSlayer();
Attributes.AttackChance = 15;
Attributes.DefendChance = 15;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 60;
ExtendedWeaponAttributes.Bane = 1;
Hue = 2124;
}
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)
{
pois = 75; cold = 25;
phys = nrgy = chaos = direct = fire = 0;
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public CaptainJohnesBlade(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class GargishCaptainJohnesBlade : GlassSword
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1154475; } } // GargishCaptainJohnesBlade
[Constructable]
public GargishCaptainJohnesBlade()
{
Slayer2 = BaseRunicTool.GetRandomSlayer();
Attributes.AttackChance = 15;
Attributes.DefendChance = 15;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 60;
ExtendedWeaponAttributes.Bane = 1;
Hue = 2124;
}
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)
{
pois = 75; cold = 25;
phys = nrgy = chaos = direct = fire = 0;
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public GargishCaptainJohnesBlade(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,59 @@
using System;
namespace Server.Items
{
public class CaptainQuacklebushsCutlass : Cutlass
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public CaptainQuacklebushsCutlass()
{
Hue = 0x66C;
Attributes.BonusDex = 5;
Attributes.AttackChance = 10;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 50;
WeaponAttributes.UseBestSkill = 1;
}
public CaptainQuacklebushsCutlass(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063474;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,56 @@
using System;
namespace Server.Items
{
public class CavalrysFolly : BladedStaff
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1115446; } } // Cavalry's Folly
[Constructable]
public CavalrysFolly()
: base()
{
Hue = 1165;
Attributes.BonusHits = 2;
Attributes.AttackChance = 10;
Attributes.WeaponDamage = 45;
Attributes.WeaponSpeed = 35;
WeaponAttributes.HitLowerDefend = 40;
WeaponAttributes.HitFireball = 40;
}
public CavalrysFolly(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,61 @@
using System;
namespace Server.Items
{
public class CavortingClub : Club
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public CavortingClub()
{
Hue = 0x593;
WeaponAttributes.SelfRepair = 3;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 35;
WeaponAttributes.ResistFireBonus = 8;
WeaponAttributes.ResistColdBonus = 8;
WeaponAttributes.ResistPoisonBonus = 8;
WeaponAttributes.ResistEnergyBonus = 8;
}
public CavortingClub(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063472;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,55 @@
using System;
namespace Server.Items
{
public class ChannelersDefender : GlassSword
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113518; } } // Channeler's Defender
[Constructable]
public ChannelersDefender()
{
Hue = 95;
Attributes.DefendChance = 10;
Attributes.AttackChance = 5;
Attributes.LowerManaCost = 5;
Attributes.WeaponSpeed = 20;
Attributes.CastRecovery = 1;
Attributes.SpellChanneling = 1;
WeaponAttributes.HitLowerAttack = 60;
AosElementDamages.Energy = 100;
}
public ChannelersDefender(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,40 @@
using System;
namespace Server.Items
{
public class ChargedAssassinSpike : AssassinSpike
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ChargedAssassinSpike()
{
WeaponAttributes.HitLightning = 10;
}
public ChargedAssassinSpike(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073518;
}
}// charged assassin spike
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 @@
using System;
namespace Server.Items
{
public class ChurchillsWarMace : WarMace
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ChurchillsWarMace()
{
LootType = LootType.Blessed;
Attributes.AttackChance = 5;
Attributes.WeaponSpeed = 10;
Attributes.WeaponDamage = 25;
WeaponAttributes.LowerStatReq = 70;
}
public ChurchillsWarMace(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1078062;
}
}// Churchill's War Mace
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,56 @@
using System;
namespace Server.Items
{
public class ClawsOfTheBerserker : Tekagi
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113758; } } // Claws of the Berserker
[Constructable]
public ClawsOfTheBerserker()
: base()
{
Hue = 1172;
WeaponAttributes.HitLightning = 45;
WeaponAttributes.HitLowerDefend = 50;
WeaponAttributes.BattleLust = 1;
Attributes.CastSpeed = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 60;
}
public ClawsOfTheBerserker(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 35;
}
}
public override int InitMaxHits
{
get
{
return 60;
}
}
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,65 @@
using System;
namespace Server.Items
{
public class ColdBlood : Cleaver
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ColdBlood()
{
Hue = 0x4F2;
Attributes.WeaponSpeed = 40;
Attributes.BonusHits = 6;
Attributes.BonusStam = 6;
Attributes.BonusMana = 6;
}
public ColdBlood(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1070818;
}
}// Cold Blood
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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)
{
cold = 100;
fire = phys = pois = nrgy = chaos = direct = 0;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,52 @@
using System;
namespace Server.Items
{
public class ColdForgedBlade : ElvenSpellblade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public ColdForgedBlade()
{
WeaponAttributes.HitHarm = 40;
Attributes.SpellChanneling = 1;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
Hue = this.GetElementalDamageHue();
}
public ColdForgedBlade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 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,41 @@
using System;
namespace Server.Items
{
public class CorruptedRuneBlade : RuneBlade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public CorruptedRuneBlade()
{
WeaponAttributes.ResistPhysicalBonus = -5;
WeaponAttributes.ResistPoisonBonus = 12;
}
public CorruptedRuneBlade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073540;
}
}// Corrupted Rune Blade
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,48 @@
using System;
namespace Server.Items
{
public class Craven : DualPointedSpear
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1154474; } } // Craven
[Constructable]
public Craven()
{
Slayer2 = BaseRunicTool.GetRandomSlayer();
WeaponAttributes.HitLowerAttack = 40;
Attributes.WeaponSpeed = 26;
Attributes.WeaponDamage = 35;
Attributes.LowerManaCost = 8;
Attributes.BalancedWeapon = 1;
Hue = 1365;
}
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 = 70; cold = 30;
nrgy = pois = chaos = direct = fire = 0;
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public Craven(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class DarkglowScimitar : RadiantScimitar
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public DarkglowScimitar()
{
WeaponAttributes.HitDispel = 10;
}
public DarkglowScimitar(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073542;
}
}// darkglow scimitar
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,53 @@
using System;
namespace Server.Items
{
public class DeathsHead : DiscMace
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113526; } } // Death's Head
[Constructable]
public DeathsHead()
{
Hue = 1154;
WeaponAttributes.HitFatigue = 10;
WeaponAttributes.HitLightning = 45;
WeaponAttributes.HitLowerDefend = 30;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 45;
}
public DeathsHead(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,56 @@
using System;
namespace Server.Items
{
public class DemonHuntersStandard : Spear
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113864; } } // Demon Hunter's Standard
[Constructable]
public DemonHuntersStandard()
{
Hue = 1377;
Attributes.CastSpeed = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
WeaponAttributes.HitLeechStam = 50;
WeaponAttributes.HitLightning = 40;
WeaponAttributes.HitLowerDefend = 30;
Slayer = SlayerName.Exorcism;
}
public DemonHuntersStandard(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,40 @@
using System;
namespace Server.Items
{
public class DiseasedMachete : ElvenMachete
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public DiseasedMachete()
{
WeaponAttributes.HitPoisonArea = 25;
}
public DiseasedMachete(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073536;
}
}// Diseased Machete
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;
namespace Server.Items
{
public class DraconisWrath : Katana
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1114789; } } // Draconi's Wrath
[Constructable]
public DraconisWrath()
{
Hue = 1177;
AbsorptionAttributes.EaterFire = 20;
WeaponAttributes.HitFireball = 60;
Attributes.AttackChance = 15;
Attributes.WeaponDamage = 50;
WeaponAttributes.UseBestSkill = 1;
}
public DraconisWrath(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,77 @@
using System;
namespace Server.Items
{
public class DragonsEnd : Longsword
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public DragonsEnd()
: base()
{
Hue = 0x554;
Slayer = SlayerName.DragonSlaying;
Attributes.AttackChance = 10;
Attributes.WeaponDamage = 60;
WeaponAttributes.ResistFireBonus = 20;
}
public DragonsEnd(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1079791;
}
}// Dragon's End
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 225;
}
}
public override int InitMaxHits
{
get
{
return 225;
}
}
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 = pois = direct = chaos = 0;
cold = 100;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)1);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
if (version == 0)
{
NegativeAttributes.NoRepair = 0;
}
}
}
}

View File

@@ -0,0 +1,46 @@
using System;
namespace Server.Items
{
public class DreadsRevenge : Kryss
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1072092; } }// Dread's Revenge
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
[Constructable]
public DreadsRevenge()
: base()
{
Hue = 0x3A;
SkillBonuses.SetValues(0, SkillName.Fencing, 20.0);
WeaponAttributes.HitPoisonArea = 30;
Attributes.AttackChance = 15;
Attributes.WeaponSpeed = 50;
}
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 = nrgy = chaos = direct = 0;
pois = 100;
}
public DreadsRevenge(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,45 @@
using System;
namespace Server.Items
{
public class EmberStaff : QuarterStaff
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public EmberStaff()
{
LootType = LootType.Blessed;
WeaponAttributes.HitFireball = 15;
WeaponAttributes.MageWeapon = 20;
Attributes.SpellChanneling = 1;
Attributes.CastSpeed = -1;
WeaponAttributes.LowerStatReq = 50;
}
public EmberStaff(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1077582;
}
}// Ember Staff
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;
namespace Server.Items
{
public class EnchantedTitanLegBone : ShortSpear
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public EnchantedTitanLegBone()
{
Hue = 0x8A5;
WeaponAttributes.HitLowerDefend = 40;
WeaponAttributes.HitLightning = 40;
Attributes.AttackChance = 10;
Attributes.WeaponDamage = 20;
WeaponAttributes.ResistPhysicalBonus = 10;
}
public EnchantedTitanLegBone(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063482;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,96 @@
using System;
namespace Server.Items
{
public class Equivocation : GnarledStaff
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1154473; } } // Equivocation
[Constructable]
public Equivocation()
{
Attributes.BalancedWeapon = 1;
Slayer2 = BaseRunicTool.GetRandomSlayer();
Attributes.AttackChance = 10;
Attributes.RegenHits = 6;
Attributes.Brittle = 1;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 50;
WeaponAttributes.HitCurse = 15;
Hue = 1365;
}
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 = pois = 50;
cold = nrgy = chaos = direct = fire = 0;
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public Equivocation(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class GargishEquivocation : GargishGnarledStaff
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1154473; } } // Equivocation
[Constructable]
public GargishEquivocation()
{
Attributes.BalancedWeapon = 1;
Slayer2 = BaseRunicTool.GetRandomSlayer();
Attributes.AttackChance = 10;
Attributes.RegenHits = 6;
Attributes.Brittle = 1;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 50;
WeaponAttributes.HitCurse = 15;
Hue = 1365;
}
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 = pois = 50;
cold = nrgy = chaos = direct = fire = 0;
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public GargishEquivocation(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,53 @@
using System;
namespace Server.Items
{
public class EternalGuardianStaff : GnarledStaff
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1112443; } } // Eternal Guardian Staff
[Constructable]
public EternalGuardianStaff()
{
Hue = 95;
SkillBonuses.SetValues(0, SkillName.Mysticism, 15.0);
Attributes.SpellDamage = 10;
Attributes.LowerManaCost = 5;
Attributes.SpellChanneling = 1;
}
public EternalGuardianStaff(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,136 @@
using System;
namespace Server.Items
{
[FlipableAttribute(0xE87, 0xE88)]
public class FNPitchfork : BaseSpear
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public FNPitchfork()
: base(0xE87)
{
Weight = 11.0;
}
public FNPitchfork(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1113498;
}
}// Farmer Nash's Pitchfork
public override WeaponAbility PrimaryAbility
{
get
{
return WeaponAbility.BleedAttack;
}
}
public override WeaponAbility SecondaryAbility
{
get
{
return WeaponAbility.Dismount;
}
}
public override int AosStrengthReq
{
get
{
return 50;
}
}
public override int AosMinDamage
{
get
{
return 13;
}
}
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 15;
}
}
public override int OldMinDamage
{
get
{
return 4;
}
}
public override int OldMaxDamage
{
get
{
return 16;
}
}
public override int OldSpeed
{
get
{
return 45;
}
}
public override int InitMinHits
{
get
{
return 31;
}
}
public override int InitMaxHits
{
get
{
return 60;
}
}
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 (this.Weight == 10.0)
this.Weight = 11.0;
}
}
}

View File

@@ -0,0 +1,50 @@
using System;
namespace Server.Items
{
public class FaerieFire : ElvenCompositeLongbow
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1072908; } }// Faerie Fire
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
[Constructable]
public FaerieFire()
: base()
{
Hue = 0x489;
Balanced = true;
Attributes.BonusDex = 3;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 60;
WeaponAttributes.HitFireball = 25;
}
public FaerieFire(Serial serial)
: base(serial)
{
}
#region Mondain's Legacy
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;
}
#endregion
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,67 @@
using System;
namespace Server.Items
{
public class FangOfRactus : Kryss
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public FangOfRactus()
{
Hue = 0x117;
Attributes.SpellChanneling = 1;
Attributes.AttackChance = 5;
Attributes.DefendChance = 5;
Attributes.WeaponDamage = 35;
WeaponAttributes.HitPoisonArea = 20;
WeaponAttributes.ResistPoisonBonus = 15;
}
public FangOfRactus(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1094892;
}
}// Fang of Ractus [Replica]
public override int InitMinHits
{
get
{
return 150;
}
}
public override int InitMaxHits
{
get
{
return 150;
}
}
public override bool CanFortify
{
get
{
return false;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class FierySpellblade : ElvenSpellblade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public FierySpellblade()
{
WeaponAttributes.ResistFireBonus = 5;
}
public FierySpellblade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073515;
}
}// fiery spellblade
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,60 @@
using System;
namespace Server.Items
{
public class FleshRipper : AssassinSpike
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public FleshRipper()
{
Hue = 0x341;
SkillBonuses.SetValues(0, SkillName.Anatomy, 10.0);
Attributes.BonusStr = 5;
Attributes.AttackChance = 15;
Attributes.WeaponSpeed = 40;
WeaponAttributes.UseBestSkill = 1;
Slayer3 = TalismanSlayerName.Mage;
}
public FleshRipper(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1075045;
}
}// Flesh Ripper
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,70 @@
using System;
namespace Server.Items
{
public class Frostbringer : Bow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Frostbringer()
{
Hue = 0x4F2;
WeaponAttributes.HitDispel = 50;
Attributes.RegenStam = 10;
Attributes.WeaponDamage = 50;
}
public Frostbringer(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1061111;
}
}// Frostbringer
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,41 @@
using System;
namespace Server.Items
{
public class FrozenLongbow : ElvenCompositeLongbow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public FrozenLongbow()
{
Attributes.WeaponSpeed = -5;
Attributes.DefendChance = 10;
}
public FrozenLongbow(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073507;
}
}// frozen 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,88 @@
using System;
namespace Server.Items
{
public class GiantSteps : GargishStoneLegs
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113537; } } // Giant Steps
[Constructable]
public GiantSteps()
: base()
{
Hue = 656;
Attributes.BonusStr = 5;
Attributes.BonusDex = 5;
Attributes.BonusHits = 5;
Attributes.RegenHits = 2;
Attributes.WeaponDamage = 10;
}
public GiantSteps(Serial serial)
: base(serial)
{
}
public override int BasePhysicalResistance
{
get
{
return 18;
}
}
public override int BaseFireResistance
{
get
{
return 16;
}
}
public override int BaseColdResistance
{
get
{
return 4;
}
}
public override int BasePoisonResistance
{
get
{
return 8;
}
}
public override int BaseEnergyResistance
{
get
{
return 12;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,43 @@
using System;
namespace Server.Items
{
public class GlacialStaff : BlackStaff
{
[Constructable]
public GlacialStaff()
{
Hue = 0x480;
WeaponAttributes.HitHarm = 5 * Utility.RandomMinMax(1, 5);
WeaponAttributes.MageWeapon = Utility.RandomMinMax(5, 10);
AosElementDamages[AosElementAttribute.Cold] = 20 + (5 * Utility.RandomMinMax(0, 6));
}
public GlacialStaff(Serial serial)
: base(serial)
{
}
//TODO: Pre-AoS stuff
public override int LabelNumber
{
get
{
return 1017413;
}
}// Glacial Staff
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,48 @@
using System;
namespace Server.Items
{
public class Glenda : Club
{
public override int LabelNumber { get { return 1157346; } } // glenda
public override bool IsArtifact { get { return true; } }
[Constructable]
public Glenda()
{
ExtendedWeaponAttributes.BoneBreaker = 1;
WeaponAttributes.HitLeechMana = 20;
WeaponAttributes.HitLowerDefend = 70;
Attributes.BonusStr = 16;
Attributes.WeaponDamage = 100;
}
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 = 100;
fire = cold = nrgy = chaos = direct = pois = 0;
}
public Glenda(Serial serial)
: base(serial)
{
}
public override int InitMinHits { get { return 255; } }
public override int InitMaxHits { get { return 255; } }
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,41 @@
using System;
namespace Server.Items
{
public class GuardianAxe : OrnateAxe
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public GuardianAxe()
{
Attributes.BonusHits = 4;
Attributes.RegenHits = 1;
}
public GuardianAxe(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073545;
}
}// guardian axe
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;
namespace Server.Items
{
public class HardenedWildStaff : WildStaff
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public HardenedWildStaff()
{
Attributes.WeaponDamage = 5;
}
public HardenedWildStaff(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073552;
}
}// hardened wild staff
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 @@
using System;
namespace Server.Items
{
public class Heartseeker : CompositeBow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Heartseeker()
{
LootType = LootType.Blessed;
Attributes.AttackChance = 5;
Attributes.WeaponSpeed = 10;
Attributes.WeaponDamage = 25;
WeaponAttributes.LowerStatReq = 70;
}
public Heartseeker(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1078210;
}
}// Heartseeker
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,60 @@
using System;
namespace Server.Items
{
public class HolySword : Longsword
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public HolySword()
{
Hue = 0x482;
LootType = LootType.Blessed;
Slayer = SlayerName.Silver;
Attributes.WeaponDamage = 40;
WeaponAttributes.SelfRepair = 10;
WeaponAttributes.LowerStatReq = 100;
WeaponAttributes.UseBestSkill = 1;
}
public HolySword(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1062921;
}
}// The Holy Sword
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class IcyScimitar : RadiantScimitar
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public IcyScimitar()
{
WeaponAttributes.HitHarm = 15;
}
public IcyScimitar(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073543;
}
}// icy scimitar
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;
namespace Server.Items
{
public class IcySpellblade : ElvenSpellblade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public IcySpellblade()
{
WeaponAttributes.ResistColdBonus = 5;
}
public IcySpellblade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073514;
}
}// icy spellblade
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,141 @@
using System;
namespace Server.Items
{
// Based off a BlackStaff
[FlipableAttribute(0x905, 0x4070)]
public class InfusedGlassStave : BaseStaff
{
public override int LabelNumber { get { return 1112909; } } // infused glass stave
[Constructable]
public InfusedGlassStave()
: base(0x905)
{
Weight = 4.0;
Hue = 23;
}
public InfusedGlassStave(Serial serial)
: base(serial)
{
}
public override WeaponAbility PrimaryAbility
{
get
{
return WeaponAbility.DoubleStrike;
}
}
public override WeaponAbility SecondaryAbility
{
get
{
return WeaponAbility.MortalStrike;
}
}
public override int AosStrengthReq
{
get
{
return 20;
}
}
public override int AosMinDamage
{
get
{
return 11;
}
}
public override int AosMaxDamage
{
get
{
return 14;
}
}
public override int AosSpeed
{
get
{
return 39;
}
}
public override float MlSpeed
{
get
{
return 2.25f;
}
}
public override int OldStrengthReq
{
get
{
return 35;
}
}
public override int OldMinDamage
{
get
{
return 8;
}
}
public override int OldMaxDamage
{
get
{
return 33;
}
}
public override int OldSpeed
{
get
{
return 35;
}
}
public override int InitMinHits
{
get
{
return 31;
}
}
public override int InitMaxHits
{
get
{
return 70;
}
}
public override Race RequiredRace
{
get
{
return Race.Gargoyle;
}
}
public override bool CanBeWornByGargoyles
{
get
{
return true;
}
}
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,58 @@
using System;
namespace Server.Items
{
public class IronwoodCompositeBow : CompositeBow
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113759; } } // Ironwood Composite Bow
[Constructable]
public IronwoodCompositeBow()
: base()
{
Hue = 1410;
Slayer = SlayerName.Fey;
WeaponAttributes.HitFireball = 40;
WeaponAttributes.HitLowerDefend = 30;
Attributes.BonusDex = 5;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 45;
Velocity = 30;
}
public IronwoodCompositeBow(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,71 @@
using System;
namespace Server.Items
{
public class JaanasStaff : GnarledStaff
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public JaanasStaff()
: base()
{
Hue = 0x58C;
WeaponAttributes.MageWeapon = 10;
Attributes.SpellChanneling = 1;
Attributes.Luck = 220;
Attributes.DefendChance = 15;
}
public JaanasStaff(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1079790;
}
}// Jaana's Staff
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 225;
}
}
public override int InitMaxHits
{
get
{
return 225;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)1);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
if (version == 0)
{
NegativeAttributes.NoRepair = 0;
}
}
}
}

View File

@@ -0,0 +1,54 @@
using System;
using Server.Engines.Harvest;
namespace Server.Items
{
public class JadeWarAxe : WarAxe
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1115445; } } // Jade War Axe
[Constructable]
public JadeWarAxe()
{
Hue = 1162;
AbsorptionAttributes.EaterFire = 10;
Slayer = SlayerName.ReptilianDeath;
WeaponAttributes.HitFireball = 30;
WeaponAttributes.HitLowerDefend = 60;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 50;
}
public JadeWarAxe(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,43 @@
using System;
namespace Server.Items
{
public class JocklesQuicksword : Longsword
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public JocklesQuicksword()
{
LootType = LootType.Blessed;
Attributes.AttackChance = 5;
Attributes.WeaponSpeed = 10;
Attributes.WeaponDamage = 25;
}
public JocklesQuicksword(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1077666;
}
}// Jockles' Quicksword
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,71 @@
using System;
namespace Server.Items
{
public class KatrinasCrook : ShepherdsCrook
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public KatrinasCrook()
: base()
{
WeaponAttributes.HitLeechStam = 40;
WeaponAttributes.HitLeechMana = 55;
WeaponAttributes.HitLeechHits = 55;
Attributes.WeaponDamage = 60;
Attributes.DefendChance = 15;
}
public KatrinasCrook(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1079789;
}
}// Katrina's Crook
public override int ArtifactRarity
{
get
{
return 11;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt(1); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
if (version == 0)
{
NegativeAttributes.NoRepair = 0;
}
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class KnightsWarCleaver : WarCleaver
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public KnightsWarCleaver()
{
Attributes.RegenHits = 3;
}
public KnightsWarCleaver(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073525;
}
}// knight's war cleaver
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;
namespace Server.Items
{
public class LeafbladeOfEase : Leafblade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public LeafbladeOfEase()
{
WeaponAttributes.UseBestSkill = 1;
}
public LeafbladeOfEase(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073524;
}
}// leafblade of ease
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;
namespace Server.Items
{
public class LegacyOfDespair : DreadSword
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113519; } } // Legacy of Despair
[Constructable]
public LegacyOfDespair()
{
Hue = 48;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 60;
WeaponAttributes.HitLowerDefend = 50;
WeaponAttributes.HitLowerAttack = 50;
WeaponAttributes.HitCurse = 10;
AosElementDamages.Cold = 75;
AosElementDamages.Poison = 25;
}
public LegacyOfDespair(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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,65 @@
using System;
namespace Server.Items
{
public class LegacyOfTheDreadLord : Bardiche
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public LegacyOfTheDreadLord()
{
Hue = 0x676;
Attributes.SpellChanneling = 1;
Attributes.CastRecovery = 3;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 50;
}
public LegacyOfTheDreadLord(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1060860;
}
}// Legacy of the Dread Lord
public override int ArtifactRarity
{
get
{
return 10;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,54 @@
using System;
namespace Server.Items
{
public class LifeSyphon : BloodBlade
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113524; } } // Life Syphon
[Constructable]
public LifeSyphon()
: base()
{
Hue = 1172;
WeaponAttributes.BloodDrinker = 1;
WeaponAttributes.HitHarm = 30;
WeaponAttributes.HitLeechHits = 100;
Attributes.BonusHits = 10;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
}
public LifeSyphon(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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;
namespace Server.Items
{
public class LightInTheVoid : GargishTalwar
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113521; } } // Light in the Void
[Constructable]
public LightInTheVoid()
{
Slayer = SlayerName.Silver;
WeaponAttributes.HitLightning = 45;
WeaponAttributes.HitLowerDefend = 30;
Attributes.BonusStr = 8;
Attributes.AttackChance = 10;
Attributes.CastSpeed = 1;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 35;
Hue = 1072; //Hue not exact
}
public LightInTheVoid(Serial serial)
: base(serial)
{
}
public override int ArtifactRarity
{
get
{
return 5;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class LongbowOfMight : ElvenCompositeLongbow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public LongbowOfMight()
{
Attributes.WeaponDamage = 5;
}
public LongbowOfMight(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073508;
}
}// longbow of might
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;
namespace Server.Items
{
public class Luckblade : Leafblade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Luckblade()
{
Attributes.Luck = 20;
}
public Luckblade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073522;
}
}// luckblade
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;
namespace Server.Items
{
public class LuminousRuneBlade : RuneBlade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public LuminousRuneBlade()
{
WeaponAttributes.HitLightning = 40;
WeaponAttributes.SelfRepair = 5;
Attributes.NightSight = 1;
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 55;
Hue = this.GetElementalDamageHue();
}
public LuminousRuneBlade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 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,59 @@
using System;
namespace Server.Items
{
public class LunaLance : Lance
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public LunaLance()
{
Hue = 0x47E;
SkillBonuses.SetValues(0, SkillName.Chivalry, 10.0);
Attributes.BonusStr = 5;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 35;
WeaponAttributes.UseBestSkill = 1;
}
public LunaLance(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063469;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class MacheteOfDefense : ElvenMachete
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public MacheteOfDefense()
{
Attributes.DefendChance = 5;
}
public MacheteOfDefense(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073535;
}
}// machete of defense
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;
namespace Server.Items
{
public class MagekillerAssassinSpike : AssassinSpike
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public MagekillerAssassinSpike()
{
WeaponAttributes.HitLeechMana = 16;
}
public MagekillerAssassinSpike(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073519;
}
}// magekiller assassin spike
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;
namespace Server.Items
{
public class MagekillerLeafblade : Leafblade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public MagekillerLeafblade()
{
WeaponAttributes.HitLeechMana = 16;
}
public MagekillerLeafblade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073523;
}
}// maagekiller leafblade
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;
namespace Server.Items
{
public class MagesRuneBlade : RuneBlade
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public MagesRuneBlade()
{
Attributes.CastSpeed = 1;
}
public MagesRuneBlade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073538;
}
}// mage's rune blade
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;
namespace Server.Items
{
public class Mangler : Broadsword
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1114842; } } // Mangler
[Constructable]
public Mangler()
: base()
{
Hue = 2001;
WeaponAttributes.HitLeechMana = 50;
Attributes.WeaponDamage = 50;
Attributes.WeaponSpeed = 25;
WeaponAttributes.HitHarm = 50;
WeaponAttributes.UseBestSkill = 1;
WeaponAttributes.HitLowerDefend = 30;
}
public Mangler(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); //version
}
}
}

View File

@@ -0,0 +1,45 @@
using System;
namespace Server.Items
{
public class MelisandesCorrodedHatchet : Hatchet
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public MelisandesCorrodedHatchet()
{
Hue = 0x494;
SkillBonuses.SetValues(0, SkillName.Lumberjacking, 5.0);
Attributes.SpellChanneling = 1;
Attributes.WeaponSpeed = 15;
Attributes.WeaponDamage = -50;
WeaponAttributes.SelfRepair = 4;
}
public MelisandesCorrodedHatchet(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1072115;
}
}// Melisande's Corroded Hatchet
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,52 @@
using System;
namespace Server.Items
{
public class MischiefMaker : MagicalShortbow
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber
{
get
{
return 1072910;
}
}// Mischief Maker
[Constructable]
public MischiefMaker()
: base()
{
Hue = 0x8AB;
Balanced = true;
Slayer = SlayerName.Silver;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 45;
}
public MischiefMaker(Serial serial)
: base(serial)
{
}
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)
{
pois = fire = phys = 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,177 @@
using System;
namespace Server.Items
{
public class BlackthornsKryss : Kryss
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public BlackthornsKryss()
: base()
{
Hue = 0x5E5;
Slayer = SlayerGroup.RandomSuperSlayerAOS();
Attributes.WeaponSpeed = 25;
Attributes.WeaponDamage = 50;
WeaponAttributes.UseBestSkill = 1;
WeaponAttributes.HitLeechHits = 22;
}
public BlackthornsKryss(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073260;
}
}// Blackthorn's Kryss - Museum of Vesper Replica
public override int InitMinHits
{
get
{
return 80;
}
}
public override int InitMaxHits
{
get
{
return 80;
}
}
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();
}
}
public class SwordOfJustice : VikingSword
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public SwordOfJustice()
: base()
{
Hue = 0x47E;
Slayer = SlayerGroup.RandomSuperSlayerAOS();
Attributes.SpellChanneling = 1;
Attributes.CastSpeed = -1;
Attributes.WeaponDamage = 50;
Attributes.Luck = 100;
WeaponAttributes.UseBestSkill = 1;
WeaponAttributes.HitLowerAttack = 60;
}
public SwordOfJustice(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073261;
}
}// Sword of Justice - Museum of Vesper Replica
public override int InitMinHits
{
get
{
return 80;
}
}
public override int InitMaxHits
{
get
{
return 80;
}
}
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();
}
}
public class GeoffreysAxe : ExecutionersAxe
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public GeoffreysAxe()
: base()
{
Hue = 0x21;
Slayer = SlayerGroup.RandomSuperSlayerAOS();
Attributes.BonusStr = 10;
Attributes.AttackChance = 15;
Attributes.WeaponDamage = 40;
Attributes.Luck = 150;
WeaponAttributes.ResistFireBonus = 10;
WeaponAttributes.UseBestSkill = 1;
WeaponAttributes.HitLowerAttack = 60;
}
public GeoffreysAxe(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073263;
}
}// Geoffrey's Axe - Museum of Vesper Replica
public override int InitMinHits
{
get
{
return 80;
}
}
public override int InitMaxHits
{
get
{
return 80;
}
}
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,41 @@
using System;
namespace Server.Items
{
public class MysticalShortbow : MagicalShortbow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public MysticalShortbow()
{
Attributes.SpellChanneling = 1;
Attributes.CastSpeed = -1;
}
public MysticalShortbow(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073511;
}
}// mystical shortbow
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;
namespace Server.Items
{
public class NightsKiss : Dagger
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public NightsKiss()
{
Hue = 0x455;
WeaponAttributes.HitLeechHits = 40;
Slayer = SlayerName.Repond;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 35;
}
public NightsKiss(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063475;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,67 @@
using System;
namespace Server.Items
{
public class NoxRangersHeavyCrossbow : HeavyCrossbow
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public NoxRangersHeavyCrossbow()
{
Hue = 0x58C;
WeaponAttributes.HitLeechStam = 40;
Attributes.SpellChanneling = 1;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 20;
WeaponAttributes.ResistPoisonBonus = 10;
}
public NoxRangersHeavyCrossbow(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1063485;
}
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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)
{
pois = 50;
phys = 50;
fire = cold = nrgy = chaos = direct = 0;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,65 @@
using System;
namespace Server.Items
{
public class OblivionsNeedle : Dagger
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public OblivionsNeedle()
{
Attributes.BonusStam = 20;
Attributes.AttackChance = 20;
Attributes.DefendChance = -20;
Attributes.WeaponDamage = 40;
WeaponAttributes.HitLeechStam = 50;
}
public OblivionsNeedle(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1094916;
}
}// Oblivion's Needle [Replica]
public override int InitMinHits
{
get
{
return 150;
}
}
public override int InitMaxHits
{
get
{
return 150;
}
}
public override bool CanFortify
{
get
{
return false;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,41 @@
using System;
namespace Server.Items
{
public class OrcishMachete : ElvenMachete
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public OrcishMachete()
{
Attributes.BonusInt = -5;
Attributes.WeaponDamage = 10;
}
public OrcishMachete(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073534;
}
}// Orcish Machete
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;
namespace Server.Items
{
public class OverseerSunderedBlade : RadiantScimitar
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public OverseerSunderedBlade()
{
Attributes.RegenStam = 2;
Attributes.AttackChance = 10;
Attributes.WeaponSpeed = 35;
Attributes.WeaponDamage = 45;
Hue = this.GetElementalDamageHue();
}
public OverseerSunderedBlade(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 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,67 @@
using System;
namespace Server.Items
{
public class Pacify : Pike
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public Pacify()
{
Hue = 0x835;
Attributes.SpellChanneling = 1;
Attributes.AttackChance = 10;
Attributes.WeaponSpeed = 20;
Attributes.WeaponDamage = 50;
WeaponAttributes.HitLeechMana = 100;
WeaponAttributes.UseBestSkill = 1;
}
public Pacify(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1094929;
}
}// Pacify [Replica]
public override int InitMinHits
{
get
{
return 150;
}
}
public override int InitMaxHits
{
get
{
return 150;
}
}
public override bool CanFortify
{
get
{
return false;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,56 @@
using System;
namespace Server.Items
{
public class PetrifiedSnake : SerpentStoneStaff
{
public override bool IsArtifact { get { return true; } }
public override int LabelNumber { get { return 1113528; } } // Petrified Snake
[Constructable]
public PetrifiedSnake()
: base()
{
Hue = 460;
AbsorptionAttributes.EaterPoison = 20;
Slayer = SlayerName.ReptilianDeath;
WeaponAttributes.HitMagicArrow = 30;
WeaponAttributes.HitLowerDefend = 30;
Attributes.WeaponSpeed = 30;
Attributes.WeaponDamage = 50;
AosElementDamages.Poison = 100;
WeaponAttributes.ResistPoisonBonus = 10;
}
public PetrifiedSnake(Serial serial)
: base(serial)
{
}
public override int InitMinHits
{
get
{
return 255;
}
}
public override int InitMaxHits
{
get
{
return 255;
}
}
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();
}
}
}

Some files were not shown because too many files have changed in this diff Show More