2007-06-25 17:55:45 +03:00
|
|
|
#ifndef MAPHANDLER_H
|
|
|
|
#define MAPHANDLER_H
|
|
|
|
|
2007-06-06 19:12:12 +03:00
|
|
|
#include "CAmbarCendamo.h"
|
2007-06-25 17:55:45 +03:00
|
|
|
#include "CSemiDefHandler.h"
|
|
|
|
#include "CGameInfo.h"
|
|
|
|
|
|
|
|
class CMapHandler
|
2007-06-06 19:12:12 +03:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
CAmbarCendamo * reader;
|
|
|
|
SDL_Surface *** terrainBitmap;
|
|
|
|
SDL_Surface *** undTerrainBitmap; // used only if there is underground level
|
2007-06-09 05:32:43 +03:00
|
|
|
SDL_Surface * terrainRect(int x, int y, int dx, int dy, int level=0);
|
2007-06-25 17:55:45 +03:00
|
|
|
SDL_Surface * terrBitmap(int x, int y);
|
|
|
|
SDL_Surface * undTerrBitmap(int x, int y);
|
|
|
|
CSemiDefHandler * fullHide;
|
|
|
|
CSemiDefHandler * partialHide;
|
|
|
|
|
2007-06-26 15:38:58 +03:00
|
|
|
std::vector< std::vector<char> > visibility; //true means that pointed place is visible
|
|
|
|
std::vector< std::vector<char> > undVisibility; //true means that pointed place is visible
|
|
|
|
char & visAccess(int x, int y);
|
|
|
|
char & undVisAccess(int x, int y);
|
2007-06-25 17:55:45 +03:00
|
|
|
SDL_Surface mirrorImage(SDL_Surface *src); //what is this??
|
2007-06-26 15:38:58 +03:00
|
|
|
SDL_Surface * getVisBitmap(int x, int y, std::vector< std::vector<char> > & visibility);
|
2007-06-06 19:12:12 +03:00
|
|
|
void init();
|
2007-06-25 17:55:45 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif //MAPHANDLER_H
|