This commit is contained in:
parent
1075b09fb0
commit
c6fc65ca73
3 changed files with 21 additions and 6 deletions
|
@ -91,6 +91,7 @@ int s_globalLevelSelectThing=120;
|
|||
int CGameScene::s_readyToExit;
|
||||
int CGameScene::s_levelFinished;
|
||||
|
||||
SpriteBank *CGameScene::s_BackSprites;
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
|
@ -117,7 +118,12 @@ void CGameScene::init()
|
|||
|
||||
CFader::setFadingIn();
|
||||
|
||||
s_BackSprites=new ("BackGfx Sprites") SpriteBank();
|
||||
s_BackSprites->load(LEVELS_LEVELBACKGFX_SPR);
|
||||
|
||||
initLevel();
|
||||
CFileIO::EnableASync(true);
|
||||
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -140,11 +146,13 @@ int CGameScene::canPause()
|
|||
|
||||
void CGameScene::shutdown()
|
||||
{
|
||||
CFileIO::EnableASync(false);
|
||||
shutdownLevel(true);
|
||||
CSoundMediator::dumpSong();
|
||||
|
||||
m_pauseMenu->shutdown(); delete m_pauseMenu;
|
||||
s_genericFont->dump(); delete s_genericFont;
|
||||
s_BackSprites->dump(); delete s_BackSprites;
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -168,6 +176,7 @@ void CGameScene::think(int _frames)
|
|||
// }
|
||||
//#endif
|
||||
|
||||
CFileIO::LoadASyncFiles();
|
||||
|
||||
if(s_readyToExit)
|
||||
{
|
||||
|
@ -274,12 +283,15 @@ void CGameScene::initLevel()
|
|||
|
||||
// Init actors (needs moving and tidying
|
||||
int actorNum;
|
||||
sThingActor **actorList = Level.getActorList();
|
||||
|
||||
sThingActor **actorList = Level.getActorList();
|
||||
if (actorList)
|
||||
{
|
||||
for ( actorNum = 0 ; actorNum < Level.getActorCount() ; actorNum++ )
|
||||
{
|
||||
CNpcEnemy *enemy;
|
||||
enemy = new ("npc enemy") CNpcEnemy;
|
||||
ASSERT(enemy);
|
||||
enemy->setTypeFromMapEdit( actorList[actorNum]->Type );
|
||||
enemy->init();
|
||||
enemy->setLayerCollision( Level.getCollisionLayer() );
|
||||
|
@ -312,7 +324,7 @@ void CGameScene::initLevel()
|
|||
|
||||
enemy->postInit();
|
||||
}
|
||||
|
||||
}
|
||||
// Song is loaded/dumped by the level, and played from here. This just gives some
|
||||
// better timing over when it starts (pkg)
|
||||
CSoundMediator::playSong();
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
/*****************************************************************************/
|
||||
class FontBank;
|
||||
|
||||
class SpriteBank;
|
||||
class CGameScene : public CScene
|
||||
{
|
||||
public:
|
||||
|
@ -38,6 +38,8 @@ virtual int canPause();
|
|||
static void setReadyToExit() {s_readyToExit=true;}
|
||||
static void levelFinished() {s_levelFinished=true;}
|
||||
|
||||
static SpriteBank *GetBackSprites() {return(s_BackSprites);}
|
||||
|
||||
protected:
|
||||
|
||||
void initLevel();
|
||||
|
@ -52,6 +54,8 @@ protected:
|
|||
static int s_readyToExit;
|
||||
static int s_levelFinished;
|
||||
|
||||
static SpriteBank *s_BackSprites;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
#include "LayerBack.h"
|
||||
|
||||
#include <levelbackgfx.h>
|
||||
#include "Game\game.h"
|
||||
|
||||
sBackRGBTable CLayerBack::BackRGBTable[]=
|
||||
{
|
||||
|
@ -54,14 +55,12 @@ CLayerBack::CLayerBack(sLayerHdr *Hdr,sTile *TileBank) : CLayerTile(Hdr,TileBank
|
|||
ASSERT(Data->Count<=LAYER_SHADE_RGB_MAX);
|
||||
BandCount=Data->Count-1;
|
||||
|
||||
Sprites=new ("BackGfx Sprites") SpriteBank();
|
||||
Sprites->load(LEVELS_LEVELBACKGFX_SPR);
|
||||
Sprites=CGameScene::GetBackSprites();
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
CLayerBack::~CLayerBack()
|
||||
{
|
||||
Sprites->dump(); delete Sprites;
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue