Files
oboe/osx/regtown.h
Celtic Minstrel 3efed5dcc7 - Tidied scenario editor code – proper indentation applied, no more multiple statements on one line, etc
- Changed various terrain arrays from unsigned char to unsigned short to support more than 256 terrain types.

git-svn-id: http://openexile.googlecode.com/svn/trunk@42 4ebdad44-0ea0-11de-aab3-ff745001d230
2009-04-28 16:45:32 +00:00

64 lines
1.5 KiB
C++

/*
* regtown.h
* BoE
*
* Created by Celtic Minstrel on 24/04/09.
*
*/
namespace legacy {
struct big_tr_type;
struct ave_tr_type;
struct tiny_tr_type;
};
class cBigTown : public cTown { // formerly big_tr_type
unsigned short _terrain[64][64];
rectangle _room_rect[16];
cCreature _creatures[60];
unsigned char _lighting[8][64];
public:
void append(legacy::big_tr_type& old);
unsigned short& terrain(size_t x, size_t y);
rectangle& room_rect(size_t i);
cCreature& creatures(size_t i);
unsigned char& lighting(size_t i, size_t r);
short max_dim();
short max_monst();
cBigTown();
};
class cMedTown : public cTown { // formerly ave_tr_type
unsigned short _terrain[48][48];
rectangle _room_rect[16];
cCreature _creatures[40];
unsigned char _lighting[6][48];
public:
void append(legacy::ave_tr_type& old);
unsigned short& terrain(size_t x, size_t y);
rectangle& room_rect(size_t i);
cCreature& creatures(size_t i);
unsigned char& lighting(size_t i, size_t r);
short max_dim();
short max_monst();
cMedTown();
};
class cTinyTown : public cTown { // formerly tiny_tr_type
unsigned short _terrain[32][32];
rectangle _room_rect[16];
cCreature _creatures[30];
unsigned char _lighting[4][32];
public:
void append(legacy::tiny_tr_type& old);
unsigned short& terrain(size_t x, size_t y);
rectangle& room_rect(size_t i);
cCreature& creatures(size_t i);
unsigned char& lighting(size_t i, size_t r);
short max_dim();
short max_monst();
cTinyTown();
};