]> jfr.im git - irc/gameservirc.git/blame - gameserv-2.0/libgameservgldl/src/GameLayer/GameObjects/ItemGO.cpp
Added a core gameserv project with types and exceptions
[irc/gameservirc.git] / gameserv-2.0 / libgameservgldl / src / GameLayer / GameObjects / ItemGO.cpp
CommitLineData
4534c364 1#include <GameServ/GameLayer/GameObjects/ItemGO.h>\r
2using GameServ::GameLayer::GameObjects::ItemGO;\r
3\r
e0d3cb09 4#include <GameServ/Types.h>\r
5using GameServ::Types::ItemTypes;\r
6\r
4534c364 7#include <string>\r
8using std::string;\r
9#include <vector>\r
10using std::vector;\r
11\r
551b6a1d 12#include <boost/shared_ptr.hpp>\r
13using boost::shared_ptr;\r
14\r
e0d3cb09 15ItemGO::ItemGO() : GameObject(), mName(""), mPrice(0), mUses(1), mType(ItemTypes::NOTYPE)\r
4534c364 16{\r
17 mModifiers.resize(8);\r
18}\r
19\r
20ItemGO::ItemGO(const string &name, const unsigned long &price, const int &uses, const vector<string> &modifiers) : GameObject(),\r
e0d3cb09 21mName(name), mPrice(price), mUses(uses), mType(ItemTypes::NOTYPE)\r
4534c364 22{\r
23 mModifiers.clear();\r
24 mModifiers.insert(mModifiers.begin(), modifiers.begin(), modifiers.end());\r
25}\r
26\r
27ItemGO::~ItemGO()\r
28{\r
29}\r
30\r
31string ItemGO::Name(void) const\r
32{\r
33 return mName;\r
34}\r
35\r
36void ItemGO::Name(const string &value)\r
37{\r
38 mName = value;\r
39}\r
40\r
41unsigned long int ItemGO::Price(void) const\r
42{\r
43 return mPrice;\r
44}\r
45\r
46void ItemGO::Price(const unsigned long int &price)\r
47{\r
48 mPrice = price;\r
49}\r
50\r
51int ItemGO::Uses(void) const\r
52{\r
53 return mUses;\r
54}\r
55\r
56void ItemGO::Uses(const int &value)\r
57{\r
58 mUses = value;\r
59}\r
60\r
e0d3cb09 61ItemTypes::ItemType ItemGO::Type(void) const\r
4534c364 62{\r
63 return mType;\r
64}\r
65\r
e0d3cb09 66void ItemGO::Type(const ItemTypes::ItemType &value)\r
4534c364 67{\r
68 mType = value;\r
69}\r
70\r
71vector<string> ItemGO::Modifiers(void) const\r
72{\r
73 return mModifiers;\r
74}\r
75\r
76void ItemGO::Modifiers(const vector<string> &value)\r
77{\r
78 mModifiers.clear();\r
79 mModifiers.insert(mModifiers.begin(), value.begin(), value.end());\r
80}\r
81\r
82ItemGO *ItemGO::Clone(void) const\r
83{\r
84 return new ItemGO(*this);\r
85}\r
86\r
87\r
88\r
89\r
90\r
91\r
92\r