How it doesn't work, please post updated script and error every time you change something.Shadow_2004 said:i tried ShadowHorse doesnt work
using System;
using Server.Items;
namespace Server.Items
{
[Serializable()]
public class Qone : Item
{
[Constructable]
public Qone() : base( 0xED4 )
{
Movable = false;
Hue = 0x85;
Name = "A Quest 1 Exchange Stone";
}
public override void GetProperties( ObjectPropertyList list )
{
base.GetProperties( list );
list.Add( "The Evil Mage Ring for The Shadow Horse");
}
public override void OnDoubleClick( Mobile from )
{
Container pack = from.Backpack;
if ( from.Backpack.ConsumeTotal( typeof( Qoner ), 1 ) )
{
from.Backpack.AddItem( ShadowHorse() );
((Mobile)from).SendMessage("You Exchange The Ring For The Horse.");
}
else
((Mobile)from).SendMessage("You do not have The Ring.");
}
public Qone( 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();
}
}
}
using System;
using Server.Mobiles;
using Server.Items;
namespace Server.Mobiles
{
[CorpseName( "a Shadow Horse corpse" )]
[TypeAlias( "Server.Mobiles.BrownHorse", "Server.Mobiles.DirtyHorse", "Server.Mobiles.GrayHorse", "Server.Mobiles.TanHorse" )]
public class ShadowHorse : BaseMount
{
private static int[] m_IDs = new int[]
{
0xC8, 0x3E9F,
0xE2, 0x3EA0,
0xE4, 0x3EA1,
0xCC, 0x3EA2
};
[Constructable]
public ShadowHorse() : this( "a Shadow horse" )
{
}
[Constructable]
public ShadowHorse( string name ) : base( name, 0xE2, 0x3EA0, AIType.AI_Animal, FightMode.Agressor, 10, 1, 0.2, 0.4 )
{
int random = Utility.Random( 4 );
Body = m_IDs[random * 2];
ItemID = m_IDs[random * 2 + 1];
BaseSoundID = 0xA8;
Hue = 1889;
SetStr( 82, 118 );
SetDex( 56, 75 );
SetInt( 6, 10 );
SetHits( 28, 45 );
SetMana( 0 );
SetDamage( 7, 10 );
SetDamageType( ResistanceType.Physical, 100 );
SetResistance( ResistanceType.Physical, 15, 20 );
SetSkill( SkillName.MagicResist, 25.1, 30.0 );
SetSkill( SkillName.Tactics, 29.3, 44.0 );
SetSkill( SkillName.Wrestling, 29.3, 44.0 );
Fame = 300;
Karma = 300;
Tamable = true;
ControlSlots = 1;
MinTameSkill = 29.1;
}
public override int Meat{ get{ return 3; } }
public override int Hides{ get{ return 10; } }
public override FoodType FavoriteFood{ get{ return FoodType.FruitsAndVegies | FoodType.GrainsAndHay; } }
public ShadowHorse( 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();
}
}
}
typeof( Qoner ),
public override void OnDoubleClick( Mobile from )
{
Container pack = from.Backpack;
if ( from.Backpack.ConsumeTotal( typeof( Qoner ),
{
from.Backpack.AddItem( new ShadowHorse() );
((Mobile)from).SendMessage("You Exchange The Ring For The Horse.");
}
else
((Mobile)from).SendMessage("You do not have The Ring.");
}
using System;
using Server.Items;
namespace Server.Items
{
[Serializable()]
public class Qone : Item
{
[Constructable]
public Qone() : base( 0xED4 )
{
Movable = false;
Hue = 0x85;
Name = "A Quest 1 Exchange Stone";
}
public override void GetProperties( ObjectPropertyList list )
{
base.GetProperties( list );
list.Add( "The Evil Mage Ring for The Shadow Horse");
}
public override void OnDoubleClick( Mobile from )
{
Container pack = from.Backpack;
if ( from.Backpack.ConsumeTotal( typeof( Qoner ) ) );
{
from.Backpack.AddItem( new ShadowHorse() );
((Mobile)from).SendMessage("You Exchange The Ring For The Horse.");
}
else
((Mobile)from).SendMessage("You do not have The Ring.");
}
public Qone( 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();
}
}
}
using System;
using Server.Items;
using Server.Mobiles;
namespace Server.Items
{
[Serializable()]
public class Qone : Item
{
[Constructable]
public Qone() : base( 0xED4 )
{
Movable = false;
Hue = 0x85;
Name = "A Quest 1 Exchange Stone";
}
public override void GetProperties( ObjectPropertyList list )
{
base.GetProperties( list );
list.Add( "The Evil Mage Ring for The Shadow Horse");
}
public override void OnDoubleClick( Mobile from )
{
Container pack = from.Backpack;
if ( from.Backpack.ConsumeTotal( typeof( Qoner ), 1 ) )
{
from.AddToBackpack( new ShadowHorse() );
from.SendMessage("You Exchange The Ring For The Horse.");
}
else
{
from.SendMessage("You do not have The Ring.");
}
}
public Qone( 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();
}
}
}