From 9ff6bfbc79e8a2543e81e9a2ba33543c6c1d4c63 Mon Sep 17 00:00:00 2001 From: xavier Date: Sun, 11 Sep 2011 01:10:58 +0000 Subject: [PATCH] Cool shades, cheap sunglasses --- .../BasePigmentsOfTokuno.cs | 18 +++ .../Armor/Glasses/AnthropomorphistGlasses.cs | 43 ++++++ Scripts/Items/Armor/Glasses/ArtsGlasses.cs | 42 +++++ Scripts/Items/Armor/Glasses/ElvenGlasses.cs | 146 ++++++++++++++++++ .../Items/Armor/Glasses/FoldedSteelGlasses.cs | 42 +++++ .../Items/Armor/Glasses/LightOfWayGlasses.cs | 42 +++++ Scripts/Items/Armor/Glasses/LyricalGlasses.cs | 44 ++++++ .../Items/Armor/Glasses/MaceShieldGlasses.cs | 44 ++++++ .../Items/Armor/Glasses/MaritimeGlasses.cs | 42 +++++ .../Items/Armor/Glasses/NecromanticGlasses.cs | 41 +++++ .../Items/Armor/Glasses/PoisonedGlasses.cs | 41 +++++ Scripts/Items/Armor/Glasses/TradeGlasses.cs | 41 +++++ .../Armor/Glasses/TreasureTrinketGlasses.cs | 42 +++++ Scripts/Items/Armor/Glasses/WizardsGlasses.cs | 42 +++++ 14 files changed, 670 insertions(+) create mode 100644 Scripts/Items/Armor/Glasses/AnthropomorphistGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/ArtsGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/ElvenGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/FoldedSteelGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/LightOfWayGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/LyricalGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/MaceShieldGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/MaritimeGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/NecromanticGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/PoisonedGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/TradeGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/TreasureTrinketGlasses.cs create mode 100644 Scripts/Items/Armor/Glasses/WizardsGlasses.cs diff --git a/Scripts/Engines/Treasures of Tokuno/BasePigmentsOfTokuno.cs b/Scripts/Engines/Treasures of Tokuno/BasePigmentsOfTokuno.cs index f1125da16..90fa09c9b 100644 --- a/Scripts/Engines/Treasures of Tokuno/BasePigmentsOfTokuno.cs +++ b/Scripts/Engines/Treasures of Tokuno/BasePigmentsOfTokuno.cs @@ -7,6 +7,23 @@ namespace Server.Items { public abstract class BasePigmentsOfTokuno : Item, IUsesRemaining { + + private static Type[] m_Glasses = new Type[] + { + typeof( MaritimeGlasses ), + typeof( WizardsGlasses ), + typeof( TradeGlasses ), + typeof( LyricalGlasses ), + typeof( NecromanticGlasses ), + typeof( LightOfWayGlasses ), + typeof( FoldedSteelGlasses ), + typeof( PoisonedGlasses ), + typeof( TreasureTrinketGlasses ), + typeof( MaceShieldGlasses ), + typeof( ArtsGlasses ), + typeof( AnthropomorphistGlasses ) + }; + private static Type[] m_Replicas = new Type[] { typeof( ANecromancerShroud ), @@ -172,6 +189,7 @@ namespace Server.Items || IsInTypeList( t, TreasureMapChest.Artifacts ) || IsInTypeList( t, m_Replicas ) || IsInTypeList( t, m_DyableHeritageItems ) + || IsInTypeList( t, m_Glasses ) ); } diff --git a/Scripts/Items/Armor/Glasses/AnthropomorphistGlasses.cs b/Scripts/Items/Armor/Glasses/AnthropomorphistGlasses.cs new file mode 100644 index 000000000..437c6e628 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/AnthropomorphistGlasses.cs @@ -0,0 +1,43 @@ +using System; +using Server; + +namespace Server.Items +{ + public class AnthropomorphistGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073379; } } //Anthropomorphist Reading Glasses + + public override int BasePhysicalResistance{ get{ return 5; } } + public override int BaseFireResistance{ get{ return 5; } } + public override int BaseColdResistance{ get{ return 10; } } + 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; } } + + + [Constructable] + public AnthropomorphistGlasses() + { + Attributes.BonusHits = 5; + Attributes.RegenMana = 3; + Attributes.ReflectPhysical = 20; + } + public AnthropomorphistGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/ArtsGlasses.cs b/Scripts/Items/Armor/Glasses/ArtsGlasses.cs new file mode 100644 index 000000000..cd06e6956 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/ArtsGlasses.cs @@ -0,0 +1,42 @@ +using System; +using Server; + +namespace Server.Items +{ + public class ArtsGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073363; } } //Reading Glasses of the Arts + + public override int BasePhysicalResistance{ get{ return 10; } } + public override int BaseFireResistance{ get{ return 8; } } + public override int BaseColdResistance{ get{ return 8; } } + public override int BasePoisonResistance{ get{ return 4; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public ArtsGlasses() + { + Attributes.BonusStr = 5; + Attributes.BonusInt = 5; + Attributes.BonusHits = 15; + } + public ArtsGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/ElvenGlasses.cs b/Scripts/Items/Armor/Glasses/ElvenGlasses.cs new file mode 100644 index 000000000..25a65db2d --- /dev/null +++ b/Scripts/Items/Armor/Glasses/ElvenGlasses.cs @@ -0,0 +1,146 @@ +using System; +using Server; + +namespace Server.Items +{ + public class ElvenGlasses : BaseArmor + { + public override int LabelNumber{ get{ return 1032216; } } //elven glasses + + public override int BasePhysicalResistance{ get{ return 2; } } + public override int BaseFireResistance{ get{ return 4; } } + public override int BaseColdResistance{ get{ return 4; } } + public override int BasePoisonResistance{ get{ return 3; } } + public override int BaseEnergyResistance{ get{ return 2; } } + + public override int InitMinHits{ get{ return 36; } } + public override int InitMaxHits{ get{ return 48; } } + + public override int AosStrReq{ get{ return 45; } } + public override int OldStrReq{ get{ return 40; } } + + public override int ArmorBase{ get{ return 30; } } + + public override ArmorMaterialType MaterialType{ get{ return ArmorMaterialType.Leather; } } + public override CraftResource DefaultResource{ get{ return CraftResource.RegularLeather; } } + public override ArmorMeditationAllowance DefMedAllowance{ get{ return ArmorMeditationAllowance.All; } } + + private AosWeaponAttributes m_AosWeaponAttributes; + + [CommandProperty( AccessLevel.GameMaster )] + public AosWeaponAttributes WeaponAttributes + { + get{ return m_AosWeaponAttributes; } + } + + [Constructable] + public ElvenGlasses() : base( 0x2FB8 ) + { + Weight = 2; + m_AosWeaponAttributes = new AosWeaponAttributes( this ); + } + + public ElvenGlasses( Serial serial ) : base( serial ) + { + } + + public override void AppendChildNameProperties( ObjectPropertyList list ) + { + base.AppendChildNameProperties( list ); + + int prop; + + if ( (prop = m_AosWeaponAttributes.HitColdArea) != 0 ) + list.Add( 1060416, prop.ToString() ); // hit cold area ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitDispel) != 0 ) + list.Add( 1060417, prop.ToString() ); // hit dispel ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitEnergyArea) != 0 ) + list.Add( 1060418, prop.ToString() ); // hit energy area ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitFireArea) != 0 ) + list.Add( 1060419, prop.ToString() ); // hit fire area ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitFireball) != 0 ) + list.Add( 1060420, prop.ToString() ); // hit fireball ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitHarm) != 0 ) + list.Add( 1060421, prop.ToString() ); // hit harm ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitLeechHits) != 0 ) + list.Add( 1060422, prop.ToString() ); // hit life leech ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitLightning) != 0 ) + list.Add( 1060423, prop.ToString() ); // hit lightning ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitLowerAttack) != 0 ) + list.Add( 1060424, prop.ToString() ); // hit lower attack ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitLowerDefend) != 0 ) + list.Add( 1060425, prop.ToString() ); // hit lower defense ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitMagicArrow) != 0 ) + list.Add( 1060426, prop.ToString() ); // hit magic arrow ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitLeechMana) != 0 ) + list.Add( 1060427, prop.ToString() ); // hit mana leech ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitPhysicalArea) != 0 ) + list.Add( 1060428, prop.ToString() ); // hit physical area ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitPoisonArea) != 0 ) + list.Add( 1060429, prop.ToString() ); // hit poison area ~1_val~% + + if ( (prop = m_AosWeaponAttributes.HitLeechStam) != 0 ) + list.Add( 1060430, prop.ToString() ); // hit stamina leech ~1_val~% + } + + private static void SetSaveFlag( ref SaveFlag flags, SaveFlag toSet, bool setIf ) + { + if ( setIf ) + flags |= toSet; + } + + private static bool GetSaveFlag( SaveFlag flags, SaveFlag toGet ) + { + return ( (flags & toGet) != 0 ); + } + + private enum SaveFlag + { + None = 0x00000000, + WeaponAttributes = 0x00000001, + } + + public override void Serialize( GenericWriter writer ) + { + base.Serialize( writer ); + + writer.Write( (int) 0 ); // version + + SaveFlag flags = SaveFlag.None; + + SetSaveFlag( ref flags, SaveFlag.WeaponAttributes, !m_AosWeaponAttributes.IsEmpty ); + + writer.Write( (int) flags ); + + if ( GetSaveFlag( flags, SaveFlag.WeaponAttributes ) ) + m_AosWeaponAttributes.Serialize( writer ); + } + + public override void Deserialize(GenericReader reader) + { + base.Deserialize( reader ); + + int version = reader.ReadInt(); + + SaveFlag flags = (SaveFlag) reader.ReadInt(); + + if ( GetSaveFlag( flags, SaveFlag.WeaponAttributes ) ) + m_AosWeaponAttributes = new AosWeaponAttributes( this, reader ); + else + m_AosWeaponAttributes = new AosWeaponAttributes( this ); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/FoldedSteelGlasses.cs b/Scripts/Items/Armor/Glasses/FoldedSteelGlasses.cs new file mode 100644 index 000000000..d49caff36 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/FoldedSteelGlasses.cs @@ -0,0 +1,42 @@ +using System; +using Server; + +namespace Server.Items +{ + public class FoldedSteelGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073380; } } //Folded Steel Reading Glasses + + public override int BasePhysicalResistance{ get{ return 20; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 10; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public FoldedSteelGlasses() + { + Attributes.BonusStr = 8; + Attributes.NightSight = 1; + Attributes.DefendChance = 15; + } + public FoldedSteelGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/LightOfWayGlasses.cs b/Scripts/Items/Armor/Glasses/LightOfWayGlasses.cs new file mode 100644 index 000000000..750e59c96 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/LightOfWayGlasses.cs @@ -0,0 +1,42 @@ +using System; +using Server; + +namespace Server.Items +{ + public class LightOfWayGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073378; } } //Light Of Way Reading Glasses + + public override int BasePhysicalResistance{ get{ return 10; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 10; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public LightOfWayGlasses() + { + Attributes.BonusStr = 7; + Attributes.BonusInt = 5; + Attributes.WeaponDamage = 30; + } + public LightOfWayGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/LyricalGlasses.cs b/Scripts/Items/Armor/Glasses/LyricalGlasses.cs new file mode 100644 index 000000000..c566d704b --- /dev/null +++ b/Scripts/Items/Armor/Glasses/LyricalGlasses.cs @@ -0,0 +1,44 @@ +using System; +using Server; + +namespace Server.Items +{ + public class LyricalGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073382; } } //Lyrical Reading Glasses + + public override int BasePhysicalResistance{ get{ return 10; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 10; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + private AosWeaponAttributes m_AosWeaponAttributes; + + [Constructable] + public LyricalGlasses() + { + WeaponAttributes.HitLowerDefend = 20; + Attributes.NightSight = 1; + Attributes.ReflectPhysical = 15; + } + public LyricalGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/MaceShieldGlasses.cs b/Scripts/Items/Armor/Glasses/MaceShieldGlasses.cs new file mode 100644 index 000000000..436195cc3 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/MaceShieldGlasses.cs @@ -0,0 +1,44 @@ +using System; +using Server; + +namespace Server.Items +{ + public class MaceShieldGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073381; } } //Mace And Shield Reading Glasses + + public override int BasePhysicalResistance{ get{ return 25; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 10; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + private AosWeaponAttributes m_AosWeaponAttributes; + + [Constructable] + public MaceShieldGlasses() + { + WeaponAttributes.HitLowerDefend = 30; + Attributes.BonusStr = 10; + Attributes.BonusDex = 5; + } + public MaceShieldGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/MaritimeGlasses.cs b/Scripts/Items/Armor/Glasses/MaritimeGlasses.cs new file mode 100644 index 000000000..216fd3bd0 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/MaritimeGlasses.cs @@ -0,0 +1,42 @@ +using System; +using Server; + +namespace Server.Items +{ + public class MaritimeGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073364; } } //Maritime Reading Glasses + + public override int BasePhysicalResistance{ get{ return 3; } } + public override int BaseFireResistance{ get{ return 4; } } + public override int BaseColdResistance{ get{ return 30; } } + public override int BasePoisonResistance{ get{ return 5; } } + public override int BaseEnergyResistance{ get{ return 3; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public MaritimeGlasses() + { + Attributes.Luck = 150; + Attributes.NightSight = 1; + Attributes.ReflectPhysical = 20; + } + public MaritimeGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/NecromanticGlasses.cs b/Scripts/Items/Armor/Glasses/NecromanticGlasses.cs new file mode 100644 index 000000000..a4652756f --- /dev/null +++ b/Scripts/Items/Armor/Glasses/NecromanticGlasses.cs @@ -0,0 +1,41 @@ +using System; +using Server; + +namespace Server.Items +{ + public class NecromanticGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073377; } } //Necromantic Reading Glasses + + 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 0; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public NecromanticGlasses() + { + Attributes.LowerManaCost = 15; + Attributes.LowerRegCost = 30; + } + public NecromanticGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/PoisonedGlasses.cs b/Scripts/Items/Armor/Glasses/PoisonedGlasses.cs new file mode 100644 index 000000000..ee54410df --- /dev/null +++ b/Scripts/Items/Armor/Glasses/PoisonedGlasses.cs @@ -0,0 +1,41 @@ +using System; +using Server; + +namespace Server.Items +{ + public class PoisonedGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073376; } } //Poisoned Reading Glasses + + public override int BasePhysicalResistance{ get{ return 10; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 30; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public PoisonedGlasses() + { + Attributes.BonusStam = 3; + Attributes.RegenStam = 4; + } + public PoisonedGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/TradeGlasses.cs b/Scripts/Items/Armor/Glasses/TradeGlasses.cs new file mode 100644 index 000000000..40ba3cd7c --- /dev/null +++ b/Scripts/Items/Armor/Glasses/TradeGlasses.cs @@ -0,0 +1,41 @@ +using System; +using Server; + +namespace Server.Items +{ + public class TradeGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073362; } } //Reading Glasses of the Trades + + public override int BasePhysicalResistance{ get{ return 10; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 10; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public TradeGlasses() + { + Attributes.BonusStr = 10; + Attributes.BonusInt = 10; + } + public TradeGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/TreasureTrinketGlasses.cs b/Scripts/Items/Armor/Glasses/TreasureTrinketGlasses.cs new file mode 100644 index 000000000..f1181069d --- /dev/null +++ b/Scripts/Items/Armor/Glasses/TreasureTrinketGlasses.cs @@ -0,0 +1,42 @@ +using System; +using Server; + +namespace Server.Items +{ + public class TreasureTrinketGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073373; } } //Treasures and Trinkets Reading Glasses + + public override int BasePhysicalResistance{ get{ return 10; } } + public override int BaseFireResistance{ get{ return 10; } } + public override int BaseColdResistance{ get{ return 10; } } + public override int BasePoisonResistance{ get{ return 10; } } + public override int BaseEnergyResistance{ get{ return 10; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public TreasureTrinketGlasses() + { + Attributes.BonusInt = 10; + Attributes.BonusHits = 5; + Attributes.SpellDamage = 10; + } + public TreasureTrinketGlasses( 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(); + } + } +} diff --git a/Scripts/Items/Armor/Glasses/WizardsGlasses.cs b/Scripts/Items/Armor/Glasses/WizardsGlasses.cs new file mode 100644 index 000000000..419b73571 --- /dev/null +++ b/Scripts/Items/Armor/Glasses/WizardsGlasses.cs @@ -0,0 +1,42 @@ +using System; +using Server; + +namespace Server.Items +{ + public class WizardsGlasses : ElvenGlasses + { + public override int LabelNumber{ get{ return 1073374; } } //Wizard's Crystal Reading Glasses + + public override int BasePhysicalResistance{ get{ return 5; } } + 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 5; } } + + public override int InitMinHits{ get{ return 255; } } + public override int InitMaxHits{ get{ return 255; } } + + [Constructable] + public WizardsGlasses() + { + Attributes.BonusMana = 10; + Attributes.RegenMana = 3; + Attributes.SpellDamage = 15; + } + public WizardsGlasses( 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(); + } + } +}