-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathRareItem.cs
86 lines (70 loc) · 2.15 KB
/
RareItem.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
namespace Server.Items
{
class RareItem : Item
{
private int m_ItemId;
private int m_ItemHue;
private string m_ItemName;
private string m_Context;
public int ItemId
{
get { return m_ItemId; }
set { m_ItemId = value; InvalidateProperties(); }
}
public int ItemHue
{
get { return m_ItemHue; }
set { m_ItemHue = value; InvalidateProperties(); }
}
public string ItemName
{
get { return m_ItemName; }
set { m_ItemName = value; InvalidateProperties(); }
}
public string Context
{
get { return m_Context; }
set { m_Context = value; InvalidateProperties(); }
}
[Constructable]
public RareItem(int itemid, int itemhue, string name, bool blessed = false, string context = "")
{
ItemID = itemid;
Hue = itemhue;
Name = name;
Weight = 1;
if (blessed)
LootType = LootType.Blessed;
if (context != "")
m_Context = context;
}
public override void GetProperties(ObjectPropertyList list)
{
base.GetProperties(list);
if(m_Context != "")
list.Add(m_Context);
}
public RareItem(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(0);
writer.Write(m_ItemId);
writer.Write(m_ItemHue);
writer.Write(m_ItemName);
writer.Write(m_Context);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
m_ItemId = reader.ReadInt();
m_ItemHue = reader.ReadInt();
m_ItemName = reader.ReadString();
m_Context = reader.ReadString();
}
}
}