This commit is contained in:
Daveo 2001-04-03 21:28:56 +00:00
parent f9aa9fea87
commit 9fb9138116
9 changed files with 509 additions and 428 deletions

View file

@ -9,14 +9,27 @@
#include "level/layertile.h"
#include "level/layercollision.h"
/*****************************************************************************/
// Woo.. this is getting big now isn't it?
struct sLvlTab
{
FileEquate LevelInfo;
FileEquate TileBank,Level,Tex;
int exitX,exitY,exitW,exitH;
int spawnX,spawnY;
int Spr0,Spr1;
int songId;
};
/*****************************************************************************/
class CLayer;
class CLevel
{
public:
CLevel();
// Scene Handlers
void init();
void shutdown();
void shutdown(bool CleanUp);
void render();
void think(int _frames);
@ -28,10 +41,17 @@ public:
CLayerCollision *getCollisionLayer() {return CollisionLayer;}
DVECTOR getMapSize();
int GetNextLevel(int Lvl);
private:
void initLayers();
void initNewLevel(sLvlTab *LevelDat);
void DisplayLoadingScreen();
void DoPaulsTempCrap(sLvlTab *LevelDat);
sLevelInfo *LevelInfo;
u8 *PakBuffer,*LevelBuffer;
sLvlHdr *LevelHdr;
sTile *TileBank;
static DVECTOR MapPos;
static DVECTOR s_playerSpawnPos;
@ -40,8 +60,10 @@ private:
// Tile Layers
CLayerTile *TileLayers[CLayerTile::LAYER_TILE_TYPE_MAX];
// Collision
CLayerCollision *CollisionLayer;
// Things
int ActorCount;
sThingActor **ActorList;