Overwrite

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

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class BalronSlayerTarget : Target
{
private BalronSlayerDeed m_Deed;
public BalronSlayerTarget( BalronSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.BalronDamnation || ((BaseWeapon)item).Slayer2 == SlayerName.BalronDamnation )
{
from.SendMessage( "That already is a balron slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put balron slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.BalronDamnation;
from.SendMessage( "Your weapon magically becomes a balron slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.BalronDamnation;
from.SendMessage( "Your weapon magically becomes a balron slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.BalronDamnation || ((Spellbook)item).Slayer2 == SlayerName.BalronDamnation )
{
from.SendMessage( "That already is a balron slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put balron slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.BalronDamnation;
from.SendMessage( "Your spellbook magically becomes a balron slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.BalronDamnation;
from.SendMessage( "Your spellbook magically becomes a balron slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a balron slayer." );
}
}
}
public class BalronSlayerDeed : Item
{
[Constructable]
public BalronSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Balron Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public BalronSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a balron slayer?");
from.Target = new BalronSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class BloodDrinkingSlayerTarget : Target
{
private BloodDrinkingSlayerDeed m_Deed;
public BloodDrinkingSlayerTarget( BloodDrinkingSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.BloodDrinking || ((BaseWeapon)item).Slayer2 == SlayerName.BloodDrinking )
{
from.SendMessage( "That already is a blood elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put blood elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.BloodDrinking;
from.SendMessage( "Your weapon magically becomes a blood elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.BloodDrinking;
from.SendMessage( "Your weapon magically becomes a blood elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.BloodDrinking || ((Spellbook)item).Slayer2 == SlayerName.BloodDrinking )
{
from.SendMessage( "That already is a blood elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put blood elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.BloodDrinking;
from.SendMessage( "Your spellbook magically becomes a blood elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.BloodDrinking;
from.SendMessage( "Your spellbook magically becomes a blood elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a blood elemental slayer." );
}
}
}
public class BloodDrinkingSlayerDeed : Item
{
[Constructable]
public BloodDrinkingSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Blood Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public BloodDrinkingSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a blood elemental slayer?");
from.Target = new BloodDrinkingSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class DaemonSlayerTarget : Target
{
private DaemonSlayerDeed m_Deed;
public DaemonSlayerTarget( DaemonSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.DaemonDismissal || ((BaseWeapon)item).Slayer2 == SlayerName.DaemonDismissal )
{
from.SendMessage( "That already is a daemon slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put daemon slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.DaemonDismissal;
from.SendMessage( "Your weapon magically becomes a daemon slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.DaemonDismissal;
from.SendMessage( "Your weapon magically becomes a daemon slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.DaemonDismissal || ((Spellbook)item).Slayer2 == SlayerName.DaemonDismissal )
{
from.SendMessage( "That already is a daemon slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put daemon slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.DaemonDismissal;
from.SendMessage( "Your spellbook magically becomes a daemon slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.DaemonDismissal;
from.SendMessage( "Your spellbook magically becomes a daemon slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a daemon slayer." );
}
}
}
public class DaemonSlayerDeed : Item
{
[Constructable]
public DaemonSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Daemon Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public DaemonSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a daemon slayer?");
from.Target = new DaemonSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class DragonSlayerTarget : Target
{
private DragonSlayerDeed m_Deed;
public DragonSlayerTarget( DragonSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.DragonSlaying || ((BaseWeapon)item).Slayer2 == SlayerName.DragonSlaying )
{
from.SendMessage( "That already is a dragon slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put dragon slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.DragonSlaying;
from.SendMessage( "Your weapon magically becomes a dragon slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.DragonSlaying;
from.SendMessage( "Your weapon magically becomes a dragon slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.DragonSlaying || ((Spellbook)item).Slayer2 == SlayerName.DragonSlaying )
{
from.SendMessage( "That already is a dragon slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put dragon slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.DragonSlaying;
from.SendMessage( "Your spellbook magically becomes a dragon slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.DragonSlaying;
from.SendMessage( "Your spellbook magically becomes a dragon slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a dragon slayer." );
}
}
}
public class DragonSlayerDeed : Item
{
[Constructable]
public DragonSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Dragon Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public DragonSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a dragon slayer?");
from.Target = new DragonSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class EarthShatterSlayerTarget : Target
{
private EarthShatterSlayerDeed m_Deed;
public EarthShatterSlayerTarget( EarthShatterSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.EarthShatter || ((BaseWeapon)item).Slayer2 == SlayerName.EarthShatter )
{
from.SendMessage( "That already is an ore elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put ore elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.EarthShatter;
from.SendMessage( "Your weapon magically becomes an ore elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.EarthShatter;
from.SendMessage( "Your weapon magically becomes an ore elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.EarthShatter || ((Spellbook)item).Slayer2 == SlayerName.EarthShatter )
{
from.SendMessage( "That already is an ore elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put ore elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.EarthShatter;
from.SendMessage( "Your spellbook magically becomes an ore elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.EarthShatter;
from.SendMessage( "Your spellbook magically becomes an ore elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into an ore elemental slayer." );
}
}
}
public class EarthShatterSlayerDeed : Item
{
[Constructable]
public EarthShatterSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Ore Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public EarthShatterSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into an ore elemental slayer?");
from.Target = new EarthShatterSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class ElementalHealthSlayerTarget : Target
{
private ElementalHealthSlayerDeed m_Deed;
public ElementalHealthSlayerTarget( ElementalHealthSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.ElementalHealth || ((BaseWeapon)item).Slayer2 == SlayerName.ElementalHealth )
{
from.SendMessage( "That already is a poison elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put poison elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.ElementalHealth;
from.SendMessage( "Your weapon magically becomes a poison elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.ElementalHealth;
from.SendMessage( "Your weapon magically becomes a poison elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.ElementalHealth || ((Spellbook)item).Slayer2 == SlayerName.ElementalHealth )
{
from.SendMessage( "That already is a poison elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put poison elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.ElementalHealth;
from.SendMessage( "Your spellbook magically becomes a poison elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.ElementalHealth;
from.SendMessage( "Your spellbook magically becomes a poison elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a poison elemental slayer." );
}
}
}
public class ElementalHealthSlayerDeed : Item
{
[Constructable]
public ElementalHealthSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Poison Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public ElementalHealthSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a poison elemental slayer?");
from.Target = new ElementalHealthSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class FlameDousingSlayerTarget : Target
{
private FlameDousingSlayerDeed m_Deed;
public FlameDousingSlayerTarget( FlameDousingSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.FlameDousing || ((BaseWeapon)item).Slayer2 == SlayerName.FlameDousing )
{
from.SendMessage( "That already is a fire elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put fire elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.FlameDousing;
from.SendMessage( "Your weapon magically becomes a fire elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.FlameDousing;
from.SendMessage( "Your weapon magically becomes a fire elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.FlameDousing || ((Spellbook)item).Slayer2 == SlayerName.FlameDousing )
{
from.SendMessage( "That already is a fire elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put fire elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.FlameDousing;
from.SendMessage( "Your spellbook magically becomes a fire elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.FlameDousing;
from.SendMessage( "Your spellbook magically becomes a fire elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a fire elemental slayer." );
}
}
}
public class FlameDousingSlayerDeed : Item
{
[Constructable]
public FlameDousingSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Fire Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public FlameDousingSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a fire elemental slayer?");
from.Target = new FlameDousingSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class GargoyleSlayerTarget : Target
{
private GargoyleSlayerDeed m_Deed;
public GargoyleSlayerTarget( GargoyleSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.GargoylesFoe || ((BaseWeapon)item).Slayer2 == SlayerName.GargoylesFoe )
{
from.SendMessage( "That already is a gargoyle slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put gargoyle slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.GargoylesFoe;
from.SendMessage( "Your weapon magically becomes a gargoyle slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.GargoylesFoe;
from.SendMessage( "Your weapon magically becomes a gargoyle slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.GargoylesFoe || ((Spellbook)item).Slayer2 == SlayerName.GargoylesFoe )
{
from.SendMessage( "That already is a gargoyle slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put gargoyle slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.GargoylesFoe;
from.SendMessage( "Your spellbook magically becomes a gargoyle slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.GargoylesFoe;
from.SendMessage( "Your spellbook magically becomes a gargoyle slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a gargoyle slayer." );
}
}
}
public class GargoyleSlayerDeed : Item
{
[Constructable]
public GargoyleSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Gargoyle Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public GargoyleSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a gargoyle slayer?");
from.Target = new GargoyleSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class LizardmanSlayerTarget : Target
{
private LizardmanSlayerDeed m_Deed;
public LizardmanSlayerTarget( LizardmanSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.LizardmanSlaughter || ((BaseWeapon)item).Slayer2 == SlayerName.LizardmanSlaughter )
{
from.SendMessage( "That already is a lizardman slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put lizardman slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.LizardmanSlaughter;
from.SendMessage( "Your weapon magically becomes a lizardman slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.LizardmanSlaughter;
from.SendMessage( "Your weapon magically becomes a lizardman slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.LizardmanSlaughter || ((Spellbook)item).Slayer2 == SlayerName.LizardmanSlaughter )
{
from.SendMessage( "That already is a lizardman slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put lizardman slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.LizardmanSlaughter;
from.SendMessage( "Your spellbook magically becomes a lizardman slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.LizardmanSlaughter;
from.SendMessage( "Your spellbook magically becomes a lizardman slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a lizardman slayer." );
}
}
}
public class LizardmanSlayerDeed : Item
{
[Constructable]
public LizardmanSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Lizardman Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public LizardmanSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a lizardman slayer?");
from.Target = new LizardmanSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class OgreSlayerTarget : Target
{
private OgreSlayerDeed m_Deed;
public OgreSlayerTarget( OgreSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.OgreTrashing || ((BaseWeapon)item).Slayer2 == SlayerName.OgreTrashing )
{
from.SendMessage( "That already is an ogre slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put ogre slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.OgreTrashing;
from.SendMessage( "Your weapon magically becomes an ogre slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.OgreTrashing;
from.SendMessage( "Your weapon magically becomes an ogre slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.OgreTrashing || ((Spellbook)item).Slayer2 == SlayerName.OgreTrashing )
{
from.SendMessage( "That already is an ogre slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put ogre slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.OgreTrashing;
from.SendMessage( "Your spellbook magically becomes an ogre slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.OgreTrashing;
from.SendMessage( "Your spellbook magically becomes an ogre slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into an ogre slayer." );
}
}
}
public class OgreSlayerDeed : Item
{
[Constructable]
public OgreSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Ogre Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public OgreSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into an ogre slayer?");
from.Target = new OgreSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class OphidianSlayerTarget : Target
{
private OphidianSlayerDeed m_Deed;
public OphidianSlayerTarget( OphidianSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.Ophidian || ((BaseWeapon)item).Slayer2 == SlayerName.Ophidian )
{
from.SendMessage( "That already is an ophidian slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put ophidian elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.Ophidian;
from.SendMessage( "Your weapon magically becomes an ophidian slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.Ophidian;
from.SendMessage( "Your weapon magically becomes an ophidian slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.Ophidian || ((Spellbook)item).Slayer2 == SlayerName.Ophidian )
{
from.SendMessage( "That already is an ophidian slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put ophidian slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.Ophidian;
from.SendMessage( "Your spellbook magically becomes an ophidian slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.Ophidian;
from.SendMessage( "Your spellbook magically becomes an ophidian slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into an ophidian slayer." );
}
}
}
public class OphidianSlayerDeed : Item
{
[Constructable]
public OphidianSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Ophidian Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public OphidianSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into an ophidian slayer?");
from.Target = new OphidianSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class OrcSlayerTarget : Target
{
private OrcSlayerDeed m_Deed;
public OrcSlayerTarget( OrcSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.OrcSlaying || ((BaseWeapon)item).Slayer2 == SlayerName.OrcSlaying )
{
from.SendMessage( "That already is an orc slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put orc slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.OrcSlaying;
from.SendMessage( "Your weapon magically becomes an orc slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.OrcSlaying;
from.SendMessage( "Your weapon magically becomes an orc slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.OrcSlaying || ((Spellbook)item).Slayer2 == SlayerName.OrcSlaying )
{
from.SendMessage( "That already is an orc slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put orc slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.OrcSlaying;
from.SendMessage( "Your spellbook magically becomes an orc slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.OrcSlaying;
from.SendMessage( "Your spellbook magically becomes an orc slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into an orc slayer." );
}
}
}
public class OrcSlayerDeed : Item
{
[Constructable]
public OrcSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Orc Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public OrcSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into an orc slayer?");
from.Target = new OrcSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class ScorpionSlayerTarget : Target
{
private ScorpionSlayerDeed m_Deed;
public ScorpionSlayerTarget( ScorpionSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.ScorpionsBane || ((BaseWeapon)item).Slayer2 == SlayerName.ScorpionsBane )
{
from.SendMessage( "That already is a scorpion slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put scorpion slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.ScorpionsBane;
from.SendMessage( "Your weapon magically becomes a scorpion slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.ScorpionsBane;
from.SendMessage( "Your weapon magically becomes a scorpion slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.ScorpionsBane || ((Spellbook)item).Slayer2 == SlayerName.ScorpionsBane )
{
from.SendMessage( "That already is a scorpion slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put scorpion slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.ScorpionsBane;
from.SendMessage( "Your spellbook magically becomes a scorpion slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.ScorpionsBane;
from.SendMessage( "Your spellbook magically becomes a scorpion slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a scorpion slayer." );
}
}
}
public class ScorpionSlayerDeed : Item
{
[Constructable]
public ScorpionSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Scorpion Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public ScorpionSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a scorpion slayer?");
from.Target = new ScorpionSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class SnakeSlayerTarget : Target
{
private SnakeSlayerDeed m_Deed;
public SnakeSlayerTarget( SnakeSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.SnakesBane || ((BaseWeapon)item).Slayer2 == SlayerName.SnakesBane )
{
from.SendMessage( "That already is a snake slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put snake slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.SnakesBane;
from.SendMessage( "Your weapon magically becomes a snake slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.SnakesBane;
from.SendMessage( "Your weapon magically becomes a snake slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.SnakesBane || ((Spellbook)item).Slayer2 == SlayerName.SnakesBane )
{
from.SendMessage( "That already is a snake slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put snake slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.SnakesBane;
from.SendMessage( "Your spellbook magically becomes a snake slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.SnakesBane;
from.SendMessage( "Your spellbook magically becomes a snake slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a snake slayer." );
}
}
}
public class SnakeSlayerDeed : Item
{
[Constructable]
public SnakeSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Snake Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public SnakeSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a snake slayer?");
from.Target = new SnakeSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class SpidersDeathSlayerTarget : Target
{
private SpidersDeathSlayerDeed m_Deed;
public SpidersDeathSlayerTarget( SpidersDeathSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.SpidersDeath || ((BaseWeapon)item).Slayer2 == SlayerName.SpidersDeath )
{
from.SendMessage( "That already is a spider slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put spider slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.SpidersDeath;
from.SendMessage( "Your weapon magically becomes a spider slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.SpidersDeath;
from.SendMessage( "Your weapon magically becomes a spider slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.SpidersDeath || ((Spellbook)item).Slayer2 == SlayerName.SpidersDeath )
{
from.SendMessage( "That already is a spider slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put spider slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.SpidersDeath;
from.SendMessage( "Your spellbook magically becomes a spider slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.SpidersDeath;
from.SendMessage( "Your spellbook magically becomes a spider slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a spider slayer." );
}
}
}
public class SpidersDeathSlayerDeed : Item
{
[Constructable]
public SpidersDeathSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Spider Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public SpidersDeathSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a spider slayer?");
from.Target = new SpidersDeathSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class SummerWindSlayerTarget : Target
{
private SummerWindSlayerDeed m_Deed;
public SummerWindSlayerTarget( SummerWindSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.SummerWind || ((BaseWeapon)item).Slayer2 == SlayerName.SummerWind )
{
from.SendMessage( "That already is a snow elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put snow elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.SummerWind;
from.SendMessage( "Your weapon magically becomes a snow elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.SummerWind;
from.SendMessage( "Your weapon magically becomes a snow elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.SummerWind || ((Spellbook)item).Slayer2 == SlayerName.SummerWind )
{
from.SendMessage( "That already is a snow elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put snow elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.SummerWind;
from.SendMessage( "Your spellbook magically becomes a snow elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.SummerWind;
from.SendMessage( "Your spellbook magically becomes a snow elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a snow elemental slayer." );
}
}
}
public class SummerWindSlayerDeed : Item
{
[Constructable]
public SummerWindSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Snow Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public SummerWindSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a snow elemental slayer?");
from.Target = new SummerWindSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class TerathanSlayerTarget : Target
{
private TerathanSlayerDeed m_Deed;
public TerathanSlayerTarget( TerathanSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.Terathan || ((BaseWeapon)item).Slayer2 == SlayerName.Terathan )
{
from.SendMessage( "That already is a terathan slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put terathan slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.Terathan;
from.SendMessage( "Your weapon magically becomes a terathan slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.Terathan;
from.SendMessage( "Your weapon magically becomes a terathan slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.Terathan || ((Spellbook)item).Slayer2 == SlayerName.Terathan )
{
from.SendMessage( "That already is a terathan slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put terathan slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.Terathan;
from.SendMessage( "Your spellbook magically becomes a terathan slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.Terathan;
from.SendMessage( "Your spellbook magically becomes a terathan slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a terathan slayer." );
}
}
}
public class TerathanSlayerDeed : Item
{
[Constructable]
public TerathanSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Terathan Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public TerathanSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a terathan slayer?");
from.Target = new TerathanSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class TrollSlayerTarget : Target
{
private TrollSlayerDeed m_Deed;
public TrollSlayerTarget( TrollSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.TrollSlaughter || ((BaseWeapon)item).Slayer2 == SlayerName.TrollSlaughter )
{
from.SendMessage( "That already is a troll slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put troll slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.TrollSlaughter;
from.SendMessage( "Your weapon magically becomes a troll slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.TrollSlaughter;
from.SendMessage( "Your weapon magically becomes a troll slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.TrollSlaughter || ((Spellbook)item).Slayer2 == SlayerName.TrollSlaughter )
{
from.SendMessage( "That already is a troll slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put troll slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.TrollSlaughter;
from.SendMessage( "Your spellbook magically becomes a troll slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.TrollSlaughter;
from.SendMessage( "Your spellbook magically becomes a troll slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a troll slayer." );
}
}
}
public class TrollSlayerDeed : Item
{
[Constructable]
public TrollSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Troll Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public TrollSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a troll slayer?");
from.Target = new TrollSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class VacuumSlayerTarget : Target
{
private VacuumSlayerDeed m_Deed;
public VacuumSlayerTarget( VacuumSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.Vacuum || ((BaseWeapon)item).Slayer2 == SlayerName.Vacuum )
{
from.SendMessage( "That already is an air elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put air elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.Vacuum;
from.SendMessage( "Your weapon magically becomes an air elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.Vacuum;
from.SendMessage( "Your weapon magically becomes an air elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.Vacuum || ((Spellbook)item).Slayer2 == SlayerName.Vacuum )
{
from.SendMessage( "That already is an air elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put air elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.Vacuum;
from.SendMessage( "Your spellbook magically becomes an air elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.Vacuum;
from.SendMessage( "Your spellbook magically becomes an air elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into an air elemental slayer." );
}
}
}
public class VacuumSlayerDeed : Item
{
[Constructable]
public VacuumSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Air Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public VacuumSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into an air elemental slayer?");
from.Target = new VacuumSlayerTarget( this );
}
}
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Server.Network;
using Server.Prompts;
using Server.Items;
using Server.Targeting;
using Server;
namespace Server.Items
{
public class WaterDissipationSlayerTarget : Target
{
private WaterDissipationSlayerDeed m_Deed;
public WaterDissipationSlayerTarget( WaterDissipationSlayerDeed deed ) : base( 1, false, TargetFlags.None )
{
m_Deed = deed;
}
protected override void OnTarget( Mobile from, object target )
{
if ( target is BaseWeapon )
{
Item item = (Item)target;
if ( ((BaseWeapon)item).Slayer == SlayerName.WaterDissipation || ((BaseWeapon)item).Slayer2 == SlayerName.WaterDissipation )
{
from.SendMessage( "That already is a water elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put water elemental slayer on that there!" );
}
else
{
if( ((BaseWeapon)item).Slayer != SlayerName.None && ((BaseWeapon)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your weapon already has two slayers! One must be removed first." );
}
if( ((BaseWeapon)item).Slayer == SlayerName.None )
{
((BaseWeapon)item).Slayer = SlayerName.WaterDissipation;
from.SendMessage( "Your weapon magically becomes a water elemental slayer..." );
m_Deed.Delete();
}
else if( ((BaseWeapon)item).Slayer2 == SlayerName.None )
{
((BaseWeapon)item).Slayer2 = SlayerName.WaterDissipation;
from.SendMessage( "Your weapon magically becomes a water elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else if ( target is Spellbook )
{
Item item = (Item)target;
if ( ((Spellbook)item).Slayer == SlayerName.WaterDissipation || ((Spellbook)item).Slayer2 == SlayerName.WaterDissipation )
{
from.SendMessage( "That already is a water elemental slayer!");
}
else
{
if( item.RootParent != from )
{
from.SendMessage( "You cannot put water elemental slayer on that there!" );
}
else
{
if( ((Spellbook)item).Slayer != SlayerName.None && ((Spellbook)item).Slayer2 != SlayerName.None )
{
from.SendMessage( "Your spellbook already has two slayers! One must be removed first." );
}
if( ((Spellbook)item).Slayer == SlayerName.None )
{
((Spellbook)item).Slayer = SlayerName.WaterDissipation;
from.SendMessage( "Your spellbook magically becomes a water elemental slayer..." );
m_Deed.Delete();
}
else if( ((Spellbook)item).Slayer2 == SlayerName.None )
{
((Spellbook)item).Slayer2 = SlayerName.WaterDissipation;
from.SendMessage( "Your spellbook magically becomes a water elemental slayer..." );
m_Deed.Delete();
}
}
}
}
else
{
from.SendMessage( "That cannot be made into a water elemental slayer." );
}
}
}
public class WaterDissipationSlayerDeed : Item
{
[Constructable]
public WaterDissipationSlayerDeed() : base( 0x14F0 )
{
Weight = 1.0;
Name = "Water Elemental Slayer deed";
LootType = LootType.Blessed;
Hue = 1175;
}
public WaterDissipationSlayerDeed( 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 );
LootType = LootType.Blessed;
int version = reader.ReadInt();
}
public override bool DisplayLootType{ get{ return false; } }
public override void OnDoubleClick( Mobile from )
{
if ( !IsChildOf( from.Backpack ) )
{
from.SendLocalizedMessage( 1042001 );
}
else
{
from.SendMessage("What item would you like to change into a water elemental slayer?");
from.Target = new WaterDissipationSlayerTarget( this );
}
}
}
}