This commit is contained in:
parent
1a606c048d
commit
d18e92c6ae
10 changed files with 194 additions and 33 deletions
|
@ -70,6 +70,10 @@
|
||||||
#include "map\map.h"
|
#include "map\map.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef __GAME_GAMESLOT_H__
|
||||||
|
#include "game\gameslot.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* Std Lib
|
/* Std Lib
|
||||||
------- */
|
------- */
|
||||||
|
@ -169,6 +173,11 @@ void CFrontEndScene::init()
|
||||||
m_font=new ("frontendfont") FontBank();
|
m_font=new ("frontendfont") FontBank();
|
||||||
m_font->initialise(&standardFont);
|
m_font->initialise(&standardFont);
|
||||||
m_font->setJustification(FontBank::JUST_CENTRE);
|
m_font->setJustification(FontBank::JUST_CENTRE);
|
||||||
|
|
||||||
|
#ifndef __E3__
|
||||||
|
CGameSlotManager::eraseGameSlot(0);
|
||||||
|
CGameSlotManager::setActiveSlot(0);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -296,6 +296,21 @@ CPlayer * CGameScene::getPlayer()
|
||||||
return( m_player );
|
return( m_player );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
int CGameScene::getChapterNumber()
|
||||||
|
{
|
||||||
|
return Level.getCurrentChapter();
|
||||||
|
}
|
||||||
|
int CGameScene::getLevelNumber()
|
||||||
|
{
|
||||||
|
return Level.getCurrentChapterLevel();
|
||||||
|
}
|
||||||
|
|
||||||
|
int CGameScene::getTotalSpatCountForThisLevel()
|
||||||
|
{
|
||||||
|
return Level.getTotalSpatCount();
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
void CGameScene::respawnLevel()
|
void CGameScene::respawnLevel()
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,6 +39,10 @@ virtual int canPause();
|
||||||
int readyToShutdown();
|
int readyToShutdown();
|
||||||
char *getSceneName() {return "Game";}
|
char *getSceneName() {return "Game";}
|
||||||
|
|
||||||
|
int getChapterNumber();
|
||||||
|
int getLevelNumber();
|
||||||
|
int getTotalSpatCountForThisLevel();
|
||||||
|
|
||||||
CPlayer *getPlayer();
|
CPlayer *getPlayer();
|
||||||
void respawnLevel();
|
void respawnLevel();
|
||||||
void sendEvent( GAME_EVENT evt, class CThing *sourceThing );
|
void sendEvent( GAME_EVENT evt, class CThing *sourceThing );
|
||||||
|
@ -47,6 +51,7 @@ static void setReadyToExit() {s_readyToExit=true;}
|
||||||
static void levelFinished() {s_levelFinished=true;}
|
static void levelFinished() {s_levelFinished=true;}
|
||||||
static void restartlevel() {s_restartLevel=true;}
|
static void restartlevel() {s_restartLevel=true;}
|
||||||
|
|
||||||
|
|
||||||
// static MATRIX &GetCamMtx() {return(CamMtx);}
|
// static MATRIX &GetCamMtx() {return(CamMtx);}
|
||||||
static ACTOR_TYPE getActorType( int actorNum ) {return actorType[actorNum];}
|
static ACTOR_TYPE getActorType( int actorNum ) {return actorType[actorNum];}
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,14 @@
|
||||||
#include "player\player.h"
|
#include "player\player.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef __GAME_GAME_H__
|
||||||
|
#include "game\game.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __GAME_GAMESLOT_H__
|
||||||
|
#include "game\gameslot.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* Std Lib
|
/* Std Lib
|
||||||
------- */
|
------- */
|
||||||
|
@ -149,7 +157,7 @@ void CPauseMenu::init()
|
||||||
&newmode,PLAYER_MODE_DEAD);
|
&newmode,PLAYER_MODE_DEAD);
|
||||||
xpos+=TEXT_SPACING;
|
xpos+=TEXT_SPACING;
|
||||||
#else
|
#else
|
||||||
xpos+=TEXT_SPACING*2;
|
xpos+=TEXT_SPACING*4;
|
||||||
CGUIFactory::createValueButtonFrame(m_guiFrame,
|
CGUIFactory::createValueButtonFrame(m_guiFrame,
|
||||||
(FRAME_WIDTH-TEXT_BOX_WIDTH)/2,xpos,TEXT_BOX_WIDTH,TEXT_BOX_HEIGHT,
|
(FRAME_WIDTH-TEXT_BOX_WIDTH)/2,xpos,TEXT_BOX_WIDTH,TEXT_BOX_HEIGHT,
|
||||||
STR__PAUSE_MENU__CONTINUE,
|
STR__PAUSE_MENU__CONTINUE,
|
||||||
|
@ -169,6 +177,10 @@ void CPauseMenu::init()
|
||||||
xpos+=TEXT_SPACING*2;
|
xpos+=TEXT_SPACING*2;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
m_guiSpatReadout=new ("SpatReadout") CGUISpatCountReadout();
|
||||||
|
m_guiSpatReadout->init(m_guiFrame);
|
||||||
|
m_guiSpatReadout->setObjectXYWH(10,10,120,40);
|
||||||
|
|
||||||
m_active=false;
|
m_active=false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -193,10 +205,16 @@ void CPauseMenu::shutdown()
|
||||||
---------------------------------------------------------------------- */
|
---------------------------------------------------------------------- */
|
||||||
void CPauseMenu::select()
|
void CPauseMenu::select()
|
||||||
{
|
{
|
||||||
|
int chapter,level;
|
||||||
m_active=true;
|
m_active=true;
|
||||||
m_exitPauseMenuFlag=false;
|
m_exitPauseMenuFlag=false;
|
||||||
m_quitGameFlag=false;
|
m_quitGameFlag=false;
|
||||||
m_guiFrame->select();
|
m_guiFrame->select();
|
||||||
|
|
||||||
|
chapter=GameScene.getChapterNumber();
|
||||||
|
level=GameScene.getLevelNumber();
|
||||||
|
m_guiSpatReadout->setSpatCounts(CGameSlotManager::getSlotData()->getSpatulaCollectedCount(chapter,level),
|
||||||
|
GameScene.getTotalSpatCountForThisLevel());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,8 @@ private:
|
||||||
int m_exitPauseMenuFlag;
|
int m_exitPauseMenuFlag;
|
||||||
int m_quitGameFlag;
|
int m_quitGameFlag;
|
||||||
|
|
||||||
class CGUIControlFrame *m_guiFrame;
|
class CGUIControlFrame *m_guiFrame;
|
||||||
|
class CGUISpatCountReadout *m_guiSpatReadout;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,10 @@
|
||||||
#include <biglump.h>
|
#include <biglump.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef __SPR_SPRITES_H__
|
||||||
|
#include <sprites.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/*----------------------------------------------------------------------
|
/*----------------------------------------------------------------------
|
||||||
Tyepdefs && Defines
|
Tyepdefs && Defines
|
||||||
|
@ -113,8 +117,6 @@ void CGUITextReadout::setReadoutData(TextReadoutData *_data)
|
||||||
---------------------------------------------------------------------- */
|
---------------------------------------------------------------------- */
|
||||||
void CGUITextReadout::render()
|
void CGUITextReadout::render()
|
||||||
{
|
{
|
||||||
FontBank *fb;
|
|
||||||
|
|
||||||
if(!isHidden())
|
if(!isHidden())
|
||||||
{
|
{
|
||||||
getFontBank()->print((getW()-(BORDERWIDTH*2))/2,m_textY,m_textId);
|
getFontBank()->print((getW()-(BORDERWIDTH*2))/2,m_textY,m_textId);
|
||||||
|
@ -190,6 +192,84 @@ void CGUITextReadout::recalc()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*----------------------------------------------------------------------
|
||||||
|
Function:
|
||||||
|
Purpose:
|
||||||
|
Params:
|
||||||
|
Returns:
|
||||||
|
---------------------------------------------------------------------- */
|
||||||
|
void CGUISpatCountReadout::init(CGUIObject *_parent,GUIId _id)
|
||||||
|
{
|
||||||
|
CGUIObjectWithFont::init(_parent,_id);
|
||||||
|
m_spatsCollected=m_spatsTotal=0;
|
||||||
|
m_spriteBank=new ("SpatCountReadoutSprites") SpriteBank();
|
||||||
|
m_spriteBank->load(SPRITES_SPRITES_SPR);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*----------------------------------------------------------------------
|
||||||
|
Function:
|
||||||
|
Purpose:
|
||||||
|
Params:
|
||||||
|
Returns:
|
||||||
|
---------------------------------------------------------------------- */
|
||||||
|
void CGUISpatCountReadout::shutdown()
|
||||||
|
{
|
||||||
|
m_spriteBank->dump(); delete m_spriteBank;
|
||||||
|
CGUIObjectWithFont::shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*----------------------------------------------------------------------
|
||||||
|
Function:
|
||||||
|
Purpose:
|
||||||
|
Params:
|
||||||
|
Returns:
|
||||||
|
---------------------------------------------------------------------- */
|
||||||
|
void CGUISpatCountReadout::setSpatCounts(int _collected,int _total)
|
||||||
|
{
|
||||||
|
m_spatsCollected=_collected;
|
||||||
|
m_spatsTotal=_total;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*----------------------------------------------------------------------
|
||||||
|
Function:
|
||||||
|
Purpose:
|
||||||
|
Params:
|
||||||
|
Returns:
|
||||||
|
---------------------------------------------------------------------- */
|
||||||
|
void CGUISpatCountReadout::render()
|
||||||
|
{
|
||||||
|
if(!isHidden())
|
||||||
|
{
|
||||||
|
FontBank *fb;
|
||||||
|
sFrameHdr *fh;
|
||||||
|
char buf[100];
|
||||||
|
int x,y;
|
||||||
|
|
||||||
|
fb=getFontBank();
|
||||||
|
fh=m_spriteBank->getFrameHeader(FRM__SPATULA);
|
||||||
|
|
||||||
|
sprintf(buf,"%d/%d",m_spatsCollected,m_spatsTotal);
|
||||||
|
x=getW()-fb->getStringWidth(buf);
|
||||||
|
y=(getH()/2)-fb->getCharHeight();
|
||||||
|
fb->print(x,y,buf);
|
||||||
|
|
||||||
|
x=getX()+getParentX();
|
||||||
|
y=getY()+getParentY()+((getH()-fh->H)/2);
|
||||||
|
m_spriteBank->printFT4(fh,x,y,0,0,0);
|
||||||
|
}
|
||||||
|
CGUIObjectWithFont::render();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*----------------------------------------------------------------------
|
/*----------------------------------------------------------------------
|
||||||
Function:
|
Function:
|
||||||
Purpose:
|
Purpose:
|
||||||
|
|
|
@ -67,6 +67,24 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
class CGUISpatCountReadout : public CGUIObjectWithFont
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual void init(CGUIObject *_parent,GUIId _id=noId);
|
||||||
|
virtual void shutdown();
|
||||||
|
|
||||||
|
virtual void setSpatCounts(int _collected,int _total);
|
||||||
|
|
||||||
|
virtual void render();
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
int m_spatsCollected,m_spatsTotal;
|
||||||
|
class SpriteBank *m_spriteBank;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
class CGUISpriteReadout : public CGUIObjectWithSpriteBank
|
class CGUISpriteReadout : public CGUIObjectWithSpriteBank
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -93,39 +93,39 @@ extern int s_globalLevelSelectThing;
|
||||||
sLvlTab LvlTable[]=
|
sLvlTab LvlTable[]=
|
||||||
{
|
{
|
||||||
// C1
|
// C1
|
||||||
{1,1,LEVELS_CHAPTER01_LEVEL01_LVL,LEVELS_CHAPTER01_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL1},
|
{1,1, 20, LEVELS_CHAPTER01_LEVEL01_LVL,LEVELS_CHAPTER01_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL1},
|
||||||
{1,2,LEVELS_CHAPTER01_LEVEL02_LVL,LEVELS_CHAPTER01_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL2},
|
{1,2, 20, LEVELS_CHAPTER01_LEVEL02_LVL,LEVELS_CHAPTER01_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL2},
|
||||||
{1,3,LEVELS_CHAPTER01_LEVEL03_LVL,LEVELS_CHAPTER01_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL3},
|
{1,3, 20, LEVELS_CHAPTER01_LEVEL03_LVL,LEVELS_CHAPTER01_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL3},
|
||||||
{1,4,LEVELS_CHAPTER01_LEVEL04_LVL,LEVELS_CHAPTER01_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL4},
|
{1,4, 20, LEVELS_CHAPTER01_LEVEL04_LVL,LEVELS_CHAPTER01_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER1_LEVEL4},
|
||||||
|
|
||||||
// C2
|
// C2
|
||||||
{2,1,LEVELS_CHAPTER02_LEVEL01_LVL,LEVELS_CHAPTER02_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL1},
|
{2,1, 20, LEVELS_CHAPTER02_LEVEL01_LVL,LEVELS_CHAPTER02_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL1},
|
||||||
{2,2,LEVELS_CHAPTER02_LEVEL02_LVL,LEVELS_CHAPTER02_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL2},
|
{2,2, 20, LEVELS_CHAPTER02_LEVEL02_LVL,LEVELS_CHAPTER02_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL2},
|
||||||
{2,3,LEVELS_CHAPTER02_LEVEL03_LVL,LEVELS_CHAPTER02_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL3},
|
{2,3, 20, LEVELS_CHAPTER02_LEVEL03_LVL,LEVELS_CHAPTER02_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL3},
|
||||||
{2,4,LEVELS_CHAPTER02_LEVEL04_LVL,LEVELS_CHAPTER02_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL4},
|
{2,4, 20, LEVELS_CHAPTER02_LEVEL04_LVL,LEVELS_CHAPTER02_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER2_LEVEL4},
|
||||||
// C3
|
// C3
|
||||||
{3,1,LEVELS_CHAPTER03_LEVEL01_LVL,LEVELS_CHAPTER03_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL1},
|
{3,1, 20, LEVELS_CHAPTER03_LEVEL01_LVL,LEVELS_CHAPTER03_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL1},
|
||||||
{3,2,LEVELS_CHAPTER03_LEVEL02_LVL,LEVELS_CHAPTER03_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL2},
|
{3,2, 20, LEVELS_CHAPTER03_LEVEL02_LVL,LEVELS_CHAPTER03_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL2},
|
||||||
{3,3,LEVELS_CHAPTER03_LEVEL03_LVL,LEVELS_CHAPTER03_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL3},
|
{3,3, 20, LEVELS_CHAPTER03_LEVEL03_LVL,LEVELS_CHAPTER03_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL3},
|
||||||
{3,4,LEVELS_CHAPTER03_LEVEL04_LVL,LEVELS_CHAPTER03_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL4},
|
{3,4, 20, LEVELS_CHAPTER03_LEVEL04_LVL,LEVELS_CHAPTER03_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER3_LEVEL4},
|
||||||
// C4
|
// C4
|
||||||
{4,1,LEVELS_CHAPTER04_LEVEL01_LVL,LEVELS_CHAPTER04_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL1},
|
{4,1, 20, LEVELS_CHAPTER04_LEVEL01_LVL,LEVELS_CHAPTER04_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL1},
|
||||||
{4,2,LEVELS_CHAPTER04_LEVEL02_LVL,LEVELS_CHAPTER04_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL2},
|
{4,2, 20, LEVELS_CHAPTER04_LEVEL02_LVL,LEVELS_CHAPTER04_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL2},
|
||||||
{4,3,LEVELS_CHAPTER04_LEVEL03_LVL,LEVELS_CHAPTER04_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL3},
|
{4,3, 20, LEVELS_CHAPTER04_LEVEL03_LVL,LEVELS_CHAPTER04_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL3},
|
||||||
{4,4,LEVELS_CHAPTER04_LEVEL04_LVL,LEVELS_CHAPTER04_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL4},
|
{4,4, 20, LEVELS_CHAPTER04_LEVEL04_LVL,LEVELS_CHAPTER04_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER4_LEVEL4},
|
||||||
// C5
|
// C5
|
||||||
{5,1,LEVELS_CHAPTER05_LEVEL01_LVL,LEVELS_CHAPTER05_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL1},
|
{5,1, 20, LEVELS_CHAPTER05_LEVEL01_LVL,LEVELS_CHAPTER05_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL1},
|
||||||
{5,2,LEVELS_CHAPTER05_LEVEL02_LVL,LEVELS_CHAPTER05_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL2},
|
{5,2, 20, LEVELS_CHAPTER05_LEVEL02_LVL,LEVELS_CHAPTER05_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL2},
|
||||||
{5,3,LEVELS_CHAPTER05_LEVEL03_LVL,LEVELS_CHAPTER05_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL3},
|
{5,3, 20, LEVELS_CHAPTER05_LEVEL03_LVL,LEVELS_CHAPTER05_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL3},
|
||||||
{5,4,LEVELS_CHAPTER05_LEVEL04_LVL,LEVELS_CHAPTER05_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL4},
|
{5,4, 20, LEVELS_CHAPTER05_LEVEL04_LVL,LEVELS_CHAPTER05_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER5_LEVEL4},
|
||||||
// C6
|
// C6
|
||||||
{6,1,LEVELS_CHAPTER06_LEVEL01_LVL,LEVELS_CHAPTER06_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER6_ROLLERCOASTER},
|
{6,1, 20, LEVELS_CHAPTER06_LEVEL01_LVL,LEVELS_CHAPTER06_LEVEL01_TEX, CSoundMediator::SONG_CHAPTER6_ROLLERCOASTER},
|
||||||
{6,2,LEVELS_CHAPTER06_LEVEL02_LVL,LEVELS_CHAPTER06_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER6_SNAILRACE},
|
{6,2, 20, LEVELS_CHAPTER06_LEVEL02_LVL,LEVELS_CHAPTER06_LEVEL02_TEX, CSoundMediator::SONG_CHAPTER6_SNAILRACE},
|
||||||
{6,3,LEVELS_CHAPTER06_LEVEL03_LVL,LEVELS_CHAPTER06_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER6_BIGWHEEL},
|
{6,3, 20, LEVELS_CHAPTER06_LEVEL03_LVL,LEVELS_CHAPTER06_LEVEL03_TEX, CSoundMediator::SONG_CHAPTER6_BIGWHEEL},
|
||||||
{6,4,LEVELS_CHAPTER06_LEVEL04_LVL,LEVELS_CHAPTER06_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER6_TUNNELOFLOVE},
|
{6,4, 20, LEVELS_CHAPTER06_LEVEL04_LVL,LEVELS_CHAPTER06_LEVEL04_TEX, CSoundMediator::SONG_CHAPTER6_TUNNELOFLOVE},
|
||||||
{6,5,LEVELS_CHAPTER06_LEVEL05_LVL,LEVELS_CHAPTER06_LEVEL05_TEX, CSoundMediator::SONG_CHAPTER6_TUNNELOFLOVE},
|
{6,5, 20, LEVELS_CHAPTER06_LEVEL05_LVL,LEVELS_CHAPTER06_LEVEL05_TEX, CSoundMediator::SONG_CHAPTER6_TUNNELOFLOVE},
|
||||||
// FMA
|
// FMA
|
||||||
{6,99,LEVELS_FMA_SHADYSHOALS_LVL,LEVELS_FMA_SHADYSHOALS_TEX, CSoundMediator::SONG_TITLE},
|
{6,99, 0, LEVELS_FMA_SHADYSHOALS_LVL,LEVELS_FMA_SHADYSHOALS_TEX, CSoundMediator::SONG_TITLE},
|
||||||
|
|
||||||
};
|
};
|
||||||
const static int LvlTableSize=sizeof(LvlTable)/sizeof(sLvlTab);
|
const static int LvlTableSize=sizeof(LvlTable)/sizeof(sLvlTab);
|
||||||
|
@ -440,7 +440,7 @@ void CLevel::initThings(int _respawningLevel)
|
||||||
{
|
{
|
||||||
int isSpat=(PICKUP_TYPE)ItemList->Type==PICKUP__SPATULA;
|
int isSpat=(PICKUP_TYPE)ItemList->Type==PICKUP__SPATULA;
|
||||||
CBasePickup *newPickup;
|
CBasePickup *newPickup;
|
||||||
if(!isSpat||CGameSlotManager::getSlotData()->isSpatulaUncollected(0,0,spatNumber))
|
if(!isSpat||CGameSlotManager::getSlotData()->isSpatulaUncollected(GameScene.getChapterNumber(),GameScene.getLevelNumber(),spatNumber))
|
||||||
{
|
{
|
||||||
pos.vx=ItemList->Pos.X<<4;
|
pos.vx=ItemList->Pos.X<<4;
|
||||||
pos.vy=ItemList->Pos.Y<<4;
|
pos.vy=ItemList->Pos.Y<<4;
|
||||||
|
@ -649,4 +649,13 @@ int CLevel::getCurrentChapterLevel()
|
||||||
return( LvlTable[s_globalLevelSelectThing].Level );
|
return( LvlTable[s_globalLevelSelectThing].Level );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
int CLevel::getTotalSpatCount()
|
||||||
|
{
|
||||||
|
return( LvlTable[s_globalLevelSelectThing].totalSpatCount);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
struct sLvlTab
|
struct sLvlTab
|
||||||
{
|
{
|
||||||
u16 Chapter,Level;
|
u16 Chapter,Level;
|
||||||
|
u8 totalSpatCount;
|
||||||
FileEquate LevelFilename,TexFilename;
|
FileEquate LevelFilename,TexFilename;
|
||||||
int songId;
|
int songId;
|
||||||
};
|
};
|
||||||
|
@ -37,6 +38,7 @@ static DVECTOR const &getPlayerSpawnPos() {return s_playerSpawnPos;}
|
||||||
|
|
||||||
static int getCurrentChapter();
|
static int getCurrentChapter();
|
||||||
static int getCurrentChapterLevel();
|
static int getCurrentChapterLevel();
|
||||||
|
static int getTotalSpatCount();
|
||||||
|
|
||||||
int getActorCount() {return ActorCount;}
|
int getActorCount() {return ActorCount;}
|
||||||
sThingActor **getActorList() {return ActorList;}
|
sThingActor **getActorList() {return ActorList;}
|
||||||
|
|
|
@ -33,6 +33,10 @@
|
||||||
#include "game\gameslot.h"
|
#include "game\gameslot.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef __GAME_GAME_H__
|
||||||
|
#include "game\game.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* Std Lib
|
/* Std Lib
|
||||||
------- */
|
------- */
|
||||||
|
@ -105,7 +109,7 @@ DVECTOR CSpatulaPickup::getSizeForPlacement()
|
||||||
void CSpatulaPickup::collect(class CPlayer *_player)
|
void CSpatulaPickup::collect(class CPlayer *_player)
|
||||||
{
|
{
|
||||||
CBasePickup::collect(_player);
|
CBasePickup::collect(_player);
|
||||||
CGameSlotManager::getSlotData()->collectSpatula(0,0,m_spatulaNumber);
|
CGameSlotManager::getSlotData()->collectSpatula(GameScene.getChapterNumber(),GameScene.getLevelNumber(),m_spatulaNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*----------------------------------------------------------------------
|
/*----------------------------------------------------------------------
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue