]> jfr.im git - irc/gameservirc.git/blame - gameserv-2.0/libgameservgldl/include/GameServ/GameLayer/GameObjects/LevelGO.h
I implemented a mock forest driver and found a problem in using the singleton design...
[irc/gameservirc.git] / gameserv-2.0 / libgameservgldl / include / GameServ / GameLayer / GameObjects / LevelGO.h
CommitLineData
3d5a42ee 1#ifndef __GS__LEVEL_H__\r
2#define __GS__LEVEL_H__\r
3#include <GameServ/GameLayer/GameObjects/GameObject.h>\r
4using GameServ::GameLayer::GameObjects::GameObject;\r
5#include <GameServ/GameLayer/GameObjects/MasterGO.h>\r
6using GameServ::GameLayer::GameObjects::MasterGO;\r
7#include <GameServ/GameLayer/GameObjects/MonsterGO.h>\r
8using GameServ::GameLayer::GameObjects::MonsterGO;\r
9\r
3ab6f12a 10#include <GameServ/Types.h>\r
11using GameServ::Types::ObjectTypes;\r
142e3ca5 12using GameServ::Types::Range;\r
3ab6f12a 13\r
14#include <boost/smart_ptr/shared_ptr.hpp>\r
15using boost::shared_ptr;\r
16\r
3d5a42ee 17#include <string>\r
18using std::string;\r
19#include <vector>\r
20using std::vector;\r
21\r
22#include <boost/smart_ptr/shared_ptr.hpp>\r
23using boost::shared_ptr;\r
24\r
25namespace GameServ { namespace GameLayer { namespace GameObjects\r
26{\r
27 class LevelGO : public GameObject\r
28 {\r
29 public:\r
30\r
31 LevelGO();\r
32 LevelGO(const string &Id);\r
33\r
34 virtual ~LevelGO();\r
35\r
3d5a42ee 36 virtual LevelGO *Clone(void) const;\r
37\r
3ab6f12a 38 virtual ObjectTypes::ObjectType ObjectType(void) const;\r
39\r
142e3ca5 40 //! Property set - Level number\r
41 void Number(const unsigned int &value);\r
3ab6f12a 42\r
142e3ca5 43 //! Property get - Level number\r
44 unsigned int Number(void) const;\r
3ab6f12a 45\r
142e3ca5 46 //! Property set - Strength Range\r
fadef98f 47 void StrengthRange(const Range<int> &value);\r
142e3ca5 48 //! Property get - Strength Range\r
fadef98f 49 Range<int> StrengthRange(void) const;\r
3ab6f12a 50\r
3ab6f12a 51\r
142e3ca5 52 //! Property set - Defense Range\r
fadef98f 53 void DefenseRange(const Range<int> &value);\r
142e3ca5 54 //! Property get - Defense Range\r
fadef98f 55 Range<int> DefenseRange(void) const;\r
142e3ca5 56\r
57 //! Property set - Gold Range\r
fadef98f 58 void GoldRange(const Range<int> &value);\r
142e3ca5 59 //! Property get - Gold Range\r
fadef98f 60 Range<int> GoldRange(void) const;\r
142e3ca5 61\r
62 //! Property set - Experience Range\r
fadef98f 63 void ExperienceRange(const Range<int> &value);\r
142e3ca5 64 //! Property get - Experience Range\r
fadef98f 65 Range<int> ExperienceRange(void) const;\r
142e3ca5 66\r
67\r
68 //! Property set - Health Range\r
fadef98f 69 void HealthRange(const Range<int> &value);\r
142e3ca5 70 //! Property get - Health Range\r
fadef98f 71 Range<int> HealthRange(void) const;\r
142e3ca5 72\r
3d5a42ee 73 \r
142e3ca5 74 private:\r
75 unsigned int mNumber;\r
fadef98f 76 Range<int> mStrength;\r
77 Range<int> mDefense;\r
78 Range<int> mGold;\r
79 Range<int> mExperience;\r
80 Range<int> mHealth;\r
3d5a42ee 81 };\r
82}}} // GameServ::GameLayer::GameObjects\r
83#endif