]> jfr.im git - irc/gameservirc.git/blame - gameserv-2.0/libgameservgldl/include/GameServ/GameLayer/GameObjects/MonsterGO.h
As part of sticking to the Single Responsibility Principle of OOD, I am creating...
[irc/gameservirc.git] / gameserv-2.0 / libgameservgldl / include / GameServ / GameLayer / GameObjects / MonsterGO.h
CommitLineData
3d5a42ee 1#ifndef __GS__MONSTER_H__\r
2#define __GS__MONSTER_H__\r
3#include <GameServ/GameLayer/GameObjects/GameObject.h>\r
4using GameServ::GameLayer::GameObjects::GameObject;\r
5\r
6#include <string>\r
7using std::string;\r
8\r
9namespace GameServ { namespace GameLayer { namespace GameObjects\r
10{\r
11 class MonsterGO : public GameObject\r
12 {\r
13 public:\r
14\r
15 MonsterGO();\r
16 MonsterGO(const string &Id);\r
17\r
18 virtual ~MonsterGO();\r
19\r
20 //! Property get - Name\r
21 string Name(void) const;\r
22 //! Property set - Name\r
23 void Name(const string &value);\r
24\r
25 //! Property get - Gold\r
26 unsigned long int Gold(void) const;\r
27 //! Property set - Gold\r
28 void Gold(const unsigned long int &value);\r
29\r
30 //! Property get - Health\r
31 int Health(void) const;\r
32 //! Property set - Health\r
33 void Health(const int &value);\r
34\r
35 //! Property get - Max Health\r
36 int MaxHealth(void) const;\r
37 //! Property set - Max Health\r
38 void MaxHealth(const int &value);\r
39\r
40 //! Property get - Strength\r
41 int Strength(void) const;\r
42 //! Property set - Strength\r
43 void Strength(const int &value);\r
44\r
45 //! Property get - Defense\r
46 int Defense(void) const;\r
47 //! Property set - Defense\r
48 void Defense(const int &value);\r
49\r
50 //! Property get - Weapon Name\r
51 string WeaponName(void) const;\r
52\r
53 //! Property set - Weapon Name\r
54 void WeaponName(const string &value);\r
55\r
56 //! Property get - Death Cry\r
57 string DeathCry(void) const;\r
58\r
59 //! Property set - Death Cry\r
60 void DeathCry(const string &value);\r
61\r
62 bool operator==(const MonsterGO &right) const;\r
63 bool operator!=(const MonsterGO &right) const;\r
64\r
65 virtual MonsterGO *Clone(void) const;\r
66\r
1134c368 67 virtual ObjectTypes::ObjectType ObjectType(void) const;\r
68\r
3d5a42ee 69 private:\r
70 string mName;\r
71 unsigned long int mGold;\r
72 int mHealth;\r
73 int mMaxHealth;\r
74 int mStrength;\r
75 int mDefense;\r
76 string mWeaponName;\r
77 string mDeathCry;\r
78 };\r
79}}} // GameServ::GameLayer::GameObjects\r
80#endif