EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Moon.h
Go to the documentation of this file.
1 
12 #ifndef EVEMU_PLANET_MOON_H_
13 #define EVEMU_PLANET_MOON_H_
14 
15 #include "system/SystemEntity.h"
16 
17 class PyServiceMgr;
18 class SystemManager;
19 
20 class Moon
21 {
22 public:
23  Moon();
24  ~Moon() { /* do nothing here */ }
25 
26 };
27 
28 class MoonSE
29 : public StaticSystemEntity
30 {
31 public:
33  virtual ~MoonSE() { /* Do nothing here */ }
34 
35  /* class type pointer querys. */
36  virtual MoonSE* GetMoonSE() { return this; }
37  /* class type tests. */
38  virtual bool IsMoonSE() { return true; }
39 
40  /* virtual functions default to base class and overridden as needed */
41  virtual bool LoadExtras();
42 
43 
44  /* specific functions handled in this class. */
46  bool HasTower() { return (m_towerSE != nullptr); }
47  void SetTower(StructureSE* pSE) { m_towerSE = pSE; }
48 
49  std::map<uint16, uint8>::iterator GooEnd() { return m_resources.end(); }
50  std::map<uint16, uint8>::iterator GooBegin() { return m_resources.begin(); }
51 
52 
53 private:
55 
56  std::map<uint16, uint8> m_resources; // moon goo (typeID, amt)
57 
58 };
59 
60 
61 
62 #endif // EVEMU_PLANET_MOON_H_
StructureSE * m_towerSE
Definition: Moon.h:54
Moon()
Definition: Moon.cpp:49
virtual bool LoadExtras()
Definition: Moon.cpp:128
Definition: Moon.h:20
std::map< uint16, uint8 >::iterator GooEnd()
Definition: Moon.h:49
StructureSE * GetMyTower()
Definition: Moon.h:45
virtual MoonSE * GetMoonSE()
Definition: Moon.h:36
std::map< uint16, uint8 > m_resources
Definition: Moon.h:56
MoonSE(InventoryItemRef self, PyServiceMgr &services, SystemManager *system)
Definition: Moon.cpp:55
std::map< uint16, uint8 >::iterator GooBegin()
Definition: Moon.h:50
bool HasTower()
Definition: Moon.h:46
virtual bool IsMoonSE()
Definition: Moon.h:38
Definition: Moon.h:28
void SetTower(StructureSE *pSE)
Definition: Moon.h:47
virtual ~MoonSE()
Definition: Moon.h:33
~Moon()
Definition: Moon.h:24