-
Notifications
You must be signed in to change notification settings - Fork 1
/
RoomTile.h
50 lines (41 loc) · 1.04 KB
/
RoomTile.h
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
//RoomTile.h: declares the class RoomTile. RoomTiles will make up all DungeonLevels
#ifndef _RoomTile
#define _RoomTile
#include<vector>
class Item;
class Creature;
class RoomTile
{
public:
//Constructor
RoomTile(bool bCollectable, bool bWalkable, char cDisplayChar);
//Destructor
~RoomTile();
//Setters
void setIntensity(int iIntensity);
void setCollectable(bool bCollectable);
void setWalkable(bool bWalkable);
void setDisplayChar(char cDisplayChar);
void setCreature(Creature* aCreature);
void setItems(std::vector<Item*> vItems);
// void std::vector<Entity*> setContainedEntities();
//Getters
int getIntensity() const;
std::vector<Item*> getItems() const;
Creature* getCreature() const;
bool getCollectable() const;
bool getWalkable() const;
char getDisplayChar() const;
//Other methods
// void addIntensity(int iIntensity);
void add(Item* anItem);
void remove(Item* anItem);
private:
int m_iIntensity;
std::vector<Item*> m_vItems;
bool m_bCollectable;
bool m_bWalkable;
char m_cDisplayChar;
Creature* m_pCreature;
};
#endif