-
Notifications
You must be signed in to change notification settings - Fork 1
/
map.h
36 lines (25 loc) · 964 Bytes
/
map.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
#ifndef __MAP_H__
#define __MAP_H__
#include <deque>
#include "tile.h"
typedef std::deque<Creature*> CreatureDeque;
class Map
{
public:
Map();
~Map(){};
void getSpectators(unsigned int posx, unsigned int posy, unsigned char posz, std::deque<Creature*> &monsters);
void getSpectators(Position& centerPos, std::deque<Creature*> &monsters);
void getFloorAreaPlayers(unsigned int posx, unsigned int posy, unsigned char posz, std::deque<Player*> &players);
unsigned int posToIndex(unsigned int x, unsigned int y, unsigned char z);
void indexToPos(unsigned int &x, unsigned int &y, unsigned char &z, unsigned int index);
void load();
void setTile(Position pos, Tile *tile);
void setTile(unsigned short x, unsigned short y, unsigned char z, Tile *tile);
Tile *getTile(Position pos);
Tile *getTile(unsigned short x, unsigned short y, unsigned char z);
void save();
private:
Tile *tiles_tab[6144000];
};
#endif