Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
42
Scripts/Items/Artifacts/Consumables/AdmiralsHeartyRum.cs
Normal file
42
Scripts/Items/Artifacts/Consumables/AdmiralsHeartyRum.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[TypeAlias("Server.Items.AdmiralHeartyRum")]
|
||||
public class AdmiralsHeartyRum : BeverageBottle
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public AdmiralsHeartyRum()
|
||||
: base(BeverageType.Ale)
|
||||
{
|
||||
Hue = 0x66C;
|
||||
}
|
||||
|
||||
public AdmiralsHeartyRum(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1063477;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
218
Scripts/Items/Artifacts/Consumables/BasePigmentsOfTokuno.cs
Normal file
218
Scripts/Items/Artifacts/Consumables/BasePigmentsOfTokuno.cs
Normal file
@@ -0,0 +1,218 @@
|
||||
using System;
|
||||
using Server.Misc;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public abstract class BasePigmentsOfTokuno : Item, IUsesRemaining
|
||||
{
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1070933;
|
||||
}
|
||||
}// Pigments of Tokuno
|
||||
|
||||
private int m_UsesRemaining;
|
||||
private TextDefinition m_Label;
|
||||
|
||||
protected TextDefinition Label
|
||||
{
|
||||
get
|
||||
{
|
||||
return m_Label;
|
||||
}
|
||||
set
|
||||
{
|
||||
m_Label = value;
|
||||
InvalidateProperties();
|
||||
}
|
||||
}
|
||||
|
||||
#region Old Item Serialization Vars
|
||||
/* DO NOT USE! Only used in serialization of pigments that originally derived from Item */
|
||||
private bool m_InheritsItem;
|
||||
|
||||
protected bool InheritsItem
|
||||
{
|
||||
get
|
||||
{
|
||||
return m_InheritsItem;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
public BasePigmentsOfTokuno()
|
||||
: base(0xEFF)
|
||||
{
|
||||
Weight = 1.0;
|
||||
m_UsesRemaining = 1;
|
||||
}
|
||||
|
||||
public BasePigmentsOfTokuno(int uses)
|
||||
: base(0xEFF)
|
||||
{
|
||||
Weight = 1.0;
|
||||
m_UsesRemaining = uses;
|
||||
}
|
||||
|
||||
public BasePigmentsOfTokuno(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if (m_Label != null && m_Label > 0)
|
||||
TextDefinition.AddTo(list, m_Label);
|
||||
}
|
||||
|
||||
public override void AddUsesRemainingProperties(ObjectPropertyList list)
|
||||
{
|
||||
list.Add(1060584, m_UsesRemaining.ToString()); // uses remaining: ~1_val~
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (IsAccessibleTo(from) && from.InRange(GetWorldLocation(), 3))
|
||||
{
|
||||
from.SendLocalizedMessage(1070929); // Select the artifact or enhanced magic item to dye.
|
||||
from.BeginTarget(3, false, Server.Targeting.TargetFlags.None, new TargetStateCallback(InternalCallback), this);
|
||||
}
|
||||
else
|
||||
from.SendLocalizedMessage(502436); // That is not accessible.
|
||||
}
|
||||
|
||||
private void InternalCallback(Mobile from, object targeted, object state)
|
||||
{
|
||||
BasePigmentsOfTokuno pigment = (BasePigmentsOfTokuno)state;
|
||||
|
||||
if (pigment.Deleted || pigment.UsesRemaining <= 0 || !from.InRange(pigment.GetWorldLocation(), 3) || !pigment.IsAccessibleTo(from))
|
||||
return;
|
||||
|
||||
Item i = targeted as Item;
|
||||
|
||||
if (i == null)
|
||||
from.SendLocalizedMessage(1070931); // You can only dye artifacts and enhanced magic items with this tub.
|
||||
else if (!from.InRange(i.GetWorldLocation(), 3) || !IsAccessibleTo(from))
|
||||
from.SendLocalizedMessage(502436); // That is not accessible.
|
||||
else if (from.Items.Contains(i))
|
||||
from.SendLocalizedMessage(1070930); // Can't dye artifacts or enhanced magic items that are being worn.
|
||||
else if (i.IsLockedDown)
|
||||
from.SendLocalizedMessage(1070932); // You may not dye artifacts and enhanced magic items which are locked down.
|
||||
else if (i is MetalPigmentsOfTokuno || i is LesserPigmentsOfTokuno || i is PigmentsOfTokuno || i is CompassionPigment)
|
||||
from.SendLocalizedMessage(1042417); // You cannot dye that.
|
||||
else if (!IsValidItem(i))
|
||||
from.SendLocalizedMessage(1070931); // You can only dye artifacts and enhanced magic items with this tub. //Yes, it says tub on OSI. Don't ask me why ;p
|
||||
else
|
||||
{
|
||||
//Notes: on OSI there IS no hue check to see if it's already hued. and no messages on successful hue either
|
||||
i.Hue = Hue;
|
||||
|
||||
if (--pigment.UsesRemaining <= 0)
|
||||
pigment.Delete();
|
||||
|
||||
from.PlaySound(0x23E); // As per OSI TC1
|
||||
}
|
||||
}
|
||||
|
||||
public static bool IsValidItem(Item i)
|
||||
{
|
||||
if (i is BasePigmentsOfTokuno)
|
||||
return false;
|
||||
|
||||
Type t = i.GetType();
|
||||
|
||||
CraftResource resource = CraftResource.None;
|
||||
|
||||
if (i is BaseWeapon)
|
||||
resource = ((BaseWeapon)i).Resource;
|
||||
else if (i is BaseArmor)
|
||||
resource = ((BaseArmor)i).Resource;
|
||||
else if (i is BaseClothing)
|
||||
resource = ((BaseClothing)i).Resource;
|
||||
|
||||
if (!CraftResources.IsStandard(resource))
|
||||
return true;
|
||||
|
||||
if (i.IsArtifact)
|
||||
return true;
|
||||
|
||||
if (i is BaseAddonDeed && ((BaseAddonDeed)i).UseCraftResource && !((BaseAddonDeed)i).IsReDeed && ((BaseAddonDeed)i).Resource != CraftResource.None)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write((int)1);
|
||||
|
||||
writer.WriteEncodedInt(m_UsesRemaining);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
switch ( version )
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
m_UsesRemaining = reader.ReadEncodedInt();
|
||||
break;
|
||||
}
|
||||
case 0: // Old pigments that inherited from item
|
||||
{
|
||||
m_InheritsItem = true;
|
||||
|
||||
if (this is LesserPigmentsOfTokuno)
|
||||
((LesserPigmentsOfTokuno)this).Type = (LesserPigmentType)reader.ReadEncodedInt();
|
||||
else if (this is PigmentsOfTokuno)
|
||||
((PigmentsOfTokuno)this).Type = (PigmentType)reader.ReadEncodedInt();
|
||||
else if (this is MetalPigmentsOfTokuno)
|
||||
reader.ReadEncodedInt();
|
||||
|
||||
m_UsesRemaining = reader.ReadEncodedInt();
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region IUsesRemaining Members
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public int UsesRemaining
|
||||
{
|
||||
get
|
||||
{
|
||||
return m_UsesRemaining;
|
||||
}
|
||||
set
|
||||
{
|
||||
m_UsesRemaining = value;
|
||||
InvalidateProperties();
|
||||
}
|
||||
}
|
||||
|
||||
public bool ShowUsesRemaining
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
set
|
||||
{
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
40
Scripts/Items/Artifacts/Consumables/Bleach.cs
Normal file
40
Scripts/Items/Artifacts/Consumables/Bleach.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class Bleach : PigmentsOfTokuno
|
||||
{
|
||||
[Constructable]
|
||||
public Bleach()
|
||||
: base(PigmentType.None)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public Bleach(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075375;
|
||||
}
|
||||
}// Bleach
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ElixirofAgapiteConversion : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1113008; } } // Elixir of Agapite Conversion
|
||||
|
||||
[Constructable]
|
||||
public ElixirofAgapiteConversion()
|
||||
: base(0x99B)
|
||||
{
|
||||
Hue = 2425;
|
||||
Movable = true;
|
||||
}
|
||||
|
||||
public ElixirofAgapiteConversion(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
|
||||
Container backpack = from.Backpack;
|
||||
ShadowIronIngot item1 = (ShadowIronIngot)backpack.FindItemByType(typeof(ShadowIronIngot));
|
||||
|
||||
if (item1 != null)
|
||||
{
|
||||
BaseIngot m_Ore1 = item1 as BaseIngot;
|
||||
|
||||
int toConsume = m_Ore1.Amount;
|
||||
|
||||
if ((m_Ore1.Amount > 499) && (m_Ore1.Amount < 501))
|
||||
{
|
||||
m_Ore1.Delete();
|
||||
from.SendLocalizedMessage(1113048); // You've successfully converted the metal.
|
||||
from.AddToBackpack(new AgapiteIngot(500));
|
||||
this.Delete();
|
||||
}
|
||||
else if ((m_Ore1.Amount < 500) || (m_Ore1.Amount > 500))
|
||||
{
|
||||
from.SendLocalizedMessage(1113046); // You can only convert five hundred ingots at a time.
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1078618); // The item must be in your backpack to be exchanged.
|
||||
}
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ElixirofGoldConversion : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1113007; } } // Elixir of Gold Conversion
|
||||
|
||||
[Constructable]
|
||||
public ElixirofGoldConversion()
|
||||
: base(0x99B)
|
||||
{
|
||||
Hue = 2213;
|
||||
Movable = true;
|
||||
}
|
||||
|
||||
public ElixirofGoldConversion(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
|
||||
Container backpack = from.Backpack;
|
||||
DullCopperIngot item1 = (DullCopperIngot)backpack.FindItemByType(typeof(DullCopperIngot));
|
||||
|
||||
if (item1 != null)
|
||||
{
|
||||
BaseIngot m_Ore1 = item1 as BaseIngot;
|
||||
|
||||
int toConsume = m_Ore1.Amount;
|
||||
|
||||
if ((m_Ore1.Amount > 499) && (m_Ore1.Amount < 501))
|
||||
{
|
||||
m_Ore1.Delete();
|
||||
from.SendLocalizedMessage(1113048); // You've successfully converted the metal.
|
||||
from.AddToBackpack(new GoldIngot(500));
|
||||
this.Delete();
|
||||
}
|
||||
else if ((m_Ore1.Amount < 500) || (m_Ore1.Amount > 500))
|
||||
{
|
||||
from.SendLocalizedMessage(1113046); // You can only convert five hundred ingots at a time.
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1078618); // The item must be in your backpack to be exchanged.
|
||||
}
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ElixirofMetalConversion : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1113011; } } // Elixir of Metal Conversion
|
||||
|
||||
[Constructable]
|
||||
public ElixirofMetalConversion()
|
||||
: base(0x99B)
|
||||
{
|
||||
Hue = 1159;
|
||||
Movable = true;
|
||||
}
|
||||
|
||||
public ElixirofMetalConversion(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
|
||||
Container backpack = from.Backpack;
|
||||
IronIngot item1 = (IronIngot)backpack.FindItemByType(typeof(IronIngot));
|
||||
|
||||
if (item1 != null)
|
||||
{
|
||||
BaseIngot m_Ore1 = item1 as BaseIngot;
|
||||
|
||||
int toConsume = m_Ore1.Amount;
|
||||
|
||||
if ((m_Ore1.Amount > 499) && (m_Ore1.Amount < 501))
|
||||
{
|
||||
m_Ore1.Delete();
|
||||
|
||||
switch ( Utility.Random(4) )
|
||||
{
|
||||
case 0:
|
||||
from.AddToBackpack(new DullCopperIngot(500));
|
||||
break;
|
||||
case 2:
|
||||
from.AddToBackpack(new ShadowIronIngot(500));
|
||||
break;
|
||||
case 1:
|
||||
from.AddToBackpack(new CopperIngot(500));
|
||||
break;
|
||||
case 3:
|
||||
from.AddToBackpack(new BronzeIngot(500));
|
||||
break;
|
||||
}
|
||||
|
||||
from.SendLocalizedMessage(1113048); // You've successfully converted the metal.
|
||||
this.Delete();
|
||||
}
|
||||
else if ((m_Ore1.Amount < 500) || (m_Ore1.Amount > 500))
|
||||
{
|
||||
from.SendLocalizedMessage(1113046); // You can only convert five hundred ingots at a time.
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1078618); // The item must be in your backpack to be exchanged.
|
||||
}
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ElixirofValoriteConversion : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1113010; } } // Elixir of Valorite Conversion
|
||||
|
||||
[Constructable]
|
||||
public ElixirofValoriteConversion()
|
||||
: base(0x99B)
|
||||
{
|
||||
Hue = 2219;
|
||||
Movable = true;
|
||||
}
|
||||
|
||||
public ElixirofValoriteConversion(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
|
||||
Container backpack = from.Backpack;
|
||||
BronzeIngot item1 = (BronzeIngot)backpack.FindItemByType(typeof(BronzeIngot));
|
||||
|
||||
if (item1 != null)
|
||||
{
|
||||
BaseIngot m_Ore1 = item1 as BaseIngot;
|
||||
|
||||
int toConsume = m_Ore1.Amount;
|
||||
|
||||
if ((m_Ore1.Amount > 499) && (m_Ore1.Amount < 501))
|
||||
{
|
||||
m_Ore1.Delete();
|
||||
from.SendLocalizedMessage(1113048); // You've successfully converted the metal.
|
||||
from.AddToBackpack(new ValoriteIngot(500));
|
||||
this.Delete();
|
||||
}
|
||||
else if ((m_Ore1.Amount < 500) || (m_Ore1.Amount > 500))
|
||||
{
|
||||
from.SendLocalizedMessage(1113046); // You can only convert five hundred ingots at a time.
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1078618); // The item must be in your backpack to be exchanged.
|
||||
}
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ElixirofVeriteConversion : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1113009; } } // Elixir of Verite Conversion
|
||||
|
||||
[Constructable]
|
||||
public ElixirofVeriteConversion()
|
||||
: base(0x99B)
|
||||
{
|
||||
Hue = 2207;
|
||||
Movable = true;
|
||||
}
|
||||
|
||||
public ElixirofVeriteConversion(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
|
||||
Container backpack = from.Backpack;
|
||||
CopperIngot item1 = (CopperIngot)backpack.FindItemByType(typeof(CopperIngot));
|
||||
|
||||
if (item1 != null)
|
||||
{
|
||||
BaseIngot m_Ore1 = item1 as BaseIngot;
|
||||
|
||||
int toConsume = m_Ore1.Amount;
|
||||
|
||||
if ((m_Ore1.Amount > 499) && (m_Ore1.Amount < 501))
|
||||
{
|
||||
m_Ore1.Delete();
|
||||
from.SendLocalizedMessage(1113048); // You've successfully converted the metal.
|
||||
from.AddToBackpack(new VeriteIngot(500));
|
||||
this.Delete();
|
||||
}
|
||||
else if ((m_Ore1.Amount < 500) || (m_Ore1.Amount > 500))
|
||||
{
|
||||
from.SendLocalizedMessage(1113046); // You can only convert five hundred ingots at a time.
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1078618); // The item must be in your backpack to be exchanged.
|
||||
}
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
121
Scripts/Items/Artifacts/Consumables/GobletOfCelebration.cs
Normal file
121
Scripts/Items/Artifacts/Consumables/GobletOfCelebration.cs
Normal file
@@ -0,0 +1,121 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GobletOfCelebration : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1075430; } } // Goblet of Celebration
|
||||
|
||||
private bool m_Full;
|
||||
private DateTime m_NextFill;
|
||||
private Timer m_FillTimer;
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public bool Full
|
||||
{
|
||||
get
|
||||
{
|
||||
return m_Full;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (m_Full != value)
|
||||
{
|
||||
m_Full = value;
|
||||
InvalidateProperties();
|
||||
|
||||
if (m_FillTimer != null)
|
||||
m_FillTimer.Stop();
|
||||
|
||||
if (!m_Full)
|
||||
{
|
||||
m_NextFill = DateTime.Now + TimeSpan.FromDays(1.0);
|
||||
|
||||
m_FillTimer = Timer.DelayCall(TimeSpan.FromDays(1.0), new TimerCallback(delegate { Full = true; }));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public GobletOfCelebration()
|
||||
: base(0x99A)
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Weight = 1.0;
|
||||
Hue = 19;
|
||||
|
||||
m_Full = true;
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
base.OnDoubleClick(from);
|
||||
|
||||
if (!IsChildOf(from.Backpack))
|
||||
{
|
||||
from.SendLocalizedMessage(1075438); // You can only drink from the goblet of celebration when its in your inventory.
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_Full)
|
||||
{
|
||||
from.SendLocalizedMessage(1075272); // You drink from the goblet of celebration
|
||||
|
||||
Full = false;
|
||||
|
||||
from.BAC = 60;
|
||||
BaseBeverage.CheckHeaveTimer(from);
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1075439); // You need to wait a day for the goblet of celebration to be replenished.
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if (m_Full)
|
||||
list.Add(1042972); // It's full.
|
||||
else
|
||||
list.Add(1042975); // It's empty.
|
||||
}
|
||||
|
||||
public GobletOfCelebration(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write((int)0); // version
|
||||
|
||||
writer.Write(m_Full);
|
||||
|
||||
if (!m_Full)
|
||||
{
|
||||
writer.Write(m_NextFill);
|
||||
}
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_Full = reader.ReadBool();
|
||||
|
||||
if (!m_Full)
|
||||
{
|
||||
m_NextFill = reader.ReadDateTime();
|
||||
|
||||
m_FillTimer = Timer.DelayCall(m_NextFill - DateTime.Now, new TimerCallback(delegate { Full = true; }));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
36
Scripts/Items/Artifacts/Consumables/GrapeBunch.cs
Normal file
36
Scripts/Items/Artifacts/Consumables/GrapeBunch.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using Server;
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GrapeBunch : Food
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1022513; } }
|
||||
|
||||
[Constructable]
|
||||
public GrapeBunch() : base(1, 3354)
|
||||
{
|
||||
Weight = 1.0;
|
||||
FillFactor = 1;
|
||||
Stackable = false;
|
||||
}
|
||||
|
||||
public GrapeBunch(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
101
Scripts/Items/Artifacts/Consumables/HangoverCure.cs
Normal file
101
Scripts/Items/Artifacts/Consumables/HangoverCure.cs
Normal file
@@ -0,0 +1,101 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Engines.Quests.Hag
|
||||
{
|
||||
public class HangoverCure : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
private int m_Uses;
|
||||
[Constructable]
|
||||
public HangoverCure()
|
||||
: base(0xE2B)
|
||||
{
|
||||
Weight = 1.0;
|
||||
Hue = 0x2D;
|
||||
|
||||
m_Uses = 20;
|
||||
}
|
||||
|
||||
public HangoverCure(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1055060;
|
||||
}
|
||||
}// Grizelda's Extra Strength Hangover Cure
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public int Uses
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_Uses;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.m_Uses = value;
|
||||
}
|
||||
}
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (!this.IsChildOf(from.Backpack))
|
||||
{
|
||||
this.SendLocalizedMessageTo(from, 1042038); // You must have the object in your backpack to use it.
|
||||
return;
|
||||
}
|
||||
|
||||
if (this.m_Uses > 0)
|
||||
{
|
||||
from.PlaySound(0x2D6);
|
||||
from.SendLocalizedMessage(501206); // An awful taste fills your mouth.
|
||||
|
||||
if (from.BAC > 0)
|
||||
{
|
||||
from.BAC = 0;
|
||||
from.SendLocalizedMessage(501204); // You are now sober!
|
||||
}
|
||||
|
||||
this.m_Uses--;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Delete();
|
||||
from.SendLocalizedMessage(501201); // There wasn't enough left to have any effect.
|
||||
}
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write((int)1); // version
|
||||
|
||||
writer.WriteEncodedInt(this.m_Uses);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
switch ( version )
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
this.m_Uses = reader.ReadEncodedInt();
|
||||
break;
|
||||
}
|
||||
case 0:
|
||||
{
|
||||
this.m_Uses = 20;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
55
Scripts/Items/Artifacts/Consumables/InfusedAlchemistsGem.cs
Normal file
55
Scripts/Items/Artifacts/Consumables/InfusedAlchemistsGem.cs
Normal file
@@ -0,0 +1,55 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class InfusedAlchemistsGem : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public InfusedAlchemistsGem()
|
||||
: base(0x1EA7)
|
||||
{
|
||||
Weight = 1.0;
|
||||
}
|
||||
|
||||
public InfusedAlchemistsGem(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1113006;
|
||||
}
|
||||
}
|
||||
public override void AddNameProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.AddNameProperties(list);
|
||||
|
||||
list.Add(1070722, "Alchemy Skill Increaser + 1");
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
from.Skills[SkillName.Alchemy].Base += 1;
|
||||
from.SendMessage("You have increased your Alchemy Skill by 1 Point !.");
|
||||
this.Delete();
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
139
Scripts/Items/Artifacts/Consumables/VialofArmorEssence.cs
Normal file
139
Scripts/Items/Artifacts/Consumables/VialofArmorEssence.cs
Normal file
@@ -0,0 +1,139 @@
|
||||
using System;
|
||||
using Server.Mobiles;
|
||||
using Server.Targeting;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class VialofArmorEssence : Item
|
||||
{
|
||||
public static Dictionary<BaseCreature, DateTime> m_Table = new Dictionary<BaseCreature, DateTime>();
|
||||
|
||||
public virtual int Bonus { get { return 10; } }
|
||||
public virtual TimeSpan Duration { get { return TimeSpan.FromMinutes(10); } }
|
||||
public virtual TimeSpan CoolDown { get { return TimeSpan.FromMinutes(120); } }
|
||||
|
||||
[Constructable]
|
||||
public VialofArmorEssence()
|
||||
: base(0x5722)
|
||||
{
|
||||
}
|
||||
|
||||
public VialofArmorEssence(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1113018;
|
||||
}
|
||||
}
|
||||
|
||||
public override bool DropToMobile(Mobile from, Mobile target, Point3D p)
|
||||
{
|
||||
TryFeed(from, target);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile m)
|
||||
{
|
||||
if (IsChildOf(m.Backpack))
|
||||
{
|
||||
m.BeginTarget(2, false, TargetFlags.Beneficial, (from, targeted) =>
|
||||
{
|
||||
if (targeted is Mobile)
|
||||
{
|
||||
TryFeed(from, (Mobile)targeted);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
private void TryFeed(Mobile from, Mobile target)
|
||||
{
|
||||
if (target is BaseCreature && !((BaseCreature)target).IsDeadBondedPet)
|
||||
{
|
||||
BaseCreature bc = (BaseCreature)target;
|
||||
|
||||
if (UnderInfluence(bc))
|
||||
{
|
||||
if (m_Table[bc] + (CoolDown + Duration) < DateTime.Now)
|
||||
{
|
||||
from.SendLocalizedMessage(1113076); //Your pet is still recovering from the last armor essence it consumed.
|
||||
}
|
||||
else
|
||||
{
|
||||
from.SendLocalizedMessage(1113075); //Your pet is still under the effect of armor essence.
|
||||
}
|
||||
}
|
||||
else if (bc.ControlMaster == from)
|
||||
{
|
||||
from.SendLocalizedMessage(1113050); //Your pet looks much happier.
|
||||
DoEffects(bc);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool DoEffects(BaseCreature bc)
|
||||
{
|
||||
bc.PlaySound(0x1EA);
|
||||
bc.FixedParticles(0x373A, 10, 15, 5018, EffectLayer.Waist);
|
||||
|
||||
m_Table.Add(bc, DateTime.Now);
|
||||
Timer.DelayCall(Duration + CoolDown, new TimerStateCallback(RemoveInfluence), bc);
|
||||
|
||||
bc.TempDamageAbsorb = Bonus;
|
||||
bc.Loyalty = BaseCreature.MaxLoyalty;
|
||||
|
||||
Consume();
|
||||
return true;
|
||||
}
|
||||
|
||||
public override void AddNameProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.AddNameProperties(list);
|
||||
|
||||
list.Add(1113213); //* For Pets Only *
|
||||
list.Add(1113219); //Stats Increased by 10%
|
||||
|
||||
list.Add(1113212, Duration.TotalMinutes.ToString()); //Duration: ~1_val~ minutes
|
||||
list.Add(1113218, CoolDown.TotalMinutes.ToString()); //Cooldown: ~1_val~ minutes
|
||||
}
|
||||
|
||||
public static bool UnderInfluence(BaseCreature bc)
|
||||
{
|
||||
return m_Table.ContainsKey(bc);
|
||||
}
|
||||
|
||||
public static void RemoveInfluence(object obj)
|
||||
{
|
||||
BaseCreature bc = (BaseCreature)obj;
|
||||
|
||||
if (m_Table.ContainsKey(bc))
|
||||
m_Table.Remove(bc);
|
||||
|
||||
bc.TempDamageAbsorb = 0;
|
||||
}
|
||||
|
||||
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 = reader.ReadInt();
|
||||
|
||||
if (version == 0)
|
||||
reader.ReadBool();
|
||||
}
|
||||
}
|
||||
}
|
||||
36
Scripts/Items/Artifacts/Decorative/AcademicBooks.cs
Normal file
36
Scripts/Items/Artifacts/Decorative/AcademicBooks.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class AcademicBooksArtifact : BaseDecorationArtifact
|
||||
{
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
public override int LabelNumber { get { return 1071202; } } // academic books
|
||||
|
||||
|
||||
[Constructable]
|
||||
public AcademicBooksArtifact()
|
||||
: base(0x1E25)
|
||||
{
|
||||
Hue = 2413;
|
||||
}
|
||||
|
||||
public AcademicBooksArtifact(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.WriteEncodedInt(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
33
Scripts/Items/Artifacts/Decorative/ArtifactLargeVase.cs
Normal file
33
Scripts/Items/Artifacts/Decorative/ArtifactLargeVase.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ArtifactLargeVase : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ArtifactLargeVase()
|
||||
: base(0x0B47)
|
||||
{
|
||||
}
|
||||
|
||||
public ArtifactLargeVase(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
33
Scripts/Items/Artifacts/Decorative/ArtifactVase.cs
Normal file
33
Scripts/Items/Artifacts/Decorative/ArtifactVase.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ArtifactVase : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ArtifactVase()
|
||||
: base(0x0B48)
|
||||
{
|
||||
}
|
||||
|
||||
public ArtifactVase(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/BakeKitsuneStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/BakeKitsuneStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BakeKitsuneStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public BakeKitsuneStatue()
|
||||
: base(0x2763)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public BakeKitsuneStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073189;
|
||||
}
|
||||
}// A Bake Kitsune Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
94
Scripts/Items/Artifacts/Decorative/BaseDecorationArtifact.cs
Normal file
94
Scripts/Items/Artifacts/Decorative/BaseDecorationArtifact.cs
Normal file
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public abstract class BaseDecorationArtifact : Item, IArtifact
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public virtual bool ShowArtifactRarity { get { return true; } }
|
||||
|
||||
public BaseDecorationArtifact(int itemID)
|
||||
: base(itemID)
|
||||
{
|
||||
this.Weight = 10.0;
|
||||
}
|
||||
|
||||
public BaseDecorationArtifact(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public abstract int ArtifactRarity { get; }
|
||||
public override bool ForceShowProperties
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if(ShowArtifactRarity)
|
||||
list.Add(1061078, this.ArtifactRarity.ToString()); // artifact rarity ~1_val~
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
public abstract class BaseDecorationContainerArtifact : BaseContainer
|
||||
{
|
||||
public BaseDecorationContainerArtifact(int itemID)
|
||||
: base(itemID)
|
||||
{
|
||||
this.Weight = 10.0;
|
||||
}
|
||||
|
||||
public BaseDecorationContainerArtifact(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public abstract int ArtifactRarity { get; }
|
||||
public override bool ForceShowProperties
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
public override void AddNameProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.AddNameProperties(list);
|
||||
|
||||
list.Add(1061078, this.ArtifactRarity.ToString()); // artifact rarity ~1_val~
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
39
Scripts/Items/Artifacts/Decorative/CandelabraOfSouls.cs
Normal file
39
Scripts/Items/Artifacts/Decorative/CandelabraOfSouls.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CandelabraOfSouls : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public CandelabraOfSouls()
|
||||
: base(0xB26)
|
||||
{
|
||||
Light = LightType.Circle225;
|
||||
}
|
||||
|
||||
public CandelabraOfSouls(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1063478;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/ChangelingStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/ChangelingStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ChangelingStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ChangelingStatue()
|
||||
: base(0x2D8A)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public ChangelingStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073191;
|
||||
}
|
||||
}// A Changeling Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
34
Scripts/Items/Artifacts/Decorative/CoffinPiece.cs
Normal file
34
Scripts/Items/Artifacts/Decorative/CoffinPiece.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using Server;
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CoffinPiece : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1116783; } }
|
||||
|
||||
[Constructable]
|
||||
public CoffinPiece() : base(Utility.RandomList(7481, 7480, 7479, 7452, 7451, 7450))
|
||||
{
|
||||
}
|
||||
|
||||
public CoffinPiece(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();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
371
Scripts/Items/Artifacts/Decorative/CollectionStatuettes.cs
Normal file
371
Scripts/Items/Artifacts/Decorative/CollectionStatuettes.cs
Normal file
@@ -0,0 +1,371 @@
|
||||
using System;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CollectionStatuette : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public CollectionStatuette(int itemID)
|
||||
: base(itemID)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public CollectionStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, Utility.RandomMinMax(1073207, 1073216));
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x5A, 0xE9));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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 SilverSteedZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public SilverSteedZooStatuette()
|
||||
: base(0x259D)
|
||||
{
|
||||
}
|
||||
|
||||
public SilverSteedZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073219;
|
||||
}
|
||||
}// Interactive Silver Steed Contribution Statue
|
||||
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 QuagmireZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public QuagmireZooStatuette()
|
||||
: base(0x2614)
|
||||
{
|
||||
}
|
||||
|
||||
public QuagmireZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1074848;
|
||||
}
|
||||
}// Interactive Quagmire Contribution Statue from the Britannia Royal Zoo.
|
||||
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 BakeKitsuneZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public BakeKitsuneZooStatuette()
|
||||
: base(0x2763)
|
||||
{
|
||||
}
|
||||
|
||||
public BakeKitsuneZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1074849;
|
||||
}
|
||||
}// Interactive Bake Kitsune Contribution Statue from the Britannia Royal Zoo.
|
||||
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 DireWolfZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public DireWolfZooStatuette()
|
||||
: base(0x25D0)
|
||||
{
|
||||
}
|
||||
|
||||
public DireWolfZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073196;
|
||||
}
|
||||
}// Interactive Dire Wolf Contribution Statue from the Britannia Royal Zoo.
|
||||
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 CraneZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public CraneZooStatuette()
|
||||
: base(0x2764)
|
||||
{
|
||||
}
|
||||
|
||||
public CraneZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073197;
|
||||
}
|
||||
}// An Interactive Crane Contribution Statue from the Britannia Royal Zoo.
|
||||
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 PolarBearZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public PolarBearZooStatuette()
|
||||
: base(0x20E1)
|
||||
{
|
||||
}
|
||||
|
||||
public PolarBearZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1074851;
|
||||
}
|
||||
}// Interactive Polar Bear Contribution Statue from the Britannia Royal Zoo.
|
||||
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 ChangelingZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ChangelingZooStatuette()
|
||||
: base(0x2D8A)
|
||||
{
|
||||
}
|
||||
|
||||
public ChangelingZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1074850;
|
||||
}
|
||||
}// Interactive Changeling Contribution Statue from the Britannia Royal Zoo.
|
||||
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 ReptalonZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ReptalonZooStatuette()
|
||||
: base(0x2D95)
|
||||
{
|
||||
}
|
||||
|
||||
public ReptalonZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1074852;
|
||||
}
|
||||
}// Interactive Reptalon Contribution Statue from the Britannia Royal Zoo.
|
||||
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 SpecialAchievementZooStatuette : CollectionStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public SpecialAchievementZooStatuette()
|
||||
: base(0x2FF6)
|
||||
{
|
||||
this.Weight = 10.0;
|
||||
}
|
||||
|
||||
public SpecialAchievementZooStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073226;
|
||||
}
|
||||
}// Britannia Royal Zoo Special Achievement Award
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class LibraryFriendLantern : Lantern
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public LibraryFriendLantern()
|
||||
: base()
|
||||
{
|
||||
}
|
||||
|
||||
public LibraryFriendLantern(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073339;
|
||||
}
|
||||
}// Friends of the Library Reading Lantern
|
||||
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 LibraryFriendReadingChair : BigElvenChair
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public LibraryFriendReadingChair()
|
||||
: base()
|
||||
{
|
||||
}
|
||||
|
||||
public LibraryFriendReadingChair(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073340;
|
||||
}
|
||||
}// Friends of the Library Reading Chair
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,275 @@
|
||||
using System;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[Flipable(0xFBD, 0xFBE)]
|
||||
public class SherryTheMouseQuotes : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public SherryTheMouseQuotes()
|
||||
: base(0xFBD)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 5.0;
|
||||
}
|
||||
|
||||
public SherryTheMouseQuotes(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073300;
|
||||
}
|
||||
}// Library Friends - Quotes from the pen of Sherry the Mouse
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, Utility.RandomMinMax(1073301, 1073309));
|
||||
|
||||
if (Utility.RandomBool())
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x30A, 0x313));
|
||||
else
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x419, 0x422));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
[Flipable(0xFBD, 0xFBE)]
|
||||
public class WyrdBeastmasterQuotes : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public WyrdBeastmasterQuotes()
|
||||
: base(0xFBD)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 5.0;
|
||||
}
|
||||
|
||||
public WyrdBeastmasterQuotes(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073310;
|
||||
}
|
||||
}// Library Friends - Quotes from the pen of Wyrd Beastmaster
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, Utility.RandomMinMax(1073311, 1073316));
|
||||
|
||||
if (Utility.RandomBool())
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x30A, 0x313));
|
||||
else
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x419, 0x422));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
[Flipable(0xFBD, 0xFBE)]
|
||||
public class MercenaryJustinQuotes : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public MercenaryJustinQuotes()
|
||||
: base(0xFBD)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 5.0;
|
||||
}
|
||||
|
||||
public MercenaryJustinQuotes(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073317;
|
||||
}
|
||||
}// Library Friends - Quotes from the pen of Mercenary Justin
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, Utility.RandomMinMax(1073318, 1073325));
|
||||
|
||||
if (Utility.RandomBool())
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x30A, 0x313));
|
||||
else
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x419, 0x422));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
[Flipable(0xFBD, 0xFBE)]
|
||||
public class HeigelOfMoonglowQuotes : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public HeigelOfMoonglowQuotes()
|
||||
: base(0xFBD)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 5.0;
|
||||
}
|
||||
|
||||
public HeigelOfMoonglowQuotes(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073327;
|
||||
}
|
||||
}// Library Friends - Quotes from the pen of Heigel of Moonglow
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, Utility.RandomList(1073326, 1073328, 1073329, 1073330, 1073331));
|
||||
|
||||
if (Utility.RandomBool())
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x30A, 0x313));
|
||||
else
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x419, 0x422));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
[Flipable(0xFBD, 0xFBE)]
|
||||
public class TraderHoraceQuotes : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public TraderHoraceQuotes()
|
||||
: base(0xFBD)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 5.0;
|
||||
}
|
||||
|
||||
public TraderHoraceQuotes(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073338;
|
||||
}
|
||||
}// Library Friends - Quotes from the pen of Horace, Trader
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, Utility.RandomMinMax(1073332, 1073337));
|
||||
|
||||
if (Utility.RandomBool())
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x30A, 0x313));
|
||||
else
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.RandomMinMax(0x419, 0x422));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
34
Scripts/Items/Artifacts/Decorative/CreepingVine.cs
Normal file
34
Scripts/Items/Artifacts/Decorative/CreepingVine.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using Server;
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CreepingVine : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1112401; } }
|
||||
|
||||
[Constructable]
|
||||
public CreepingVine()
|
||||
: base(Utility.Random(18322, 4))
|
||||
{
|
||||
}
|
||||
|
||||
public CreepingVine(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
33
Scripts/Items/Artifacts/Decorative/DemonSkull.cs
Normal file
33
Scripts/Items/Artifacts/Decorative/DemonSkull.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class DemonSkull : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public DemonSkull()
|
||||
: base(0x224e + Utility.Random(4))
|
||||
{
|
||||
}
|
||||
|
||||
public DemonSkull(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
32
Scripts/Items/Artifacts/Decorative/DirtPatch.cs
Normal file
32
Scripts/Items/Artifacts/Decorative/DirtPatch.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class DirtPatch : Item
|
||||
{
|
||||
[Constructable]
|
||||
public DirtPatch()
|
||||
: base(0x0913)
|
||||
{
|
||||
}
|
||||
|
||||
public DirtPatch(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
1164
Scripts/Items/Artifacts/Decorative/DoomDecorationArtifacts.cs
Normal file
1164
Scripts/Items/Artifacts/Decorative/DoomDecorationArtifacts.cs
Normal file
File diff suppressed because it is too large
Load Diff
40
Scripts/Items/Artifacts/Decorative/EvilIdolSkull.cs
Normal file
40
Scripts/Items/Artifacts/Decorative/EvilIdolSkull.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class EvilIdolSkull : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public EvilIdolSkull()
|
||||
: base(0x1F18)
|
||||
{
|
||||
}
|
||||
|
||||
public EvilIdolSkull(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1095237;
|
||||
}
|
||||
}// Evil Idol
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
using System;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class FerretImprisonedInCrystal : BaseImprisonedMobile
|
||||
{
|
||||
[Constructable]
|
||||
public FerretImprisonedInCrystal()
|
||||
: base(0x1F19)
|
||||
{
|
||||
this.Name = "a ferret imprisoned in a crystal";
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public FerretImprisonedInCrystal(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseCreature Summon
|
||||
{
|
||||
get
|
||||
{
|
||||
return new ShimmeringFerret();
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class ShimmeringFerret : Ferret
|
||||
{
|
||||
[Constructable]
|
||||
public ShimmeringFerret()
|
||||
: base()
|
||||
{
|
||||
this.SetSkill(SkillName.MagicResist, 100.0);
|
||||
this.SetSkill(SkillName.Tactics, 100.0);
|
||||
this.SetSkill(SkillName.Wrestling, 100.0);
|
||||
}
|
||||
|
||||
public ShimmeringFerret(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool DeleteOnRelease
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1049646); // (summoned)
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
37
Scripts/Items/Artifacts/Decorative/FigureheadOfBmvArarat.cs
Normal file
37
Scripts/Items/Artifacts/Decorative/FigureheadOfBmvArarat.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class FigureheadOfBmvArarat : BaseDecorationArtifact
|
||||
{
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public FigureheadOfBmvArarat()
|
||||
: base(0x2D0E)
|
||||
{
|
||||
this.Name = "Figurehead Of The Bmv Ararat";
|
||||
this.Weight = 10.0;
|
||||
this.Hue = 2968; // checked
|
||||
}
|
||||
|
||||
public FigureheadOfBmvArarat(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
51
Scripts/Items/Artifacts/Decorative/Futon.cs
Normal file
51
Scripts/Items/Artifacts/Decorative/Futon.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[Flipable]
|
||||
public class Futon : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public Futon()
|
||||
: base(Utility.RandomDouble() > 0.5 ? 0x295C : 0x295E)
|
||||
{
|
||||
}
|
||||
|
||||
public Futon(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public void Flip()
|
||||
{
|
||||
switch ( this.ItemID )
|
||||
{
|
||||
case 0x295C:
|
||||
this.ItemID = 0x295D;
|
||||
break;
|
||||
case 0x295E:
|
||||
this.ItemID = 0x295F;
|
||||
break;
|
||||
case 0x295D:
|
||||
this.ItemID = 0x295C;
|
||||
break;
|
||||
case 0x295F:
|
||||
this.ItemID = 0x295E;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
52
Scripts/Items/Artifacts/Decorative/GhostShipAnchor.cs
Normal file
52
Scripts/Items/Artifacts/Decorative/GhostShipAnchor.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GhostShipAnchor : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GhostShipAnchor()
|
||||
: base(0x14F7)
|
||||
{
|
||||
this.Hue = 0x47E;
|
||||
this.Weight = 2;
|
||||
}
|
||||
|
||||
public GhostShipAnchor(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1070816;
|
||||
}
|
||||
}// Ghost Ship Anchor
|
||||
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();
|
||||
|
||||
switch (version)
|
||||
{
|
||||
case 0:
|
||||
this.Weight = 2;
|
||||
break;
|
||||
}
|
||||
|
||||
if (this.ItemID == 0x1F47)
|
||||
this.ItemID = 0x14F7;
|
||||
}
|
||||
}
|
||||
}
|
||||
40
Scripts/Items/Artifacts/Decorative/GildedStatue.cs
Normal file
40
Scripts/Items/Artifacts/Decorative/GildedStatue.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class KingsGildedStatue : BaseDecorationArtifact
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
|
||||
public override double DefaultWeight { get { return 10.0; } }
|
||||
public override string DefaultName { get { return "A Gilded Statue from the Personal Collection of the King"; } }
|
||||
|
||||
[Constructable]
|
||||
public KingsGildedStatue()
|
||||
: base(0x139D)
|
||||
{
|
||||
Hue = 2721;
|
||||
}
|
||||
|
||||
public KingsGildedStatue(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
40
Scripts/Items/Artifacts/Decorative/GoldBricks.cs
Normal file
40
Scripts/Items/Artifacts/Decorative/GoldBricks.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GoldBricks : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GoldBricks()
|
||||
: base(0x1BEB)
|
||||
{
|
||||
}
|
||||
|
||||
public GoldBricks(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1063489;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
48
Scripts/Items/Artifacts/Decorative/GrapeVine.cs
Normal file
48
Scripts/Items/Artifacts/Decorative/GrapeVine.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using Server;
|
||||
using System;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GrapeVine : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
private DateTime m_NextHarvest;
|
||||
private readonly double HarvestWait = 4;
|
||||
|
||||
public override int LabelNumber { get { return 1149954; } }
|
||||
|
||||
[Constructable]
|
||||
public GrapeVine() : base(Utility.Random(3355, 10))
|
||||
{
|
||||
m_NextHarvest = DateTime.UtcNow;
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if((ItemID == 3358 || ItemID == 3363) && Movable == false && m_NextHarvest < DateTime.UtcNow)
|
||||
{
|
||||
from.AddToBackpack(new GrapeBunch());
|
||||
m_NextHarvest = DateTime.UtcNow + TimeSpan.FromHours(HarvestWait);
|
||||
}
|
||||
}
|
||||
|
||||
public GrapeVine(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write((int)0);
|
||||
writer.Write(m_NextHarvest);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
m_NextHarvest = reader.ReadDateTime();
|
||||
}
|
||||
}
|
||||
}
|
||||
232
Scripts/Items/Artifacts/Decorative/ImprisonedDog.cs
Normal file
232
Scripts/Items/Artifacts/Decorative/ImprisonedDog.cs
Normal file
@@ -0,0 +1,232 @@
|
||||
using System;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ImprisonedDog : BaseImprisonedMobile
|
||||
{
|
||||
[Constructable]
|
||||
public ImprisonedDog()
|
||||
: base(0x1F1C)
|
||||
{
|
||||
this.Weight = 1.0;
|
||||
this.Hue = 0x485;
|
||||
}
|
||||
|
||||
public ImprisonedDog(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075091;
|
||||
}
|
||||
}// An Imprisoned Dog
|
||||
public override BaseCreature Summon
|
||||
{
|
||||
get
|
||||
{
|
||||
return new TravestyDog();
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class TravestyDog : Dog
|
||||
{
|
||||
private string m_Name;
|
||||
private DateTime m_NextAttempt;
|
||||
[Constructable]
|
||||
public TravestyDog()
|
||||
: base()
|
||||
{
|
||||
this.Hue = 2301;
|
||||
|
||||
this.m_Name = null;
|
||||
this.m_NextAttempt = DateTime.UtcNow;
|
||||
}
|
||||
|
||||
public TravestyDog(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool DeleteOnRelease
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
public bool Morphed
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_Name != null;
|
||||
}
|
||||
}
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1049646); // (summoned)
|
||||
}
|
||||
|
||||
public void DeleteItems()
|
||||
{
|
||||
for (int i = this.Items.Count - 1; i >= 0; i --)
|
||||
if (this.Items[i] is ClonedItem)
|
||||
this.Items[i].Delete();
|
||||
}
|
||||
|
||||
public void BeginMorph(Mobile to)
|
||||
{
|
||||
if (to == null || !this.Alive || this.Morphed)
|
||||
return;
|
||||
|
||||
this.m_Name = this.Name;
|
||||
|
||||
this.Body = to.Body;
|
||||
this.Hue = to.Hue;
|
||||
this.Name = to.Name;
|
||||
this.Female = to.Female;
|
||||
this.Title = to.Title;
|
||||
this.HairItemID = to.HairItemID;
|
||||
this.HairHue = to.HairHue;
|
||||
this.FacialHairItemID = to.FacialHairItemID;
|
||||
this.FacialHairHue = to.FacialHairHue;
|
||||
|
||||
for (int i = to.Items.Count - 1; i >= 0; i --)
|
||||
{
|
||||
Item item = to.Items[i];
|
||||
|
||||
if (item.Layer != Layer.Backpack && item.Layer != Layer.Mount)
|
||||
this.AddItem(new ClonedItem(item));
|
||||
}
|
||||
|
||||
this.PlaySound(0x511);
|
||||
this.FixedParticles(0x376A, 1, 14, 5045, EffectLayer.Waist);
|
||||
|
||||
Timer.DelayCall(TimeSpan.FromSeconds(60), new TimerCallback(EndMorph));
|
||||
}
|
||||
|
||||
public void EndMorph()
|
||||
{
|
||||
this.DeleteItems();
|
||||
|
||||
this.Body = 0xD9;
|
||||
this.Hue = 2301;
|
||||
this.Name = this.m_Name;
|
||||
this.Female = false;
|
||||
this.Title = null;
|
||||
this.HairItemID = 0;
|
||||
this.HairHue = 0;
|
||||
this.FacialHairItemID = 0;
|
||||
this.FacialHairHue = 0;
|
||||
|
||||
this.m_Name = null;
|
||||
|
||||
this.PlaySound(0x511);
|
||||
this.FixedParticles(0x376A, 1, 14, 5045, EffectLayer.Waist);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write((int)0); // version
|
||||
|
||||
writer.Write((string)this.m_Name);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
this.m_Name = reader.ReadString();
|
||||
this.m_NextAttempt = DateTime.UtcNow;
|
||||
|
||||
if (this.Morphed)
|
||||
this.EndMorph();
|
||||
}
|
||||
|
||||
protected override bool OnMove(Direction d)
|
||||
{
|
||||
if (!this.Morphed && this.m_NextAttempt <= DateTime.UtcNow)
|
||||
{
|
||||
IPooledEnumerable eable = GetMobilesInRange(6);
|
||||
foreach (Mobile m in eable)
|
||||
{
|
||||
if (!m.Hidden && m.Alive && Utility.RandomDouble() < 0.25)
|
||||
{
|
||||
this.BeginMorph(m);
|
||||
break;
|
||||
}
|
||||
}
|
||||
eable.Free();
|
||||
|
||||
this.m_NextAttempt = DateTime.UtcNow + TimeSpan.FromSeconds(90);
|
||||
}
|
||||
|
||||
return base.OnMove(d);
|
||||
}
|
||||
|
||||
private class ClonedItem : Item
|
||||
{
|
||||
public ClonedItem(Item item)
|
||||
: base(item.ItemID)
|
||||
{
|
||||
this.Name = item.Name;
|
||||
this.Weight = item.Weight;
|
||||
this.Hue = item.Hue;
|
||||
this.Layer = item.Layer;
|
||||
}
|
||||
|
||||
public ClonedItem(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override DeathMoveResult OnParentDeath(Mobile parent)
|
||||
{
|
||||
this.Delete();
|
||||
|
||||
return DeathMoveResult.RemainEquiped;
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
74
Scripts/Items/Artifacts/Decorative/KingsPainting.cs
Normal file
74
Scripts/Items/Artifacts/Decorative/KingsPainting.cs
Normal file
@@ -0,0 +1,74 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class KingsPainting1 : BaseDecorationArtifact
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
|
||||
public override double DefaultWeight { get { return 10.0; } }
|
||||
public override string DefaultName { get { return "A Painting From The Personal Collection Of The King"; } }
|
||||
|
||||
[Constructable]
|
||||
public KingsPainting1()
|
||||
: base(19552)
|
||||
{
|
||||
}
|
||||
|
||||
public KingsPainting1(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();
|
||||
}
|
||||
}
|
||||
|
||||
public class KingsPainting2 : BaseDecorationArtifact
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
|
||||
public override double DefaultWeight { get { return 10.0; } }
|
||||
public override string DefaultName { get { return "A Painting From The Personal Collection Of The King"; } }
|
||||
|
||||
[Constructable]
|
||||
public KingsPainting2()
|
||||
: base(19558)
|
||||
{
|
||||
}
|
||||
|
||||
public KingsPainting2(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
79
Scripts/Items/Artifacts/Decorative/LargeFishingNet.cs
Normal file
79
Scripts/Items/Artifacts/Decorative/LargeFishingNet.cs
Normal file
@@ -0,0 +1,79 @@
|
||||
using Server;
|
||||
using System;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[Flipable(7845, 7846)]
|
||||
public class LargeFishingNet : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1149955; } }
|
||||
|
||||
[Constructable]
|
||||
public LargeFishingNet()
|
||||
: base(7845)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (IsChildOf(from.Backpack))
|
||||
{
|
||||
from.SendMessage("Target a corpse you'd like to net.");
|
||||
from.BeginTarget(10, false, TargetFlags.None, new TargetCallback(Net_OnTarget));
|
||||
}
|
||||
}
|
||||
|
||||
public void Net_OnTarget(Mobile from, object targeted)
|
||||
{
|
||||
if (targeted is Corpse && (((Corpse)targeted).Owner == null || !((Corpse)targeted).Owner.Player))
|
||||
{
|
||||
if (SOS.ValidateDeepWater(((Corpse)targeted).Map, ((Corpse)targeted).X, ((Corpse)targeted).Y))
|
||||
{
|
||||
from.Animate(12, 5, 1, true, false, 0);
|
||||
Timer.DelayCall(TimeSpan.FromSeconds(0.5), new TimerStateCallback(MoveCorpse), new object[] { (Corpse)targeted, from });
|
||||
}
|
||||
else
|
||||
from.SendLocalizedMessage(1010485); // You can only use this in deep water!
|
||||
}
|
||||
else
|
||||
from.SendMessage("You can only net corpses!");
|
||||
}
|
||||
|
||||
public void MoveCorpse(object o)
|
||||
{
|
||||
object[] ojs = (object[])o;
|
||||
|
||||
Corpse c = ojs[0] as Corpse;
|
||||
Mobile from = ojs[1] as Mobile;
|
||||
|
||||
if (c != null && from != null)
|
||||
c.MoveToWorld(from.Location, from.Map);
|
||||
}
|
||||
|
||||
public override void AddNameProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.AddNameProperties(list);
|
||||
list.Add(1041645); // recovered from a shipwrecklist
|
||||
}
|
||||
|
||||
public LargeFishingNet(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();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
32
Scripts/Items/Artifacts/Decorative/LavaTile.cs
Normal file
32
Scripts/Items/Artifacts/Decorative/LavaTile.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class LavaTile : Item
|
||||
{
|
||||
[Constructable]
|
||||
public LavaTile()
|
||||
: base(0x12EE)
|
||||
{
|
||||
}
|
||||
|
||||
public LavaTile(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
83
Scripts/Items/Artifacts/Decorative/LordBritishThroneAddon.cs
Normal file
83
Scripts/Items/Artifacts/Decorative/LordBritishThroneAddon.cs
Normal file
@@ -0,0 +1,83 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class LordBritishThroneAddon : BaseAddon
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public LordBritishThroneAddon()
|
||||
{
|
||||
this.AddComponent(new AddonComponent(0x1526), 0, 0, 0);
|
||||
this.AddComponent(new AddonComponent(0x1527), 0, -1, 0);
|
||||
}
|
||||
|
||||
public LordBritishThroneAddon(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed
|
||||
{
|
||||
get
|
||||
{
|
||||
return new LordBritishThroneDeed();
|
||||
}
|
||||
}
|
||||
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 = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class LordBritishThroneDeed : BaseAddonDeed
|
||||
{
|
||||
[Constructable]
|
||||
public LordBritishThroneDeed()
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public LordBritishThroneDeed(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon
|
||||
{
|
||||
get
|
||||
{
|
||||
return new LordBritishThroneAddon();
|
||||
}
|
||||
}
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073243;
|
||||
}
|
||||
}// Replica of Lord British's Throne - Museum of Vesper
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
38
Scripts/Items/Artifacts/Decorative/MLDecorationArtifacts.cs
Normal file
38
Scripts/Items/Artifacts/Decorative/MLDecorationArtifacts.cs
Normal file
@@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class AncientShipModelOfTheHMSCape : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1063476; } }
|
||||
|
||||
[Constructable]
|
||||
public AncientShipModelOfTheHMSCape()
|
||||
: base(0x14F3)
|
||||
{
|
||||
Name = "an Ancient Ship Model Of The HMS Cape";
|
||||
Hue = 0x37B;
|
||||
}
|
||||
|
||||
public AncientShipModelOfTheHMSCape(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
84
Scripts/Items/Artifacts/Decorative/MapOfTheKnownWorld.cs
Normal file
84
Scripts/Items/Artifacts/Decorative/MapOfTheKnownWorld.cs
Normal file
@@ -0,0 +1,84 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Gumps;
|
||||
using Server.Network;
|
||||
using Server.Multis;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[FlipableAttribute( 0x3BB6, 0x3BB7 )]
|
||||
public class MapOfTheKnownWorld : Item, ISecurable
|
||||
{
|
||||
private SecureLevel m_Level;
|
||||
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public SecureLevel Level
|
||||
{
|
||||
get{ return m_Level; }
|
||||
set{ m_Level = value; }
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public MapOfTheKnownWorld() : base( 0x3BB6 )
|
||||
{
|
||||
Name = "a map of the known world";
|
||||
Weight = 1.0;
|
||||
LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public override void GetContextMenuEntries( Mobile from, List<ContextMenuEntry> list )
|
||||
{
|
||||
base.GetContextMenuEntries( from, list );
|
||||
|
||||
SetSecureLevelEntry.AddTo( from, this, list );
|
||||
}
|
||||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
if ( from.InRange( GetWorldLocation(), 2 ) )
|
||||
{
|
||||
from.CloseGump( typeof( InternalGump ) );
|
||||
from.SendGump( new InternalGump() );
|
||||
}
|
||||
else
|
||||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
|
||||
}
|
||||
}
|
||||
|
||||
private class InternalGump : Gump
|
||||
{
|
||||
public InternalGump() : base( 50, 50 )
|
||||
{
|
||||
AddImage( 0, 0, 0x12B ); //299
|
||||
}
|
||||
}
|
||||
|
||||
public MapOfTheKnownWorld( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( (int) 0 ); // version
|
||||
|
||||
writer.WriteEncodedInt( (int) m_Level );
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
m_Level = (SecureLevel) reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/MedusaStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/MedusaStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class MedusaStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public MedusaStatue()
|
||||
: base(0x40BC)
|
||||
{
|
||||
this.Name = "Medusa";
|
||||
this.Weight = 10;
|
||||
}
|
||||
|
||||
public MedusaStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1113626;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
106
Scripts/Items/Artifacts/Decorative/MedusasFloorTileAddon.cs
Normal file
106
Scripts/Items/Artifacts/Decorative/MedusasFloorTileAddon.cs
Normal file
@@ -0,0 +1,106 @@
|
||||
//Created By Milva
|
||||
////////////////////////////////////////
|
||||
// //
|
||||
// Generated by CEO's YAAAG - V1.2 //
|
||||
// (Yet Another Arya Addon Generator) //
|
||||
// //
|
||||
////////////////////////////////////////
|
||||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[TypeAlias("Server.Items.MedusasFloortileAddon")]
|
||||
public class MedusaFloorTileAddon : BaseAddon
|
||||
{
|
||||
public override BaseAddonDeed Deed
|
||||
{
|
||||
get
|
||||
{
|
||||
return new MedusaFloorTileAddonDeed();
|
||||
}
|
||||
}
|
||||
|
||||
[ Constructable ]
|
||||
public MedusaFloorTileAddon()
|
||||
{
|
||||
AddComponent(new LocalizedAddonComponent(16589, 1113922), 0, 0, 0);// 1
|
||||
AddComponent(new LocalizedAddonComponent(16591, 1113922), 2, 1, 0);// 2
|
||||
AddComponent(new LocalizedAddonComponent(16577, 1113922), -2, 2, 0);// 3
|
||||
AddComponent(new LocalizedAddonComponent(16578, 1113922), -1, -2, 0);// 4
|
||||
AddComponent(new LocalizedAddonComponent(16581, 1113922), 2, -2, 0);// 5
|
||||
AddComponent(new LocalizedAddonComponent(16598, 1113922), -1, 2, 0);// 6
|
||||
AddComponent(new LocalizedAddonComponent(16579, 1113922), 0, -2, 0);// 7
|
||||
AddComponent(new LocalizedAddonComponent(16601, 1113922), -2, -2, 0);// 8
|
||||
AddComponent(new LocalizedAddonComponent(16580, 1113922), 1, -2, 0);// 9
|
||||
AddComponent(new LocalizedAddonComponent(16582, 1113922), -2, 0, 0);// 10
|
||||
AddComponent(new LocalizedAddonComponent(16586, 1113922), 2, -1, 0);// 11
|
||||
AddComponent(new LocalizedAddonComponent(16595, 1113922), 1, -1, 0);// 12
|
||||
AddComponent(new LocalizedAddonComponent(16590, 1113922), 1, 1, 0);// 13
|
||||
AddComponent(new LocalizedAddonComponent(16585, 1113922), 1, 0, 0);// 14
|
||||
AddComponent(new LocalizedAddonComponent(16587, 1113922), -2, -1, 0);// 15
|
||||
AddComponent(new LocalizedAddonComponent(16593, 1113922), -1, 1, 0);// 16
|
||||
AddComponent(new LocalizedAddonComponent(16594, 1113922), 0, 1, 0);// 17
|
||||
AddComponent(new LocalizedAddonComponent(16596, 1113922), 2, 0, 0);// 18
|
||||
AddComponent(new LocalizedAddonComponent(16588, 1113922), -1, -1, 0);// 19
|
||||
AddComponent(new LocalizedAddonComponent(16597, 1113922), 2, 2, 0);// 20
|
||||
AddComponent(new LocalizedAddonComponent(16592, 1113922), -2, 1, 0);// 21
|
||||
AddComponent(new LocalizedAddonComponent(16584, 1113922), 0, -1, 0);// 22
|
||||
AddComponent(new LocalizedAddonComponent(16583, 1113922), -1, 0, 0);// 23
|
||||
AddComponent(new LocalizedAddonComponent(16599, 1113922), 0, 2, 0);// 24
|
||||
AddComponent(new LocalizedAddonComponent(16600, 1113922), 1, 2, 0);// 25
|
||||
}
|
||||
|
||||
public MedusaFloorTileAddon( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
writer.Write( 0 ); // Version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
[TypeAlias("Server.Items.MedusasFloortileAddonDeed")]
|
||||
public class MedusaFloorTileAddonDeed : BaseAddonDeed
|
||||
{
|
||||
public override int LabelNumber { get { return 1113918; } } // a Medusa Floor deed
|
||||
|
||||
public override BaseAddon Addon
|
||||
{
|
||||
get
|
||||
{
|
||||
return new MedusaFloorTileAddon();
|
||||
}
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public MedusaFloorTileAddonDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public MedusaFloorTileAddonDeed( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
writer.Write( 0 ); // Version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
34
Scripts/Items/Artifacts/Decorative/MummifiedCorpse.cs
Normal file
34
Scripts/Items/Artifacts/Decorative/MummifiedCorpse.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using Server.Network;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class MummifiedCorpse : Item
|
||||
{
|
||||
public override int LabelNumber { get { return 1112400; } } //a mummified corpse
|
||||
|
||||
[Constructable]
|
||||
public MummifiedCorpse() : base( 0x1C20 )
|
||||
{
|
||||
}
|
||||
|
||||
public MummifiedCorpse( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
436
Scripts/Items/Artifacts/Decorative/MuseumStatues.cs
Normal file
436
Scripts/Items/Artifacts/Decorative/MuseumStatues.cs
Normal file
@@ -0,0 +1,436 @@
|
||||
using System;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class VesperCollectionStatuette : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public VesperCollectionStatuette(int itemID)
|
||||
: base(itemID)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public VesperCollectionStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
{
|
||||
int cliloc = Utility.RandomMinMax(1073266, 1073286);
|
||||
|
||||
if (cliloc == 1073282)
|
||||
cliloc -= 1;
|
||||
|
||||
this.PublicOverheadMessage(MessageType.Regular, 0x3B2, cliloc);
|
||||
Effects.PlaySound(this.Location, this.Map, Utility.Random(0x17));
|
||||
}
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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 TrollStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public TrollStatuette()
|
||||
: base(0x20E9)
|
||||
{
|
||||
}
|
||||
|
||||
public TrollStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073242;
|
||||
}
|
||||
}// G'Thunk the Troll - Museum of Vesper Replica
|
||||
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 CrystalBallStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public CrystalBallStatuette()
|
||||
: base(0xE2E)
|
||||
{
|
||||
}
|
||||
|
||||
public CrystalBallStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073244;
|
||||
}
|
||||
}// Nystul's Crystal Ball - Museum of Vesper Replica
|
||||
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 DevourerStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public DevourerStatuette()
|
||||
: base(0x2623)
|
||||
{
|
||||
}
|
||||
|
||||
public DevourerStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073245;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Devourer of Souls - Museum of Vesper
|
||||
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 SnowLadyStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public SnowLadyStatuette()
|
||||
: base(0x276C)
|
||||
{
|
||||
}
|
||||
|
||||
public SnowLadyStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075016;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Lady of the Snow - Museum of Vesper
|
||||
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 GolemStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public GolemStatuette()
|
||||
: base(0x2610)
|
||||
{
|
||||
}
|
||||
|
||||
public GolemStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075017;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Golem - Museum of Vesper
|
||||
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 ExodusOverseerStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public ExodusOverseerStatuette()
|
||||
: base(0x260C)
|
||||
{
|
||||
}
|
||||
|
||||
public ExodusOverseerStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075018;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Exodus Overseer - Museum of Vesper
|
||||
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 JukaLordStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public JukaLordStatuette()
|
||||
: base(0x25FC)
|
||||
{
|
||||
}
|
||||
|
||||
public JukaLordStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075019;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Juka Lord- Museum of Vesper
|
||||
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 MeerCaptainStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public MeerCaptainStatuette()
|
||||
: base(0x25FA)
|
||||
{
|
||||
}
|
||||
|
||||
public MeerCaptainStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075020;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Meer Captain - Museum of Vesper
|
||||
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 MeerEternalStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public MeerEternalStatuette()
|
||||
: base(0x25F8)
|
||||
{
|
||||
}
|
||||
|
||||
public MeerEternalStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075021;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Meer Eternal - Museum of Vesper
|
||||
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 SolenQueenStatuette : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public SolenQueenStatuette()
|
||||
: base(0x2602)
|
||||
{
|
||||
}
|
||||
|
||||
public SolenQueenStatuette(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075022;
|
||||
}
|
||||
}// Dangerous Creatures Replica: Solen Queen - Museum of Vesper
|
||||
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 VesperSpecialAchievementReplica : VesperCollectionStatuette
|
||||
{
|
||||
[Constructable]
|
||||
public VesperSpecialAchievementReplica()
|
||||
: base(0x2D4E)
|
||||
{
|
||||
}
|
||||
|
||||
public VesperSpecialAchievementReplica(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073265;
|
||||
}
|
||||
}// Museum of Vesper Special Achievement Replica
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
41
Scripts/Items/Artifacts/Decorative/PhillipsWoodenSteed.cs
Normal file
41
Scripts/Items/Artifacts/Decorative/PhillipsWoodenSteed.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class PhillipsWoodenSteed : MonsterStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public PhillipsWoodenSteed()
|
||||
: base(MonsterStatuetteType.PhillipsWoodenSteed)
|
||||
{
|
||||
this.LootType = LootType.Regular;
|
||||
}
|
||||
|
||||
public PhillipsWoodenSteed(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool ForceShowProperties
|
||||
{
|
||||
get
|
||||
{
|
||||
return ObjectPropertyList.Enabled;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
55
Scripts/Items/Artifacts/Decorative/Pier.cs
Normal file
55
Scripts/Items/Artifacts/Decorative/Pier.cs
Normal file
@@ -0,0 +1,55 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class Pier : Item
|
||||
{
|
||||
/*
|
||||
* This does not make a lot of sense, being a "Pier"
|
||||
* and having possible itemids that have nothing
|
||||
* to do with piers. The three items here are basically
|
||||
* permutations of the same "drop", or item that
|
||||
* will be randomly selected when the item drops.
|
||||
*
|
||||
* It was either this, or make 2
|
||||
* new classes named to reflect that they are rocks
|
||||
* in water, or put them all in one class. Either
|
||||
* is kind of senseless, so it is what it is.
|
||||
*
|
||||
*/
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
private static readonly int[] m_itemids = new int[]
|
||||
{
|
||||
0x3486, 0x348b, 0x3ae
|
||||
};
|
||||
[Constructable]
|
||||
public Pier()
|
||||
: base(m_itemids[Utility.Random(3)])
|
||||
{
|
||||
}
|
||||
|
||||
public Pier(int itemid)
|
||||
: base(itemid)
|
||||
{
|
||||
}
|
||||
|
||||
public Pier(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/PolarBearStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/PolarBearStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class PolarBearStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public PolarBearStatue()
|
||||
: base(0x20E1)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public PolarBearStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073193;
|
||||
}
|
||||
}// A Polar Bear Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/QuagmireStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/QuagmireStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class QuagmireStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public QuagmireStatue()
|
||||
: base(0x2614)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public QuagmireStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073195;
|
||||
}
|
||||
}// A Quagmire Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/ReptalonStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/ReptalonStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ReptalonStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ReptalonStatue()
|
||||
: base(0x2D95)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public ReptalonStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073192;
|
||||
}
|
||||
}// A Reptalon Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
1752
Scripts/Items/Artifacts/Decorative/SADecorationArtifacts.cs
Normal file
1752
Scripts/Items/Artifacts/Decorative/SADecorationArtifacts.cs
Normal file
File diff suppressed because it is too large
Load Diff
2109
Scripts/Items/Artifacts/Decorative/SEDecorationArtifacts.cs
Normal file
2109
Scripts/Items/Artifacts/Decorative/SEDecorationArtifacts.cs
Normal file
File diff suppressed because it is too large
Load Diff
41
Scripts/Items/Artifacts/Decorative/SantaStatue.cs
Normal file
41
Scripts/Items/Artifacts/Decorative/SantaStatue.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[FlipableAttribute(0x4A9A, 0x4A9B)]
|
||||
public class SantaStatue : MonsterStatuette
|
||||
{
|
||||
public override int LabelNumber { get { return 1097968; } } // santa statue
|
||||
|
||||
[Constructable]
|
||||
public SantaStatue()
|
||||
: base(MonsterStatuetteType.Santa)
|
||||
{
|
||||
Weight = 10.0;
|
||||
}
|
||||
|
||||
public SantaStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool ForceShowProperties
|
||||
{
|
||||
get
|
||||
{
|
||||
return ObjectPropertyList.Enabled;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
36
Scripts/Items/Artifacts/Decorative/SeahorseStatuette.cs
Normal file
36
Scripts/Items/Artifacts/Decorative/SeahorseStatuette.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class SeahorseStatuette : MonsterStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public SeahorseStatuette()
|
||||
: base(MonsterStatuetteType.Seahorse)
|
||||
{
|
||||
this.LootType = LootType.Regular;
|
||||
|
||||
this.Hue = Utility.RandomList(0, 0x482, 0x489, 0x495, 0x4F2);
|
||||
}
|
||||
|
||||
public SeahorseStatuette(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
41
Scripts/Items/Artifacts/Decorative/ShipModelOfTheHMSCape.cs
Normal file
41
Scripts/Items/Artifacts/Decorative/ShipModelOfTheHMSCape.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ShipModelOfTheHMSCape : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ShipModelOfTheHMSCape()
|
||||
: base(0x14F3)
|
||||
{
|
||||
this.Hue = 0x37B;
|
||||
}
|
||||
|
||||
public ShipModelOfTheHMSCape(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1063476;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
37
Scripts/Items/Artifacts/Decorative/ShipsBellOfBmvArarat.cs
Normal file
37
Scripts/Items/Artifacts/Decorative/ShipsBellOfBmvArarat.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ShipsBellOfBmvArarat : BaseDecorationArtifact
|
||||
{
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public ShipsBellOfBmvArarat()
|
||||
: base(0x4C5E)
|
||||
{
|
||||
this.Name = "Ship's Bell Of The Bmv Ararat";
|
||||
this.Weight = 10.0;
|
||||
this.Hue = 2968; //checked
|
||||
}
|
||||
|
||||
public ShipsBellOfBmvArarat(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
34
Scripts/Items/Artifacts/Decorative/SkullPole.cs
Normal file
34
Scripts/Items/Artifacts/Decorative/SkullPole.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class SkullPole : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public SkullPole()
|
||||
: base(0x2204)
|
||||
{
|
||||
this.Weight = 5;
|
||||
}
|
||||
|
||||
public SkullPole(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/SnakeStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/SnakeStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class SnakeStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public SnakeStatue()
|
||||
: base(0x25C2)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public SnakeStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073194;
|
||||
}
|
||||
}// A Snake Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
37
Scripts/Items/Artifacts/Decorative/SternAnchorOfBmvArarat.cs
Normal file
37
Scripts/Items/Artifacts/Decorative/SternAnchorOfBmvArarat.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class SternAnchorOfBmvArarat : BaseDecorationArtifact
|
||||
{
|
||||
public override int ArtifactRarity { get { return 8; } }
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public SternAnchorOfBmvArarat()
|
||||
: base(0x14F7)
|
||||
{
|
||||
this.Name = "Stern Anchor of the BMV Ararat";
|
||||
this.Weight = 10.0;
|
||||
this.Hue = 2959; // checked
|
||||
}
|
||||
|
||||
public SternAnchorOfBmvArarat(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
32
Scripts/Items/Artifacts/Decorative/SwampTile.cs
Normal file
32
Scripts/Items/Artifacts/Decorative/SwampTile.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class SwampTile : Item
|
||||
{
|
||||
[Constructable]
|
||||
public SwampTile()
|
||||
: base(0x320D)
|
||||
{
|
||||
}
|
||||
|
||||
public SwampTile(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
195
Scripts/Items/Artifacts/Decorative/TOLDecorationArtifacts.cs
Normal file
195
Scripts/Items/Artifacts/Decorative/TOLDecorationArtifacts.cs
Normal file
@@ -0,0 +1,195 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class StretchedDinosaurHide : BaseDecorationArtifact
|
||||
{
|
||||
public override int ArtifactRarity { get { return 11; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override bool DisplayWeight { get { return false; } }
|
||||
|
||||
[Constructable]
|
||||
public StretchedDinosaurHide() : base(4202)
|
||||
{
|
||||
Name = "Stretched Dinosaur Hide";
|
||||
Hue = 2523;
|
||||
}
|
||||
|
||||
public StretchedDinosaurHide(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class CarvedMyrmydexGlyph : BaseDecorationArtifact // Barrab
|
||||
{
|
||||
public override int ArtifactRarity { get { return 11; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override bool DisplayWeight { get { return false; } }
|
||||
|
||||
[Constructable]
|
||||
public CarvedMyrmydexGlyph() : base(4676)
|
||||
{
|
||||
Name = "Carved Myrmydex Glyph";
|
||||
Hue = 2952;
|
||||
}
|
||||
|
||||
public CarvedMyrmydexGlyph(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class WakuOnASpit : BaseDecorationArtifact // Barako
|
||||
{
|
||||
public override int ArtifactRarity { get { return 11; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override bool DisplayWeight { get { return false; } }
|
||||
|
||||
[Constructable]
|
||||
public WakuOnASpit() : base(7832)
|
||||
{
|
||||
Name = "Waku on a Spit";
|
||||
}
|
||||
|
||||
public WakuOnASpit(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class SacredLavaRock : BaseDecorationArtifact // Jukari
|
||||
{
|
||||
public override int ArtifactRarity { get { return 11; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override bool DisplayWeight { get { return false; } }
|
||||
|
||||
[Constructable]
|
||||
public SacredLavaRock() : base(4962)
|
||||
{
|
||||
Name = "Sacred Lava Rock";
|
||||
Hue = 1964;
|
||||
}
|
||||
|
||||
public SacredLavaRock(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class WhiteTigerFigurine : BaseDecorationArtifact // Kurak
|
||||
{
|
||||
public override int ArtifactRarity { get { return 11; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override bool DisplayWeight { get { return false; } }
|
||||
|
||||
[Constructable]
|
||||
public WhiteTigerFigurine() : base(38980)
|
||||
{
|
||||
Name = "Hand Carved White Tiger Figurine";
|
||||
Hue = 2500;
|
||||
}
|
||||
|
||||
public WhiteTigerFigurine(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class DragonTurtleHatchlingNet : BaseDecorationArtifact // Urali
|
||||
{
|
||||
public override int ArtifactRarity { get { return 11; } }
|
||||
public override bool ShowArtifactRarity { get { return false; } }
|
||||
public override bool DisplayWeight { get { return false; } }
|
||||
|
||||
[Constructable]
|
||||
public DragonTurtleHatchlingNet() : base(3574)
|
||||
{
|
||||
Name = "Dragon Turtle Hatchling Net";
|
||||
}
|
||||
|
||||
public DragonTurtleHatchlingNet(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class TatteredAncientMummyWrapping : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public TatteredAncientMummyWrapping()
|
||||
: base(0xE21)
|
||||
{
|
||||
this.Hue = 0x909;
|
||||
}
|
||||
|
||||
public TatteredAncientMummyWrapping(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1094912;
|
||||
}
|
||||
}// Tattered Ancient Mummy Wrapping [Replica]
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
193
Scripts/Items/Artifacts/Decorative/TenthAnniversarySculpture.cs
Normal file
193
Scripts/Items/Artifacts/Decorative/TenthAnniversarySculpture.cs
Normal file
@@ -0,0 +1,193 @@
|
||||
using System;
|
||||
using Server.Mobiles;
|
||||
using System.Collections.Generic;
|
||||
using Server.Accounting;
|
||||
using Server.Engines.VeteranRewards;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[Flipable( 0x3BB3, 0x3BB4 )]
|
||||
public class TenthAnniversarySculpture : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1079532; } } // 10th Anniversary Sculpture
|
||||
|
||||
private static Dictionary<Mobile, DateTime> m_LuckTable = new Dictionary<Mobile, DateTime>();
|
||||
private Dictionary<Mobile, DateTime> m_RewardCooldown;
|
||||
public Dictionary<Mobile, DateTime> RewardCooldown { get { return m_RewardCooldown; } }
|
||||
private static List<TenthAnniversarySculpture> m_sculptures = new List<TenthAnniversarySculpture>();
|
||||
|
||||
private static Timer m_Timer;
|
||||
|
||||
private static readonly int MaxLuckBonus = 1000;
|
||||
|
||||
[Constructable]
|
||||
public TenthAnniversarySculpture() : base( 15283 )
|
||||
{
|
||||
Weight = 1.0;
|
||||
m_RewardCooldown = new Dictionary<Mobile, DateTime>();
|
||||
AddSculpture(this);
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (!from.InRange(GetWorldLocation(), 2))
|
||||
{
|
||||
from.SendLocalizedMessage(500446); // That is too far away.
|
||||
return;
|
||||
}
|
||||
|
||||
DefragTables();
|
||||
|
||||
if (!IsCoolingDown(from))
|
||||
{
|
||||
m_LuckTable[from] = DateTime.UtcNow + TimeSpan.FromMinutes(60);
|
||||
from.SendLocalizedMessage(1079551); // Your luck just improved!
|
||||
m_RewardCooldown[from] = DateTime.UtcNow + TimeSpan.FromHours(24);
|
||||
|
||||
from.Delta(MobileDelta.Armor);
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsCoolingDown(Mobile from)
|
||||
{
|
||||
bool donemessage = false;
|
||||
|
||||
if (m_LuckTable.ContainsKey(from))
|
||||
{
|
||||
from.SendLocalizedMessage(1079534); // You're still feeling lucky from the last time you touched the sculpture.
|
||||
donemessage = true;
|
||||
}
|
||||
|
||||
foreach (TenthAnniversarySculpture sculpture in m_sculptures)
|
||||
{
|
||||
if (sculpture.RewardCooldown != null && sculpture.RewardCooldown.ContainsKey(from))
|
||||
{
|
||||
if (!donemessage)
|
||||
{
|
||||
TimeSpan left = sculpture.RewardCooldown[from] - DateTime.UtcNow;
|
||||
|
||||
if (left.TotalHours > 1)
|
||||
from.SendLocalizedMessage(1079550, ((int)left.TotalHours).ToString()); // You can improve your fortunes again in about ~1_TIME~ hours.
|
||||
else if (left.TotalMinutes > 1)
|
||||
from.SendLocalizedMessage(1079548, ((int)left.TotalMinutes).ToString()); // You can improve your fortunes in about ~1_TIME~ minutes.
|
||||
else
|
||||
from.SendLocalizedMessage(1079547); // Your fortunes are about to improve.
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static void DefragTables()
|
||||
{
|
||||
foreach (TenthAnniversarySculpture sculpture in m_sculptures)
|
||||
{
|
||||
List<Mobile> list = new List<Mobile>(sculpture.RewardCooldown.Keys);
|
||||
|
||||
foreach (Mobile m in list)
|
||||
{
|
||||
if (sculpture.RewardCooldown.ContainsKey(m) && sculpture.RewardCooldown[m] < DateTime.UtcNow)
|
||||
sculpture.RewardCooldown.Remove(m);
|
||||
}
|
||||
|
||||
list.Clear();
|
||||
}
|
||||
|
||||
List<Mobile> remove = new List<Mobile>();
|
||||
foreach (KeyValuePair<Mobile, DateTime> kvp in m_LuckTable)
|
||||
{
|
||||
if (kvp.Value < DateTime.UtcNow)
|
||||
remove.Add(kvp.Key);
|
||||
}
|
||||
|
||||
remove.ForEach(m =>
|
||||
{
|
||||
m_LuckTable.Remove(m);
|
||||
|
||||
if (m.NetState != null)
|
||||
m.SendLocalizedMessage(1079552); //Your luck just ran out.
|
||||
});
|
||||
|
||||
remove.Clear();
|
||||
}
|
||||
|
||||
public static int GetLuckBonus(Mobile from)
|
||||
{
|
||||
if (m_LuckTable.ContainsKey(from))
|
||||
{
|
||||
Account account = from.Account as Account;
|
||||
|
||||
if(account != null)
|
||||
{
|
||||
return (int)Math.Min(MaxLuckBonus, 200 + (RewardSystem.GetRewardLevel(account)) * 50);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public override void Delete()
|
||||
{
|
||||
base.Delete();
|
||||
|
||||
RemoveSculpture(this);
|
||||
|
||||
if (m_RewardCooldown != null)
|
||||
m_RewardCooldown.Clear();
|
||||
}
|
||||
|
||||
public static void AddSculpture(TenthAnniversarySculpture sculpture)
|
||||
{
|
||||
if (!m_sculptures.Contains(sculpture))
|
||||
{
|
||||
m_sculptures.Add(sculpture);
|
||||
StartTimer();
|
||||
}
|
||||
}
|
||||
|
||||
public static void RemoveSculpture(TenthAnniversarySculpture sculpture)
|
||||
{
|
||||
if (m_sculptures.Contains(sculpture))
|
||||
m_sculptures.Remove(sculpture);
|
||||
|
||||
if (m_sculptures.Count == 0 && m_Timer != null)
|
||||
{
|
||||
m_Timer.Stop();
|
||||
m_Timer = null;
|
||||
}
|
||||
}
|
||||
|
||||
public static void StartTimer()
|
||||
{
|
||||
if (m_Timer != null && m_Timer.Running)
|
||||
return;
|
||||
|
||||
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(1), TimeSpan.FromMinutes(1), new TimerCallback(DefragTables));
|
||||
m_Timer.Start();
|
||||
}
|
||||
|
||||
public TenthAnniversarySculpture(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();
|
||||
m_RewardCooldown = new Dictionary<Mobile, DateTime>();
|
||||
|
||||
AddSculpture(this);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class TragicRemainsOfTravesty : BaseStatuette
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
private static readonly int[] m_Sounds = new int[]
|
||||
{
|
||||
0x314, 0x315, 0x316, 0x317 // TODO check
|
||||
};
|
||||
[Constructable]
|
||||
public TragicRemainsOfTravesty()
|
||||
: base(Utility.Random(0x122A, 6))
|
||||
{
|
||||
this.Weight = 1.0;
|
||||
this.Hue = Utility.RandomList(0x11E, 0x846);
|
||||
}
|
||||
|
||||
public TragicRemainsOfTravesty(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1074500;
|
||||
}
|
||||
}// Tragic Remains of the Travesty
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
if (this.TurnedOn && this.IsLockedDown && (!m.Hidden || m.IsPlayer()) && Utility.InRange(m.Location, this.Location, 2) && !Utility.InRange(oldLocation, this.Location, 2))
|
||||
Effects.PlaySound(this.Location, this.Map, m_Sounds[Utility.Random(m_Sounds.Length)]);
|
||||
|
||||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
33
Scripts/Items/Artifacts/Decorative/WallBlood.cs
Normal file
33
Scripts/Items/Artifacts/Decorative/WallBlood.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class WallBlood : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public WallBlood()
|
||||
: base(Utility.RandomBool() ? 0x1D95 : 0x1D94)
|
||||
{
|
||||
}
|
||||
|
||||
public WallBlood(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
32
Scripts/Items/Artifacts/Decorative/WaterTile.cs
Normal file
32
Scripts/Items/Artifacts/Decorative/WaterTile.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class WaterTile : Item
|
||||
{
|
||||
[Constructable]
|
||||
public WaterTile()
|
||||
: base(0x346E)
|
||||
{
|
||||
}
|
||||
|
||||
public WaterTile(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
41
Scripts/Items/Artifacts/Decorative/Web.cs
Normal file
41
Scripts/Items/Artifacts/Decorative/Web.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class Web : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
private static readonly int[] m_itemids = new int[]
|
||||
{
|
||||
0x10d7, 0x10d8, 0x10dd
|
||||
};
|
||||
[Constructable]
|
||||
public Web()
|
||||
: base(m_itemids[Utility.Random(3)])
|
||||
{
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public Web(int itemid)
|
||||
: base(itemid)
|
||||
{
|
||||
}
|
||||
|
||||
public Web(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
40
Scripts/Items/Artifacts/Decorative/WindSpirit.cs
Normal file
40
Scripts/Items/Artifacts/Decorative/WindSpirit.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class WindSpirit : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public WindSpirit()
|
||||
: base(0x1F1F)
|
||||
{
|
||||
}
|
||||
|
||||
public WindSpirit(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1094925;
|
||||
}
|
||||
}// Wind Spirit [Replica]
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Scripts/Items/Artifacts/Decorative/WolfStatue.cs
Normal file
42
Scripts/Items/Artifacts/Decorative/WolfStatue.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class WolfStatue : Item
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public WolfStatue()
|
||||
: base(0x25D3)
|
||||
{
|
||||
this.LootType = LootType.Blessed;
|
||||
this.Weight = 1.0;
|
||||
}
|
||||
|
||||
public WolfStatue(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1073190;
|
||||
}
|
||||
}// A Wolf Contribution Statue from the Britannia Royal Zoo.
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
291
Scripts/Items/Artifacts/DespiseArtifacts.cs
Normal file
291
Scripts/Items/Artifacts/DespiseArtifacts.cs
Normal file
@@ -0,0 +1,291 @@
|
||||
using Server;
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CompassionsEye : GoldRing
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153288; } } // Compassion's Eye
|
||||
|
||||
[Constructable]
|
||||
public CompassionsEye()
|
||||
{
|
||||
Hue = 1174;
|
||||
|
||||
Attributes.BonusInt = 10;
|
||||
Attributes.BonusMana = 10;
|
||||
Attributes.RegenMana = 2;
|
||||
Attributes.Luck = 250;
|
||||
Attributes.SpellDamage = 20;
|
||||
Attributes.LowerRegCost = 20;
|
||||
}
|
||||
|
||||
public CompassionsEye(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class UnicornManeWovenSandals : Sandals
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153289; } } // Unicorn Mane Woven Sandals
|
||||
|
||||
[Constructable]
|
||||
public UnicornManeWovenSandals()
|
||||
{
|
||||
Hue = 1154;
|
||||
|
||||
switch(Utility.Random(6))
|
||||
{
|
||||
case 0: SAAbsorptionAttributes.EaterKinetic = 2; break;
|
||||
case 1: SAAbsorptionAttributes.EaterFire = 2; break;
|
||||
case 2: SAAbsorptionAttributes.EaterCold = 2; break;
|
||||
case 3: SAAbsorptionAttributes.EaterPoison = 2; break;
|
||||
case 4: SAAbsorptionAttributes.EaterEnergy = 2; break;
|
||||
case 5: SAAbsorptionAttributes.EaterDamage = 2; break;
|
||||
}
|
||||
|
||||
Attributes.NightSight = 1;
|
||||
}
|
||||
|
||||
public UnicornManeWovenSandals(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class UnicornManeWovenTalons : LeatherTalons
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153314; } } // Unicorn Mane Woven Talons
|
||||
|
||||
[Constructable]
|
||||
public UnicornManeWovenTalons()
|
||||
{
|
||||
Hue = 1154;
|
||||
|
||||
switch(Utility.Random(6))
|
||||
{
|
||||
case 0: SAAbsorptionAttributes.EaterKinetic = 2; break;
|
||||
case 1: SAAbsorptionAttributes.EaterFire = 2; break;
|
||||
case 2: SAAbsorptionAttributes.EaterCold = 2; break;
|
||||
case 3: SAAbsorptionAttributes.EaterPoison = 2; break;
|
||||
case 4: SAAbsorptionAttributes.EaterEnergy = 2; break;
|
||||
case 5: SAAbsorptionAttributes.EaterDamage = 2; break;
|
||||
}
|
||||
|
||||
Attributes.NightSight = 1;
|
||||
}
|
||||
|
||||
public UnicornManeWovenTalons(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class DespicableQuiver : BaseQuiver
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153290; } } // Despicable Quiver
|
||||
|
||||
[Constructable]
|
||||
public DespicableQuiver() : base(0x2B02)
|
||||
{
|
||||
Hue = 2671;
|
||||
|
||||
DamageIncrease = 10;
|
||||
WeightReduction = 30;
|
||||
Attributes.BonusDex = 5;
|
||||
SkillBonuses.SetValues( 0, SkillName.Archery, 5.0 );
|
||||
Attributes.ReflectPhysical = 5;
|
||||
Attributes.AttackChance = 5;
|
||||
LowerAmmoCost = 30;
|
||||
|
||||
switch(Utility.Random(5))
|
||||
{
|
||||
case 0: Resistances.Physical = 10; break;
|
||||
case 1: Resistances.Fire = 10; break;
|
||||
case 2: Resistances.Cold = 10; break;
|
||||
case 3: Resistances.Poison = 10; break;
|
||||
case 4: Resistances.Energy = 10; break;
|
||||
}
|
||||
}
|
||||
|
||||
public DespicableQuiver(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class UnforgivenVeil : GargishLeatherWingArmor
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153291; } } // Unforgiven Veil
|
||||
|
||||
public override int InitMinHits{ get{ return 255; } }
|
||||
public override int InitMaxHits{ get{ return 255; } }
|
||||
|
||||
public override int PhysicalResistance { get { return PhysicalBonus; } }
|
||||
public override int FireResistance { get { return FireBonus; } }
|
||||
public override int ColdResistance { get { return ColdBonus; } }
|
||||
public override int PoisonResistance { get { return PoisonBonus; } }
|
||||
public override int EnergyResistance { get { return EnergyBonus; } }
|
||||
|
||||
[Constructable]
|
||||
public UnforgivenVeil()
|
||||
{
|
||||
Hue = 2671;
|
||||
|
||||
Attributes.BonusDex = 5;
|
||||
SkillBonuses.SetValues( 0, SkillName.Throwing, 5.0 );
|
||||
Attributes.ReflectPhysical = 5;
|
||||
Attributes.AttackChance = 5;
|
||||
|
||||
switch(Utility.Random(5))
|
||||
{
|
||||
case 0: PhysicalBonus = 10; break;
|
||||
case 1: FireBonus = 10; break;
|
||||
case 2: ColdBonus = 10; break;
|
||||
case 3: PoisonBonus = 10; break;
|
||||
case 4: EnergyBonus = 10; break;
|
||||
}
|
||||
}
|
||||
|
||||
public UnforgivenVeil(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class HailstormHuman : WarFork
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153292; } } // Hailstorm
|
||||
|
||||
public override int InitMinHits{ get{ return 255; } }
|
||||
public override int InitMaxHits{ get{ return 255; } }
|
||||
|
||||
[Constructable]
|
||||
public HailstormHuman()
|
||||
{
|
||||
Hue = 2714;
|
||||
|
||||
WeaponAttributes.HitLightning = 15;
|
||||
WeaponAttributes.HitColdArea = 100;
|
||||
WeaponAttributes.HitLeechMana = 30;
|
||||
Attributes.AttackChance = 20;
|
||||
Attributes.WeaponSpeed = 25;
|
||||
Attributes.WeaponDamage = 50;
|
||||
AosElementDamages.Cold = 100;
|
||||
}
|
||||
|
||||
public HailstormHuman(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class HailstormGargoyle : GargishWarFork
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1153292; } } // Hailstorm
|
||||
|
||||
[Constructable]
|
||||
public HailstormGargoyle()
|
||||
{
|
||||
Hue = 2714;
|
||||
|
||||
WeaponAttributes.HitLightning = 15;
|
||||
WeaponAttributes.HitColdArea = 100;
|
||||
WeaponAttributes.HitLeechMana = 30;
|
||||
Attributes.AttackChance = 20;
|
||||
Attributes.WeaponSpeed = 25;
|
||||
Attributes.WeaponDamage = 50;
|
||||
AosElementDamages.Cold = 100;
|
||||
}
|
||||
|
||||
public HailstormGargoyle(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 v = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
75
Scripts/Items/Artifacts/Equipment/Armor/Aegis.cs
Normal file
75
Scripts/Items/Artifacts/Equipment/Armor/Aegis.cs
Normal file
@@ -0,0 +1,75 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class Aegis : HeaterShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public Aegis()
|
||||
{
|
||||
Hue = 0x47E;
|
||||
ArmorAttributes.SelfRepair = 5;
|
||||
Attributes.ReflectPhysical = 15;
|
||||
Attributes.DefendChance = 15;
|
||||
Attributes.LowerManaCost = 8;
|
||||
}
|
||||
|
||||
public Aegis(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1061602;
|
||||
}
|
||||
}// <20>gis
|
||||
public override int ArtifactRarity
|
||||
{
|
||||
get
|
||||
{
|
||||
return 11;
|
||||
}
|
||||
}
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 15;
|
||||
}
|
||||
}
|
||||
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)1);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (version < 1)
|
||||
this.PhysicalBonus = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
61
Scripts/Items/Artifacts/Equipment/Armor/AegisOfGrace.cs
Normal file
61
Scripts/Items/Artifacts/Equipment/Armor/AegisOfGrace.cs
Normal file
@@ -0,0 +1,61 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class AegisOfGrace : DragonHelm
|
||||
{
|
||||
public override int LabelNumber { get { return 1075047; } } // Aegis of Grace
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public AegisOfGrace()
|
||||
{
|
||||
SkillBonuses.SetValues(0, SkillName.MagicResist, 10.0);
|
||||
Attributes.DefendChance = 20;
|
||||
ArmorAttributes.SelfRepair = 2;
|
||||
|
||||
if (Utility.RandomBool())
|
||||
{
|
||||
ItemID = 0x2B6E;
|
||||
Weight = 2.0;
|
||||
StrRequirement = 10;
|
||||
|
||||
MeditationAllowance = ArmorMeditationAllowance.All;
|
||||
}
|
||||
}
|
||||
|
||||
public AegisOfGrace(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 10; } }
|
||||
public override int BaseFireResistance { get { return 9; } }
|
||||
public override int BaseColdResistance { get { return 7; } }
|
||||
public override int BasePoisonResistance { get { return 7; } }
|
||||
public override int BaseEnergyResistance { get { return 15; } }
|
||||
|
||||
public override ArmorMaterialType MaterialType { get { return ArmorMaterialType.Dragon; } }
|
||||
public override CraftResource DefaultResource { get { return CraftResource.Iron; } }
|
||||
|
||||
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 && ItemID == 0x2B6E)
|
||||
{
|
||||
MeditationAllowance = ArmorMeditationAllowance.All;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class AnimatedLegsoftheInsaneTinker : PlateLegs
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public AnimatedLegsoftheInsaneTinker()
|
||||
: base()
|
||||
{
|
||||
Hue = 2310;
|
||||
Attributes.BonusDex = 5;
|
||||
Attributes.RegenStam = 2;
|
||||
Attributes.WeaponDamage = 10;
|
||||
Attributes.WeaponSpeed = 10;
|
||||
ArmorAttributes.LowerStatReq = 50;
|
||||
}
|
||||
|
||||
public AnimatedLegsoftheInsaneTinker(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1113760;} }// Animated Legs of the Insane Tinker
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 17;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 15;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 7;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 15;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Items/Artifacts/Equipment/Armor/ArcaneShield.cs
Normal file
65
Scripts/Items/Artifacts/Equipment/Armor/ArcaneShield.cs
Normal file
@@ -0,0 +1,65 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ArcaneShield : WoodenKiteShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ArcaneShield()
|
||||
{
|
||||
Hue = 0x556;
|
||||
Attributes.NightSight = 1;
|
||||
Attributes.SpellChanneling = 1;
|
||||
Attributes.DefendChance = 15;
|
||||
Attributes.CastSpeed = 1;
|
||||
}
|
||||
|
||||
public ArcaneShield(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1061101;
|
||||
}
|
||||
}// Arcane Shield
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Items/Artifacts/Equipment/Armor/ArmorOfFortune.cs
Normal file
65
Scripts/Items/Artifacts/Equipment/Armor/ArmorOfFortune.cs
Normal file
@@ -0,0 +1,65 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ArmorOfFortune : StuddedChest
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ArmorOfFortune()
|
||||
{
|
||||
Hue = 0x501;
|
||||
Attributes.Luck = 200;
|
||||
Attributes.DefendChance = 15;
|
||||
Attributes.LowerRegCost = 40;
|
||||
ArmorAttributes.MageArmor = 1;
|
||||
}
|
||||
|
||||
public ArmorOfFortune(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1061098;
|
||||
}
|
||||
}// Armor of Fortune
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
77
Scripts/Items/Artifacts/Equipment/Armor/ArmsOfArmstrong.cs
Normal file
77
Scripts/Items/Artifacts/Equipment/Armor/ArmsOfArmstrong.cs
Normal file
@@ -0,0 +1,77 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class ArmsOfArmstrong : LeatherArms
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public ArmsOfArmstrong()
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Attributes.BonusStr = 3;
|
||||
Attributes.RegenHits = 1;
|
||||
}
|
||||
|
||||
public ArmsOfArmstrong(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1077675;
|
||||
}
|
||||
}// Arms of Armstrong
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BasiliskHideBreastplate : DragonChest
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public override int LabelNumber { get { return 1115444; } } // Basilisk Hide Breastplate
|
||||
|
||||
[Constructable]
|
||||
public BasiliskHideBreastplate()
|
||||
{
|
||||
Resource = CraftResource.None;
|
||||
Hue = 1366;
|
||||
AbsorptionAttributes.EaterDamage = 10;
|
||||
Attributes.BonusDex = 5;
|
||||
Attributes.RegenHits = 2;
|
||||
Attributes.RegenStam = 2;
|
||||
Attributes.RegenMana = 1;
|
||||
Attributes.DefendChance = 5;
|
||||
Attributes.LowerManaCost = 5;
|
||||
}
|
||||
|
||||
public BasiliskHideBreastplate(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 12;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 14;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
}
|
||||
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)1);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (version == 0)
|
||||
{
|
||||
Resource = CraftResource.None;
|
||||
this.Hue = 1366;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
86
Scripts/Items/Artifacts/Equipment/Armor/BouraTailShield.cs
Normal file
86
Scripts/Items/Artifacts/Equipment/Armor/BouraTailShield.cs
Normal file
@@ -0,0 +1,86 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BouraTailShield : WoodenKiteShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public BouraTailShield()
|
||||
{
|
||||
Hue = 554;
|
||||
Attributes.ReflectPhysical = 10;
|
||||
ArmorAttributes.ReactiveParalyze = 1;
|
||||
}
|
||||
|
||||
public BouraTailShield(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1112361;} }// boura tail shield
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
80
Scripts/Items/Artifacts/Equipment/Armor/BrambleCoat.cs
Normal file
80
Scripts/Items/Artifacts/Equipment/Armor/BrambleCoat.cs
Normal file
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BrambleCoat : WoodlandChest
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public BrambleCoat()
|
||||
{
|
||||
Hue = 0x1;
|
||||
ArmorAttributes.SelfRepair = 3;
|
||||
Attributes.BonusHits = 4;
|
||||
Attributes.Luck = 150;
|
||||
Attributes.ReflectPhysical = 25;
|
||||
Attributes.DefendChance = 15;
|
||||
}
|
||||
|
||||
public BrambleCoat(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1072925;
|
||||
}
|
||||
}// Bramble Coat
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 10;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 7;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 7;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
106
Scripts/Items/Artifacts/Equipment/Armor/BritchesOfWarding.cs
Normal file
106
Scripts/Items/Artifacts/Equipment/Armor/BritchesOfWarding.cs
Normal file
@@ -0,0 +1,106 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BritchesOfWarding : ChainLegs
|
||||
{
|
||||
public override int LabelNumber { get { return 1157345; } }// britches of warding
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public BritchesOfWarding()
|
||||
{
|
||||
switch (Utility.Random(6))
|
||||
{
|
||||
case 0: AbsorptionAttributes.EaterKinetic = 9; break;
|
||||
case 1: AbsorptionAttributes.EaterFire = 9; break;
|
||||
case 2: AbsorptionAttributes.EaterCold = 9; break;
|
||||
case 3: AbsorptionAttributes.EaterPoison = 9; break;
|
||||
case 4: AbsorptionAttributes.EaterEnergy = 9; break;
|
||||
case 5: AbsorptionAttributes.EaterDamage = 9; break;
|
||||
}
|
||||
|
||||
Attributes.BonusStam = 12;
|
||||
Attributes.AttackChance = 10;
|
||||
Attributes.LowerManaCost = 8;
|
||||
}
|
||||
|
||||
public BritchesOfWarding(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 20; } }
|
||||
public override int BaseFireResistance { get { return 20; } }
|
||||
public override int BaseColdResistance { get { return 20; } }
|
||||
public override int BasePoisonResistance { get { return 20; } }
|
||||
public override int BaseEnergyResistance { get { return 20; } }
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
public class GargishBritchesOfWarding : GargishPlateLegs
|
||||
{
|
||||
public override int LabelNumber { get { return 1157345; } }// britches of warding
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public GargishBritchesOfWarding()
|
||||
{
|
||||
switch (Utility.Random(6))
|
||||
{
|
||||
case 0: AbsorptionAttributes.EaterKinetic = 9; break;
|
||||
case 1: AbsorptionAttributes.EaterFire = 9; break;
|
||||
case 2: AbsorptionAttributes.EaterCold = 9; break;
|
||||
case 3: AbsorptionAttributes.EaterPoison = 9; break;
|
||||
case 4: AbsorptionAttributes.EaterEnergy = 9; break;
|
||||
case 5: AbsorptionAttributes.EaterDamage = 9; break;
|
||||
}
|
||||
|
||||
Attributes.BonusStam = 12;
|
||||
Attributes.AttackChance = 10;
|
||||
Attributes.LowerManaCost = 8;
|
||||
}
|
||||
|
||||
public GargishBritchesOfWarding(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 20; } }
|
||||
public override int BaseFireResistance { get { return 20; } }
|
||||
public override int BaseColdResistance { get { return 20; } }
|
||||
public override int BasePoisonResistance { get { return 20; } }
|
||||
public override int BaseEnergyResistance { get { return 20; } }
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BronzedArmorValkyrie : FemaleLeatherChest
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public BronzedArmorValkyrie()
|
||||
{
|
||||
Attributes.BonusHits = 5;
|
||||
Attributes.BonusStr = 5;
|
||||
Attributes.BonusDex = 5;
|
||||
Attributes.BonusStam = 5;
|
||||
Attributes.RegenStam = 3;
|
||||
Attributes.LowerManaCost = 10;
|
||||
Hue = 1863; // Hue not exact
|
||||
}
|
||||
|
||||
public BronzedArmorValkyrie(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1149957;} }// Bronzed Armor of the Valkyrie
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 11;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 14;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 11;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
77
Scripts/Items/Artifacts/Equipment/Armor/BulwarkLeggings.cs
Normal file
77
Scripts/Items/Artifacts/Equipment/Armor/BulwarkLeggings.cs
Normal file
@@ -0,0 +1,77 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BulwarkLeggings : RingmailLegs
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public BulwarkLeggings()
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Attributes.RegenStam = 1;
|
||||
Attributes.RegenMana = 1;
|
||||
}
|
||||
|
||||
public BulwarkLeggings(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1077727;
|
||||
}
|
||||
}// Bulwark Leggings
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 9;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
82
Scripts/Items/Artifacts/Equipment/Armor/CandlewoodTorch.cs
Normal file
82
Scripts/Items/Artifacts/Equipment/Armor/CandlewoodTorch.cs
Normal file
@@ -0,0 +1,82 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CandlewoodTorch : BaseShield
|
||||
{
|
||||
public override int LabelNumber { get { return 1094957; } } //Candlewood Torch
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
public bool Burning { get { return ItemID == 0xA12; } }
|
||||
|
||||
[Constructable]
|
||||
public CandlewoodTorch()
|
||||
: base(0xF6B)
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Weight = 1.0;
|
||||
Attributes.SpellChanneling = 1;
|
||||
Attributes.CastSpeed = -1;
|
||||
}
|
||||
|
||||
public CandlewoodTorch(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (!IsChildOf(from.Backpack))
|
||||
{
|
||||
from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it.
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ItemID == 0xF6B)
|
||||
{
|
||||
ItemID = 0xA12;
|
||||
}
|
||||
else if (ItemID == 0xA12)
|
||||
{
|
||||
ItemID = 0xF6B;
|
||||
}
|
||||
}
|
||||
|
||||
var parent = Parent as Mobile;
|
||||
|
||||
if (parent == from && Burning)
|
||||
{
|
||||
Mobiles.MeerMage.StopEffect((Mobile)parent, true);
|
||||
SwarmContext.CheckRemove((Mobile)parent);
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnAdded(object parent)
|
||||
{
|
||||
base.OnAdded(parent);
|
||||
|
||||
if (parent is Mobile && Burning)
|
||||
{
|
||||
Mobiles.MeerMage.StopEffect((Mobile)parent, true);
|
||||
SwarmContext.CheckRemove((Mobile)parent);
|
||||
}
|
||||
}
|
||||
|
||||
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 < 1)
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Weight = 1.0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
87
Scripts/Items/Artifacts/Equipment/Armor/CastOffZombieSkin.cs
Normal file
87
Scripts/Items/Artifacts/Equipment/Armor/CastOffZombieSkin.cs
Normal file
@@ -0,0 +1,87 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CastOffZombieSkin : GargishLeatherArms
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public CastOffZombieSkin()
|
||||
{
|
||||
Hue = 1893;
|
||||
SkillBonuses.SetValues(0, SkillName.Necromancy, 5.0);
|
||||
SkillBonuses.SetValues(1, SkillName.SpiritSpeak, 5.0);
|
||||
Attributes.LowerManaCost = 5;
|
||||
Attributes.LowerRegCost = 8;
|
||||
Attributes.IncreasedKarmaLoss = 5;
|
||||
}
|
||||
|
||||
public CastOffZombieSkin(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1113538;} }// Cast-off Zombie Skin
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 13;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return -2;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 17;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 18;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CrownOfArcaneTemperament : Circlet
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
public override Race RequiredRace { get { return null; } }
|
||||
public override int LabelNumber { get { return 1113762; } } // Crown of Arcane Temperament
|
||||
|
||||
[Constructable]
|
||||
public CrownOfArcaneTemperament()
|
||||
{
|
||||
Attributes.BonusMana = 8;
|
||||
Attributes.RegenMana = 3;
|
||||
Attributes.SpellDamage = 8;
|
||||
Attributes.LowerManaCost = 6;
|
||||
Hue = 2012;
|
||||
AbsorptionAttributes.CastingFocus = 2;
|
||||
}
|
||||
|
||||
public CrownOfArcaneTemperament(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
public override int BasePhysicalResistance { get { return 10; } }
|
||||
public override int BaseFireResistance { get { return 14; } }
|
||||
public override int BaseColdResistance { get { return 4; } }
|
||||
public override int BasePoisonResistance { get { return 12; } }
|
||||
public override int BaseEnergyResistance { get { return 7; } }
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class CuffsOfTheArchmage : BoneArms
|
||||
{
|
||||
public override int LabelNumber { get { return 1157348; } } // cuffs of the archmage
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public CuffsOfTheArchmage()
|
||||
{
|
||||
SkillBonuses.SetValues(0, SkillName.MagicResist, 15.0);
|
||||
Attributes.BonusMana = 5;
|
||||
Attributes.RegenMana = 4;
|
||||
Attributes.SpellDamage = 20;
|
||||
ArmorAttributes.MageArmor = 1;
|
||||
}
|
||||
|
||||
public CuffsOfTheArchmage(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 15; } }
|
||||
public override int BaseFireResistance { get { return 15; } }
|
||||
public override int BaseColdResistance { get { return 15; } }
|
||||
public override int BasePoisonResistance { get { return 15; } }
|
||||
public override int BaseEnergyResistance { get { return 15; } }
|
||||
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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
public class GargishCuffsOfTheArchmage : GargishStoneArms
|
||||
{
|
||||
public override int LabelNumber { get { return 1157348; } } // cuffs of the archmage
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public GargishCuffsOfTheArchmage()
|
||||
{
|
||||
SkillBonuses.SetValues(0, SkillName.MagicResist, 15.0);
|
||||
Attributes.BonusMana = 5;
|
||||
Attributes.RegenMana = 4;
|
||||
Attributes.SpellDamage = 20;
|
||||
ArmorAttributes.MageArmor = 1;
|
||||
}
|
||||
|
||||
public GargishCuffsOfTheArchmage(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 15; } }
|
||||
public override int BaseFireResistance { get { return 15; } }
|
||||
public override int BaseColdResistance { get { return 15; } }
|
||||
public override int BasePoisonResistance { get { return 15; } }
|
||||
public override int BaseEnergyResistance { get { return 15; } }
|
||||
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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
126
Scripts/Items/Artifacts/Equipment/Armor/DefenderOfTheMagus.cs
Normal file
126
Scripts/Items/Artifacts/Equipment/Armor/DefenderOfTheMagus.cs
Normal file
@@ -0,0 +1,126 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class DefenderOfTheMagus : MetalShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public DefenderOfTheMagus()
|
||||
{
|
||||
Hue = 590;
|
||||
Attributes.SpellChanneling = 1;
|
||||
Attributes.DefendChance = 10;
|
||||
Attributes.CastRecovery = 1;
|
||||
//Random Resonance:
|
||||
switch (Utility.Random(5))
|
||||
{
|
||||
case 0:
|
||||
AbsorptionAttributes.ResonanceCold = 10;
|
||||
break;
|
||||
case 1:
|
||||
AbsorptionAttributes.ResonanceFire = 10;
|
||||
break;
|
||||
case 2:
|
||||
AbsorptionAttributes.ResonanceKinetic = 10;
|
||||
break;
|
||||
case 3:
|
||||
AbsorptionAttributes.ResonancePoison = 10;
|
||||
break;
|
||||
case 4:
|
||||
AbsorptionAttributes.ResonanceEnergy = 10;
|
||||
break;
|
||||
}
|
||||
//Random Resist:
|
||||
switch (Utility.Random(5))
|
||||
{
|
||||
case 0:
|
||||
ColdBonus = 10;
|
||||
break;
|
||||
case 1:
|
||||
FireBonus = 10;
|
||||
break;
|
||||
case 2:
|
||||
PhysicalBonus = 10;
|
||||
break;
|
||||
case 3:
|
||||
PoisonBonus = 10;
|
||||
break;
|
||||
case 4:
|
||||
EnergyBonus = 10;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public DefenderOfTheMagus(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1113851;} }// Defender of the Magus
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
87
Scripts/Items/Artifacts/Equipment/Armor/DragonHideShield.cs
Normal file
87
Scripts/Items/Artifacts/Equipment/Armor/DragonHideShield.cs
Normal file
@@ -0,0 +1,87 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class DragonHideShield : GargishKiteShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public DragonHideShield()
|
||||
: base()
|
||||
{
|
||||
Hue = 44;
|
||||
AbsorptionAttributes.EaterFire = 20;
|
||||
Attributes.RegenHits = 2;
|
||||
Attributes.DefendChance = 10;
|
||||
}
|
||||
|
||||
public DragonHideShield(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1113532;} }// Dragon Hide Shield
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 15;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return -4;
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
108
Scripts/Items/Artifacts/Equipment/Armor/DupresShield.cs
Normal file
108
Scripts/Items/Artifacts/Equipment/Armor/DupresShield.cs
Normal file
@@ -0,0 +1,108 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class DupresShield : BaseShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public DupresShield()
|
||||
: base(0x2B01)
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Weight = 6.0;
|
||||
Attributes.BonusHits = 5;
|
||||
Attributes.RegenHits = 1;
|
||||
SkillBonuses.SetValues(0, SkillName.Parry, 5);
|
||||
}
|
||||
|
||||
public DupresShield(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075196;
|
||||
}
|
||||
}// Dupre<72>s Shield
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
public override int InitMinHits
|
||||
{
|
||||
get
|
||||
{
|
||||
return 255;
|
||||
}
|
||||
}
|
||||
public override int InitMaxHits
|
||||
{
|
||||
get
|
||||
{
|
||||
return 255;
|
||||
}
|
||||
}
|
||||
public override int AosStrReq
|
||||
{
|
||||
get
|
||||
{
|
||||
return 50;
|
||||
}
|
||||
}
|
||||
public override int ArmorBase
|
||||
{
|
||||
get
|
||||
{
|
||||
return 15;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class EscutcheonDeAriadne : MetalKiteShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public EscutcheonDeAriadne()
|
||||
{
|
||||
LootType = LootType.Blessed;
|
||||
Hue = 0x8A5;
|
||||
ArmorAttributes.DurabilityBonus = 49;
|
||||
Attributes.ReflectPhysical = 5;
|
||||
Attributes.DefendChance = 5;
|
||||
}
|
||||
|
||||
public EscutcheonDeAriadne(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1077694;
|
||||
}
|
||||
}// Escutcheon de Ariadne
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
public override int AosStrReq
|
||||
{
|
||||
get
|
||||
{
|
||||
return 14;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
114
Scripts/Items/Artifacts/Equipment/Armor/FeyLeggings.cs
Normal file
114
Scripts/Items/Artifacts/Equipment/Armor/FeyLeggings.cs
Normal file
@@ -0,0 +1,114 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class FeyLeggings : ChainLegs, ICanBeElfOrHuman
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
private bool _ElfOnly;
|
||||
public override Race RequiredRace { get { return _ElfOnly ? Race.Elf : null; } }
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public bool ElfOnly { get { return _ElfOnly; } set { _ElfOnly = value; InvalidateProperties(); } }
|
||||
|
||||
[Constructable]
|
||||
public FeyLeggings()
|
||||
{
|
||||
Attributes.BonusHits = 6;
|
||||
Attributes.DefendChance = 20;
|
||||
|
||||
_ElfOnly = true;
|
||||
|
||||
ArmorAttributes.MageArmor = 1;
|
||||
}
|
||||
|
||||
public FeyLeggings(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1075041;
|
||||
}
|
||||
}// Fey Leggings
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 12;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 7;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 19;
|
||||
}
|
||||
}
|
||||
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
|
||||
|
||||
writer.Write(_ElfOnly);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
switch (version)
|
||||
{
|
||||
case 1:
|
||||
_ElfOnly = reader.ReadBool();
|
||||
break;
|
||||
case 0:
|
||||
_ElfOnly = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GargishSignOfChaos : GargishChaosShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GargishSignOfChaos()
|
||||
: base()
|
||||
{
|
||||
Hue = 2075;
|
||||
ArmorAttributes.SoulCharge = 20;
|
||||
Attributes.AttackChance = 5;
|
||||
Attributes.DefendChance = 10;
|
||||
Attributes.CastSpeed = 1;
|
||||
}
|
||||
|
||||
public GargishSignOfChaos(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1113535;} }// Sign of Chaos
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GargishSignOfOrder : GargishOrderShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GargishSignOfOrder()
|
||||
: base()
|
||||
{
|
||||
SkillBonuses.SetValues(0, SkillName.Chivalry, 10.0);
|
||||
Attributes.AttackChance = 5;
|
||||
Attributes.DefendChance = 10;
|
||||
Attributes.CastSpeed = 1;
|
||||
Attributes.CastRecovery = 1;
|
||||
}
|
||||
|
||||
public GargishSignOfOrder(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber { get{return 1113534;} }// Sign of Order
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
111
Scripts/Items/Artifacts/Equipment/Armor/GargishWoodenShield.cs
Normal file
111
Scripts/Items/Artifacts/Equipment/Armor/GargishWoodenShield.cs
Normal file
@@ -0,0 +1,111 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
// Based off a WoodenShield
|
||||
[FlipableAttribute(0x4200, 0x4207)]
|
||||
public class GargishWoodenShield : BaseShield
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GargishWoodenShield()
|
||||
: base(0x4200)
|
||||
{
|
||||
//Weight = 5.0;
|
||||
}
|
||||
|
||||
public GargishWoodenShield(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
public override int InitMinHits
|
||||
{
|
||||
get
|
||||
{
|
||||
return 20;
|
||||
}
|
||||
}
|
||||
public override int InitMaxHits
|
||||
{
|
||||
get
|
||||
{
|
||||
return 25;
|
||||
}
|
||||
}
|
||||
public override int AosStrReq
|
||||
{
|
||||
get
|
||||
{
|
||||
return 20;
|
||||
}
|
||||
}
|
||||
public override int ArmorBase
|
||||
{
|
||||
get
|
||||
{
|
||||
return 8;
|
||||
}
|
||||
}
|
||||
public override bool CanBeWornByGargoyles
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
public override Race RequiredRace
|
||||
{
|
||||
get
|
||||
{
|
||||
return Race.Gargoyle;
|
||||
}
|
||||
}
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
99
Scripts/Items/Artifacts/Equipment/Armor/GauntletsOfAnger.cs
Normal file
99
Scripts/Items/Artifacts/Equipment/Armor/GauntletsOfAnger.cs
Normal file
@@ -0,0 +1,99 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GauntletsOfAnger : PlateGloves
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GauntletsOfAnger()
|
||||
{
|
||||
Hue = 0x29b;
|
||||
Attributes.BonusHits = 8;
|
||||
Attributes.RegenHits = 2;
|
||||
Attributes.DefendChance = 10;
|
||||
}
|
||||
|
||||
public GauntletsOfAnger(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1094902;
|
||||
}
|
||||
}// Gauntlets of Anger [Replica]
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GauntletsOfNobility : RingmailGloves
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GauntletsOfNobility()
|
||||
{
|
||||
Hue = 0x4FE;
|
||||
Attributes.BonusStr = 8;
|
||||
Attributes.Luck = 100;
|
||||
Attributes.WeaponDamage = 20;
|
||||
}
|
||||
|
||||
public GauntletsOfNobility(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1061092;
|
||||
}
|
||||
}// Gauntlets of Nobility
|
||||
public override int ArtifactRarity
|
||||
{
|
||||
get
|
||||
{
|
||||
return 11;
|
||||
}
|
||||
}
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 18;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 20;
|
||||
}
|
||||
}
|
||||
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)1);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (version < 1)
|
||||
{
|
||||
if (this.Hue == 0x562)
|
||||
this.Hue = 0x4FE;
|
||||
|
||||
this.PhysicalBonus = 0;
|
||||
this.PoisonBonus = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
99
Scripts/Items/Artifacts/Equipment/Armor/GladiatorsCollar.cs
Normal file
99
Scripts/Items/Artifacts/Equipment/Armor/GladiatorsCollar.cs
Normal file
@@ -0,0 +1,99 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GladiatorsCollar : PlateGorget
|
||||
{
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
[Constructable]
|
||||
public GladiatorsCollar()
|
||||
{
|
||||
Hue = 0x26d;
|
||||
Attributes.BonusHits = 10;
|
||||
Attributes.AttackChance = 10;
|
||||
ArmorAttributes.MageArmor = 1;
|
||||
}
|
||||
|
||||
public GladiatorsCollar(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return 1094917;
|
||||
}
|
||||
}// Gladiator's Collar [Replica]
|
||||
public override int BasePhysicalResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 18;
|
||||
}
|
||||
}
|
||||
public override int BaseFireResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 18;
|
||||
}
|
||||
}
|
||||
public override int BaseColdResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 17;
|
||||
}
|
||||
}
|
||||
public override int BasePoisonResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 18;
|
||||
}
|
||||
}
|
||||
public override int BaseEnergyResistance
|
||||
{
|
||||
get
|
||||
{
|
||||
return 16;
|
||||
}
|
||||
}
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
106
Scripts/Items/Artifacts/Equipment/Armor/GlovesOfFeudalGrip.cs
Normal file
106
Scripts/Items/Artifacts/Equipment/Armor/GlovesOfFeudalGrip.cs
Normal file
@@ -0,0 +1,106 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class GlovesOfFeudalGrip : DragonGloves
|
||||
{
|
||||
public override int LabelNumber { get { return 1157349; } } // gloves of feudal grip
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public GlovesOfFeudalGrip()
|
||||
{
|
||||
Resource = CraftResource.None;
|
||||
|
||||
Attributes.BonusStr = 8;
|
||||
Attributes.BonusStam = 8;
|
||||
Attributes.RegenHits = 3;
|
||||
Attributes.RegenMana = 3;
|
||||
Attributes.WeaponDamage = 30;
|
||||
}
|
||||
|
||||
public GlovesOfFeudalGrip(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 15; } }
|
||||
public override int BaseFireResistance { get { return 15; } }
|
||||
public override int BaseColdResistance { get { return 15; } }
|
||||
public override int BasePoisonResistance { get { return 15; } }
|
||||
public override int BaseEnergyResistance { get { return 15; } }
|
||||
public override int InitMinHits { get { return 255; } }
|
||||
public override int InitMaxHits { get { return 255; } }
|
||||
public override CraftResource DefaultResource { get { return CraftResource.None; } }
|
||||
|
||||
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)
|
||||
{
|
||||
Resource = CraftResource.None;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class GargishKiltOfFeudalVise : GargishPlateKilt
|
||||
{
|
||||
public override int LabelNumber { get { return 1157367; } } // Kilt of Feudal Vise
|
||||
public override bool IsArtifact { get { return true; } }
|
||||
|
||||
[Constructable]
|
||||
public GargishKiltOfFeudalVise()
|
||||
{
|
||||
Resource = CraftResource.None;
|
||||
|
||||
Attributes.BonusStr = 8;
|
||||
Attributes.BonusStam = 8;
|
||||
Attributes.RegenHits = 3;
|
||||
Attributes.RegenMana = 3;
|
||||
Attributes.WeaponDamage = 30;
|
||||
}
|
||||
|
||||
public GargishKiltOfFeudalVise(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int BasePhysicalResistance { get { return 15; } }
|
||||
public override int BaseFireResistance { get { return 15; } }
|
||||
public override int BaseColdResistance { get { return 15; } }
|
||||
public override int BasePoisonResistance { get { return 15; } }
|
||||
public override int BaseEnergyResistance { get { return 15; } }
|
||||
public override int InitMinHits { get { return 255; } }
|
||||
public override int InitMaxHits { get { return 255; } }
|
||||
public override CraftResource DefaultResource { get { return CraftResource.None; } }
|
||||
|
||||
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)
|
||||
{
|
||||
Resource = CraftResource.None;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user