/*
created by:
/\ 888 888 .d8888b. .d8888b.
____/_ \____ 888 888 d88P Y88b d88P Y88b
\ ___\ \ / 888 888 888 888 888 888
\/ / \/ / .d88888 8888b. 8888b. 888888 Y88b. d888 Y88b. d888
/ /\__/_/\ d88" 888 "88b "88b 888 "Y888P888 "Y888P888
/__\ \_____\ 888 888 .d888888 .d888888 888 888 888
\ / Y88b 888 888 888 888 888 Y88b. Y88b d88P Y88b d88P
\/ "Y88888 "Y888888 "Y888888 "Y888 "Y8888P" "Y8888P"
*/
using System;
using Server;
using Server.Items;
namespace Server.Mobiles
{
[CorpseName("a leather elemental corpse")]
public abstract class LeatherElemental : BaseDaat99Elemental
{
private HideType m_hideType;
private ScaleType m_scaleType;
private int m_hidesNScalesAmount;
[Constructable]
public LeatherElemental(int hidesNScalesAmount, HideType hideType, ScaleType scaleType, CraftResource resource)
: base()
{
Body = 101;
m_hidesNScalesAmount = hidesNScalesAmount;
m_hideType = hideType;
m_scaleType = scaleType;
if (IsGiveRunicTool(hidesNScalesAmount))
PackItem(new RunicSewingKit(resource, i_LootToolUseAmount));
}
public override int Hides { get { return m_hidesNScalesAmount; } }
public override HideType HideType { get { return m_hideType; } }
public override int Scales { get { return m_hidesNScalesAmount; } }
public override ScaleType ScaleType { get { return m_scaleType; } }
public LeatherElemental(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();
}
}
[CorpseName("a spined leather corpse")]
public sealed class SpinedLeatherElemental : LeatherElemental
{
[Constructable]
public SpinedLeatherElemental()
: this(30)
{
}
[Constructable]
public SpinedLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Spined, ScaleType.Red, CraftResource.SpinedLeather)
{
Name = "a spined leather elemental";
Hue = 0x8ac;
initStatsArmorLoot(6);
}
public SpinedLeatherElemental(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();
}
}
[CorpseName("a horned leather corpse")]
public sealed class HornedLeatherElemental : LeatherElemental
{
[Constructable]
public HornedLeatherElemental()
: this(30)
{
}
[Constructable]
public HornedLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Horned, ScaleType.Yellow, CraftResource.HornedLeather)
{
Name = "a horned leather elemental";
Hue = 0x845;
initStatsArmorLoot(6);
}
public HornedLeatherElemental(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();
}
}
[CorpseName("a barbed leather corpse")]
public sealed class BarbedLeatherElemental : LeatherElemental
{
[Constructable]
public BarbedLeatherElemental()
: this(30)
{
}
[Constructable]
public BarbedLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Barbed, ScaleType.Yellow, CraftResource.BarbedLeather)
{
Name = "a barbed leather elemental";
Hue = 0x1C1; // Hue = 0x851;
initStatsArmorLoot(6);
}
public BarbedLeatherElemental(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();
}
}
[CorpseName("a polar leather corpse")]
public sealed class PolarLeatherElemental : LeatherElemental
{
[Constructable]
public PolarLeatherElemental()
: this(30)
{
}
[Constructable]
public PolarLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Polar, ScaleType.Black, CraftResource.PolarLeather)
{
Name = "a polar leather elemental";
Hue = 1150;
initStatsArmorLoot(6);
}
public PolarLeatherElemental(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();
}
}
[CorpseName("a synthetic leather corpse")]
public sealed class SyntheticLeatherElemental : LeatherElemental
{
[Constructable]
public SyntheticLeatherElemental()
: this(30)
{
}
[Constructable]
public SyntheticLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Synthetic, ScaleType.Green, CraftResource.SyntheticLeather)
{
Name = "a synthetic leather elemental";
Hue = 1023;
initStatsArmorLoot(6);
}
public SyntheticLeatherElemental(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();
}
}
[CorpseName("a blaze leather corpse")]
public sealed class BlazeLeatherElemental : LeatherElemental
{
[Constructable]
public BlazeLeatherElemental()
: this(30)
{
}
[Constructable]
public BlazeLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.BlazeL, ScaleType.White, CraftResource.BlazeLeather)
{
Name = "a blaze leather elemental";
Hue = 1260;
initStatsArmorLoot(6);
}
public BlazeLeatherElemental(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();
}
}
[CorpseName("a daemonic leather corpse")]
public sealed class DaemonicLeatherElemental : LeatherElemental
{
[Constructable]
public DaemonicLeatherElemental()
: this(30)
{
}
[Constructable]
public DaemonicLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Daemonic, ScaleType.Blue, CraftResource.DaemonicLeather)
{
Name = "a daemonic leather elemental";
Hue = 32;
initStatsArmorLoot(6);
}
public DaemonicLeatherElemental(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();
}
}
[CorpseName("a shadow leather corpse")]
public sealed class ShadowLeatherElemental : LeatherElemental
{
[Constructable]
public ShadowLeatherElemental()
: this(30)
{
}
[Constructable]
public ShadowLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Shadow, ScaleType.Copper, CraftResource.ShadowLeather)
{
Name = "a shadow leather elemental";
Hue = 0x966;
initStatsArmorLoot(6);
}
public ShadowLeatherElemental(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();
}
}
[CorpseName("a frost leather corpse")]
public sealed class FrostLeatherElemental : LeatherElemental
{
[Constructable]
public FrostLeatherElemental()
: this(30)
{
}
[Constructable]
public FrostLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Frost, ScaleType.Silver, CraftResource.FrostLeather)
{
Name = "a frost leather elemental";
Hue = 1153;
initStatsArmorLoot(6);
}
public FrostLeatherElemental(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();
}
}
[CorpseName("an ethereal leather corpse")]
public sealed class EtherealLeatherElemental : LeatherElemental
{
[Constructable]
public EtherealLeatherElemental()
: this(30)
{
}
[Constructable]
public EtherealLeatherElemental(int hidesNScalesAmount)
: base(hidesNScalesAmount, HideType.Ethereal, ScaleType.Gold, CraftResource.EtherealLeather)
{
Name = "an ethereal leather elemental";
Hue = 1159;
initStatsArmorLoot(6);
}
public EtherealLeatherElemental(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();
}
}
}
/*
created by:
/\ 888 888 .d8888b. .d8888b.
____/_ \____ 888 888 d88P Y88b d88P Y88b
\ ___\ \ / 888 888 888 888 888 888
\/ / \/ / .d88888 8888b. 8888b. 888888 Y88b. d888 Y88b. d888
/ /\__/_/\ d88" 888 "88b "88b 888 "Y888P888 "Y888P888
/__\ \_____\ 888 888 .d888888 .d888888 888 888 888
\ / Y88b 888 888 888 888 888 Y88b. Y88b d88P Y88b d88P
\/ "Y88888 "Y888888 "Y888888 "Y888 "Y8888P" "Y8888P"
*/
//Made by daat99 based on beatle script
using System;
using Server;
using Server.Items;
using Server.Mobiles;
namespace Server.Mobiles
{
[CorpseName( "a mule corpse" )]
public class Mule : BaseMount
{
public override bool SubdueBeforeTame{ get{ return false; } } // Must be beaten into submission
private bool b_BeforeTame;
public bool BeforeTame{ get{ return b_BeforeTame; } set { b_BeforeTame = value; InvalidateProperties(); } }
[Constructable]
public Mule() : this (30.0, true)
{
}
[Constructable]
public Mule(double d_MinTame, bool b_BeforeTame) : base( "a mule", 0x76, 0x3EB2, AIType.AI_Mage, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
BaseSoundID = 0xA8;
SetStr( 200 );
SetDex( 75 );
SetInt( 150 );
SetHits( 95, 105 );
SetDamage( 6, 17 );
SetDamageType( ResistanceType.Physical, 75 );
SetDamageType( ResistanceType.Cold, 25 );
SetResistance( ResistanceType.Physical, 40, 50 );
SetResistance( ResistanceType.Cold, 55, 60 );
SetResistance( ResistanceType.Poison, 100 );
SetResistance( ResistanceType.Energy, 15, 22 );
SetSkill( SkillName.MagicResist, 90.0 );
SetSkill( SkillName.Tactics, 75.0 );
SetSkill( SkillName.Wrestling, 80.1, 90.0 );
SetSkill( SkillName.EvalInt, 10.1, 11.0 );
SetSkill( SkillName.Magery, 10.1, 11.0 );
SetSkill( SkillName.Meditation, 10.1, 11.0 );
Fame = 2000;
Karma = -2000;
Tamable = true;
ControlSlots = 1;
MinTameSkill = d_MinTame;
Container pack = Backpack;
if ( pack != null )
pack.Delete();
pack = new StrongBackpack();
pack.Movable = false;
AddItem( pack );
BeforeTame = b_BeforeTame;
}
public override void OnBeforeTame()
{
if (BeforeTame == true)
{
PackItem( new SpinedLeather(100) );
PackItem( new HornedLeather(90) );
PackItem( new BarbedLeather(80) );
PackItem( new PolarLeather(70) );
PackItem( new SyntheticLeather(60) );
PackItem( new BlazeLeather(50) );
PackItem( new DaemonicLeather(40) );
PackItem( new ShadowLeather(30) );
PackItem( new FrostLeather(20) );
PackItem( new EtherealLeather(10) );
MinTameSkill = 130.0;
BeforeTame = true;
}
}
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override int GetAngerSound()
{
if ( !Controlled )
return 0x16A;
return base.GetAngerSound();
}
#region Pack Animal Methods
public override bool OnBeforeDeath()
{
if ( !base.OnBeforeDeath() )
return false;
PackAnimal.CombineBackpacks( this );
return true;
}
public override bool IsSnoop( Mobile from )
{
if ( PackAnimal.CheckAccess( this, from ) )
return false;
return base.IsSnoop( from );
}
public override bool OnDragDrop( Mobile from, Item item )
{
if ( CheckFeed( from, item ) )
return true;
if ( PackAnimal.CheckAccess( this, from ) )
{
AddToBackpack( item );
return true;
}
return base.OnDragDrop( from, item );
}
public override bool CheckNonlocalDrop( Mobile from, Item item, Item target )
{
return PackAnimal.CheckAccess( this, from );
}
public override bool CheckNonlocalLift( Mobile from, Item item )
{
return PackAnimal.CheckAccess( this, from );
}
public override void GetContextMenuEntries(Mobile from, System.Collections.Generic.List<Server.ContextMenus.ContextMenuEntry> list)
{
base.GetContextMenuEntries(from, list);
PackAnimal.GetContextMenuEntries(this, from, list);
}
#endregion
public Mule( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 2 ); // version
//version 1
writer.Write( (bool) b_BeforeTame);
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
if (version == 2)
b_BeforeTame = reader.ReadBool();
if (version == 1)
{
b_BeforeTame = reader.ReadBool();
bool b = reader.ReadBool();
}
if (version == 0)
{
b_BeforeTame = true;
MinTameSkill = 30;
}
if (AI == AIType.AI_Melee)
{
AI = AIType.AI_Mage;
SetSkill( SkillName.EvalInt, 10.1, 11.0 );
SetSkill( SkillName.Magery, 10.1, 11.0 );
SetSkill( SkillName.Meditation, 10.1, 11.0 );
}
}
}
}
using System;
using Server.Items;
using Server.Network;
namespace Server.Items
{
public abstract class BaseLeather : Item, ICommodity
{
private CraftResource m_Resource;
[CommandProperty( AccessLevel.GameMaster )]
public CraftResource Resource
{
get{ return m_Resource; }
set{ m_Resource = value; InvalidateProperties(); }
}
int ICommodity.DescriptionNumber { get { return LabelNumber; } }
bool ICommodity.IsDeedable { get { return true; } }
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 1 ); // version
writer.Write( (int) m_Resource );
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
switch ( version )
{
case 1:
{
m_Resource = (CraftResource)reader.ReadInt();
break;
}
case 0:
{
OreInfo info = new OreInfo( reader.ReadInt(), reader.ReadInt(), reader.ReadString() );
m_Resource = CraftResources.GetFromOreInfo( info );
break;
}
}
}
public BaseLeather( CraftResource resource ) : this( resource, 1 )
{
}
public BaseLeather( CraftResource resource, int amount ) : base( 0x1081 )
{
Stackable = true;
Weight = 1.0;
Amount = 30;
Hue = CraftResources.GetHue( resource );
m_Resource = resource;
}
public BaseLeather( Serial serial ) : base( serial )
{
}
public override void AddNameProperty( ObjectPropertyList list )
{
if ( Amount > 1 )
list.Add( 1050039, "{0}\t#{1}", Amount, 1024199 ); // ~1_NUMBER~ ~2_ITEMNAME~
else
list.Add( 1024199 ); // cut leather
}
public override void GetProperties( ObjectPropertyList list )
{
base.GetProperties( list );
if ( !CraftResources.IsStandard( m_Resource ) )
{
int num = CraftResources.GetLocalizationNumber( m_Resource );
if ( num > 0 )
list.Add( num );
else
list.Add( CraftResources.GetName( m_Resource ) );
}
}
public override int LabelNumber
{
get
{
if ( m_Resource >= CraftResource.SpinedLeather && m_Resource <= CraftResource.BarbedLeather )
return 1049684 + (int)(m_Resource - CraftResource.SpinedLeather);
return 1047022;
}
}
}
[FlipableAttribute( 0x1081, 0x1082 )]
public class Leather : BaseLeather
{
[Constructable]
public Leather() : this( 30 )
{
}
[Constructable]
public Leather( int amount ) : base( CraftResource.RegularLeather, amount )
{
}
public Leather( 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();
}
}
[FlipableAttribute( 0x1081, 0x1082 )]
public class SpinedLeather : BaseLeather
{
[Constructable]
public SpinedLeather() : this( 30 )
{
}
[Constructable]
public SpinedLeather( int amount ) : base( CraftResource.SpinedLeather, amount )
{
}
public SpinedLeather( 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();
}
}
[FlipableAttribute( 0x1081, 0x1082 )]
public class HornedLeather : BaseLeather
{
[Constructable]
public HornedLeather() : this( 30 )
{
}
[Constructable]
public HornedLeather( int amount ) : base( CraftResource.HornedLeather, amount )
{
}
public HornedLeather( 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();
}
}
[FlipableAttribute( 0x1081, 0x1082 )]
public class BarbedLeather : BaseLeather
{
[Constructable]
public BarbedLeather() : this( 30 )
{
}
[Constructable]
public BarbedLeather( int amount ) : base( CraftResource.BarbedLeather, amount )
{
}
public BarbedLeather( 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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class PolarLeather : BaseLeather
{
[Constructable]
public PolarLeather()
: this(30)
{
}
[Constructable]
public PolarLeather(int amount)
: base(CraftResource.PolarLeather, amount)
{
}
public PolarLeather(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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class SyntheticLeather : BaseLeather
{
[Constructable]
public SyntheticLeather()
: this(30)
{
}
[Constructable]
public SyntheticLeather(int amount)
: base(CraftResource.SyntheticLeather, amount)
{
}
public SyntheticLeather(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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class BlazeLeather : BaseLeather
{
[Constructable]
public BlazeLeather()
: this(30)
{
}
[Constructable]
public BlazeLeather(int amount)
: base(CraftResource.BlazeLeather, amount)
{
}
public BlazeLeather(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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class DaemonicLeather : BaseLeather
{
[Constructable]
public DaemonicLeather()
: this(30)
{
}
[Constructable]
public DaemonicLeather(int amount)
: base(CraftResource.DaemonicLeather, amount)
{
}
public DaemonicLeather(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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class ShadowLeather : BaseLeather
{
[Constructable]
public ShadowLeather()
: this(30)
{
}
[Constructable]
public ShadowLeather(int amount)
: base(CraftResource.ShadowLeather, amount)
{
}
public ShadowLeather(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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class FrostLeather : BaseLeather
{
[Constructable]
public FrostLeather()
: this(30)
{
}
[Constructable]
public FrostLeather(int amount)
: base(CraftResource.FrostLeather, amount)
{
}
public FrostLeather(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();
}
}
[FlipableAttribute(0x1081, 0x1082)]
public class EtherealLeather : BaseLeather
{
[Constructable]
public EtherealLeather()
: this(30)
{
}
[Constructable]
public EtherealLeather(int amount)
: base(CraftResource.EtherealLeather, amount)
{
}
public EtherealLeather(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();
}
}
}
We use essential cookies to make this site work, and optional cookies to enhance your experience.