2000-12-14 17:38:34 +01:00
|
|
|
/***************************/
|
|
|
|
/*** 3d Tile Layer Class ***/
|
|
|
|
/***************************/
|
2000-12-14 17:01:49 +01:00
|
|
|
|
2001-03-09 00:02:47 +01:00
|
|
|
#ifndef __LAYER_TILE_3D_Hx__
|
|
|
|
#define __LAYER_TILE_3D_Hx__
|
2000-12-14 17:01:49 +01:00
|
|
|
|
|
|
|
|
|
|
|
/*****************************************************************************/
|
2001-03-09 00:12:02 +01:00
|
|
|
class FontBank;
|
2000-12-14 17:38:34 +01:00
|
|
|
class CLayerTile3d : public CLayerTile
|
2000-12-14 17:01:49 +01:00
|
|
|
{
|
|
|
|
public:
|
2001-04-19 17:12:21 +02:00
|
|
|
CLayerTile3d(sLevelHdr *LevelHdr,sLayerHdr *Hdr);
|
2000-12-14 17:38:34 +01:00
|
|
|
~CLayerTile3d();
|
2000-12-14 17:01:49 +01:00
|
|
|
|
2001-03-09 00:02:47 +01:00
|
|
|
enum
|
|
|
|
{
|
2001-04-19 01:04:03 +02:00
|
|
|
SCREEN_TILE_ADJ_UP =(2*1),
|
|
|
|
SCREEN_TILE_ADJ_DOWN =(2*1),
|
|
|
|
SCREEN_TILE_ADJ_LEFT =(2*1),
|
|
|
|
SCREEN_TILE_ADJ_RIGHT =(5*1),
|
2001-03-09 00:02:47 +01:00
|
|
|
SCREEN_TILE_WIDTH3D= SCREEN_TILE_WIDTH+SCREEN_TILE_ADJ_RIGHT,
|
|
|
|
SCREEN_TILE_HEIGHT3D= SCREEN_TILE_HEIGHT+SCREEN_TILE_ADJ_DOWN,
|
2001-03-12 16:24:37 +01:00
|
|
|
BLOCK_MULT = 16
|
2001-03-09 00:02:47 +01:00
|
|
|
};
|
|
|
|
|
2001-02-22 15:55:13 +01:00
|
|
|
void init(DVECTOR &MapPos,int Shift);
|
2001-01-04 22:53:14 +01:00
|
|
|
void shutdown();
|
2001-03-09 00:02:47 +01:00
|
|
|
void think(DVECTOR &MapPos);
|
2001-01-04 22:53:14 +01:00
|
|
|
void render();
|
2000-12-14 17:01:49 +01:00
|
|
|
|
|
|
|
protected:
|
2001-04-19 01:04:03 +02:00
|
|
|
sTile3d *TileBank3d;
|
2001-03-08 00:20:09 +01:00
|
|
|
sTri *TriList;
|
|
|
|
sQuad *QuadList;
|
|
|
|
sVtx *VtxList;
|
2001-03-12 16:24:37 +01:00
|
|
|
DVECTOR RenderOfs;
|
2000-12-14 17:01:49 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*****************************************************************************/
|
|
|
|
|
|
|
|
#endif
|