135 lines
4.2 KiB
C#
135 lines
4.2 KiB
C#
using System;
|
|
using System.Linq;
|
|
|
|
namespace Server.Items
|
|
{
|
|
public enum HaochisPigmentType
|
|
{
|
|
None,
|
|
HeartwoodSienna,
|
|
CampionWhite,
|
|
YewishPine,
|
|
MinocianFire,
|
|
NinjaBlack,
|
|
Olive,
|
|
DarkReddishBrown,
|
|
Yellow,
|
|
PrettyPink,
|
|
MidnightBlue,
|
|
Emerald,
|
|
SmokyGold,
|
|
GhostsGrey,
|
|
OceanBlue,
|
|
CelticLime
|
|
}
|
|
|
|
public class HaochisPigment : BasePigmentsOfTokuno
|
|
{
|
|
private HaochisPigmentType m_Type;
|
|
|
|
[Constructable]
|
|
public HaochisPigment()
|
|
: this(HaochisPigmentType.None, 50)
|
|
{
|
|
}
|
|
|
|
[Constructable]
|
|
public HaochisPigment(HaochisPigmentType type)
|
|
: this(type, 50)
|
|
{
|
|
}
|
|
|
|
[Constructable]
|
|
public HaochisPigment(HaochisPigmentType type, int uses)
|
|
: base(uses)
|
|
{
|
|
Weight = 1.0;
|
|
Type = type;
|
|
}
|
|
|
|
public HaochisPigment(Serial serial)
|
|
: base(serial)
|
|
{
|
|
}
|
|
|
|
[CommandProperty(AccessLevel.GameMaster)]
|
|
public HaochisPigmentType Type
|
|
{
|
|
get
|
|
{
|
|
return m_Type;
|
|
}
|
|
set
|
|
{
|
|
m_Type = value;
|
|
|
|
var info = m_Table.FirstOrDefault(x => x.Type == m_Type);
|
|
|
|
if (info != null)
|
|
{
|
|
Hue = info.Hue;
|
|
Label = info.Localization;
|
|
}
|
|
else
|
|
{
|
|
Hue = 0;
|
|
Label = -1;
|
|
}
|
|
}
|
|
}
|
|
|
|
public override int LabelNumber { get { return 1071249; } } // Haochi's Pigments
|
|
|
|
public override void Serialize(GenericWriter writer)
|
|
{
|
|
base.Serialize(writer);
|
|
|
|
writer.Write((int)0);
|
|
writer.Write((int)m_Type);
|
|
}
|
|
|
|
public override void Deserialize(GenericReader reader)
|
|
{
|
|
base.Deserialize(reader);
|
|
|
|
int version = reader.ReadInt();
|
|
Type = (HaochisPigmentType)reader.ReadInt();
|
|
}
|
|
|
|
public static HoachisPigmentInfo[] Table { get { return m_Table; } }
|
|
private static HoachisPigmentInfo[] m_Table =
|
|
{
|
|
new HoachisPigmentInfo( HaochisPigmentType.None, 0, -1 ),
|
|
new HoachisPigmentInfo( HaochisPigmentType.HeartwoodSienna, 2739, 1157275 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.CampionWhite, 2738, 1157274 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.YewishPine, 2737, 1157273 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.MinocianFire, 2736, 1157272 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.NinjaBlack, 1175, 1071246 ), // NOT Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.Olive, 2730, 1018352 ), // Not Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.DarkReddishBrown, 1148, 1071247 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.Yellow, 1169, 1071245 ), // NOT Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.PrettyPink, 1168, 1071244 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.MidnightBlue, 1176, 1071248 ), // NOT Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.Emerald, 1173, 1023856 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.SmokyGold, 1801, 1115467 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.GhostsGrey, 1000, 1115468 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.OceanBlue, 1195, 1115471 ), // Verified
|
|
new HoachisPigmentInfo( HaochisPigmentType.CelticLime, 2733, 1157269 ), // Verified
|
|
};
|
|
|
|
public class HoachisPigmentInfo
|
|
{
|
|
public HaochisPigmentType Type { get; private set; }
|
|
public int Hue { get; private set; }
|
|
public int Localization { get; private set; }
|
|
|
|
public HoachisPigmentInfo(HaochisPigmentType type, int hue, int loc)
|
|
{
|
|
Type = type;
|
|
Hue = hue;
|
|
Localization = loc;
|
|
}
|
|
}
|
|
}
|
|
}
|