Files
Unstable Kitsune b918192e4e Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
2023-11-28 23:20:26 -05:00

468 lines
10 KiB
C#

using System;
namespace Server.Items
{
public abstract class Hair : Item
{
public Hair(Serial serial)
: base(serial)
{
}
/*
public static Hair GetRandomHair( bool female )
{
return GetRandomHair( female, Utility.RandomHairHue() );
}
public static Hair GetRandomHair( bool female, int hairHue )
{
if( female )
{
switch ( Utility.Random( 9 ) )
{
case 0: return new Afro( hairHue );
case 1: return new KrisnaHair( hairHue );
case 2: return new PageboyHair( hairHue );
case 3: return new PonyTail( hairHue );
case 4: return new ReceedingHair( hairHue );
case 5: return new TwoPigTails( hairHue );
case 6: return new ShortHair( hairHue );
case 7: return new LongHair( hairHue );
default: return new BunsHair( hairHue );
}
}
else
{
switch ( Utility.Random( 8 ) )
{
case 0: return new Afro( hairHue );
case 1: return new KrisnaHair( hairHue );
case 2: return new PageboyHair( hairHue );
case 3: return new PonyTail( hairHue );
case 4: return new ReceedingHair( hairHue );
case 5: return new TwoPigTails( hairHue );
case 6: return new ShortHair( hairHue );
default: return new LongHair( hairHue );
}
}
}
public static Hair CreateByID( int id, int hue )
{
switch ( id )
{
case 0x203B: return new ShortHair( hue );
case 0x203C: return new LongHair( hue );
case 0x203D: return new PonyTail( hue );
case 0x2044: return new Mohawk( hue );
case 0x2045: return new PageboyHair( hue );
case 0x2046: return new BunsHair( hue );
case 0x2047: return new Afro( hue );
case 0x2048: return new ReceedingHair( hue );
case 0x2049: return new TwoPigTails( hue );
case 0x204A: return new KrisnaHair( hue );
default: return new GenericHair( id, hue );
}
}
* */
protected Hair(int itemID)
: this(itemID, 0)
{
}
protected Hair(int itemID, int hue)
: base(itemID)
{
this.LootType = LootType.Blessed;
this.Layer = Layer.Hair;
this.Hue = hue;
}
public override bool DisplayLootType
{
get
{
return false;
}
}
public override bool VerifyMove(Mobile from)
{
return (from.AccessLevel >= AccessLevel.GameMaster);
}
public override DeathMoveResult OnParentDeath(Mobile parent)
{
// Dupe( Amount );
parent.HairItemID = this.ItemID;
parent.HairHue = this.Hue;
return DeathMoveResult.MoveToCorpse;
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
this.LootType = LootType.Blessed;
int version = reader.ReadInt();
}
}
public class GenericHair : Hair
{
public GenericHair(Serial serial)
: base(serial)
{
}
private GenericHair(int itemID)
: this(itemID, 0)
{
}
private GenericHair(int itemID, int hue)
: base(itemID, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class Mohawk : Hair
{
public Mohawk(Serial serial)
: base(serial)
{
}
private Mohawk()
: this(0)
{
}
private Mohawk(int hue)
: base(0x2044, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class PageboyHair : Hair
{
public PageboyHair(Serial serial)
: base(serial)
{
}
private PageboyHair()
: this(0)
{
}
private PageboyHair(int hue)
: base(0x2045, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class BunsHair : Hair
{
public BunsHair(Serial serial)
: base(serial)
{
}
private BunsHair()
: this(0)
{
}
private BunsHair(int hue)
: base(0x2046, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class LongHair : Hair
{
public LongHair(Serial serial)
: base(serial)
{
}
private LongHair()
: this(0)
{
}
private LongHair(int hue)
: base(0x203C, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class ShortHair : Hair
{
public ShortHair(Serial serial)
: base(serial)
{
}
private ShortHair()
: this(0)
{
}
private ShortHair(int hue)
: base(0x203B, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class PonyTail : Hair
{
public PonyTail(Serial serial)
: base(serial)
{
}
private PonyTail()
: this(0)
{
}
private PonyTail(int hue)
: base(0x203D, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class Afro : Hair
{
public Afro(Serial serial)
: base(serial)
{
}
private Afro()
: this(0)
{
}
private Afro(int hue)
: base(0x2047, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class ReceedingHair : Hair
{
public ReceedingHair(Serial serial)
: base(serial)
{
}
private ReceedingHair()
: this(0)
{
}
private ReceedingHair(int hue)
: base(0x2048, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class TwoPigTails : Hair
{
public TwoPigTails(Serial serial)
: base(serial)
{
}
private TwoPigTails()
: this(0)
{
}
private TwoPigTails(int hue)
: base(0x2049, hue)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
public class KrisnaHair : Hair
{
public KrisnaHair(Serial serial)
: base(serial)
{
}
private KrisnaHair()
: this(0)
{
}
private KrisnaHair(int hue)
: base(0x204A, hue)
{
}
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();
}
}
}