This commit is contained in:
parent
f7ec85c998
commit
6ce958919a
4 changed files with 33 additions and 8 deletions
|
@ -79,7 +79,8 @@ CFrontEndMode *CFrontEndScene::s_modeCodes[]=
|
||||||
&s_frontEndDemoMode, // MODE__DEMO
|
&s_frontEndDemoMode, // MODE__DEMO
|
||||||
&s_frontEndCredits, // MODE__CREDITS
|
&s_frontEndCredits, // MODE__CREDITS
|
||||||
|
|
||||||
NULL, // MODE__NONE
|
// NULL, // MODE__NONE
|
||||||
|
// NULL, // MODE__EXIT_TO_GAME
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -99,6 +100,7 @@ void CFrontEndScene::init()
|
||||||
s_modeCodes[i]->init();
|
s_modeCodes[i]->init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_exitToGame=false;
|
||||||
m_mode=MODE__NONE;
|
m_mode=MODE__NONE;
|
||||||
setMode(MODE__MAIN_TITLES);
|
setMode(MODE__MAIN_TITLES);
|
||||||
}
|
}
|
||||||
|
@ -158,7 +160,7 @@ void CFrontEndScene::think(int _frames)
|
||||||
---------------------------------------------------------------------- */
|
---------------------------------------------------------------------- */
|
||||||
int CFrontEndScene::readyToShutdown()
|
int CFrontEndScene::readyToShutdown()
|
||||||
{
|
{
|
||||||
return false;
|
return m_exitToGame;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -173,15 +175,23 @@ void CFrontEndScene::setMode(FrontEndMode _newMode)
|
||||||
PAUL_DBGMSG("CFrontEndScene::setMode(%d)",_newMode);
|
PAUL_DBGMSG("CFrontEndScene::setMode(%d)",_newMode);
|
||||||
|
|
||||||
// Close old mode
|
// Close old mode
|
||||||
if(s_modeCodes[m_mode])
|
if(m_mode!=MODE__NONE)
|
||||||
{
|
{
|
||||||
s_modeCodes[m_mode]->unselect();
|
s_modeCodes[m_mode]->unselect();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Open new mode
|
// Open new mode
|
||||||
|
if(_newMode==MODE__EXIT_TO_GAME)
|
||||||
|
{
|
||||||
|
m_exitToGame=true;
|
||||||
|
GameState::setNextScene(&FrontEndScene);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
m_mode=_newMode;
|
m_mode=_newMode;
|
||||||
s_modeCodes[m_mode]->select();
|
s_modeCodes[m_mode]->select();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*===========================================================================
|
/*===========================================================================
|
||||||
|
|
|
@ -46,6 +46,8 @@ public:
|
||||||
MODE__CREDITS,
|
MODE__CREDITS,
|
||||||
|
|
||||||
MODE__NONE,
|
MODE__NONE,
|
||||||
|
|
||||||
|
MODE__EXIT_TO_GAME,
|
||||||
} FrontEndMode;
|
} FrontEndMode;
|
||||||
|
|
||||||
void init();
|
void init();
|
||||||
|
@ -59,6 +61,8 @@ public:
|
||||||
private:
|
private:
|
||||||
void setMode(FrontEndMode _newMode);
|
void setMode(FrontEndMode _newMode);
|
||||||
|
|
||||||
|
int m_exitToGame;
|
||||||
|
|
||||||
FrontEndMode m_mode;
|
FrontEndMode m_mode;
|
||||||
class CFrontEndMode *m_modeCode;
|
class CFrontEndMode *m_modeCode;
|
||||||
static class CFrontEndMode *s_modeCodes[];
|
static class CFrontEndMode *s_modeCodes[];
|
||||||
|
|
|
@ -131,10 +131,19 @@ void CFrontEndStart::render()
|
||||||
Params:
|
Params:
|
||||||
Returns:
|
Returns:
|
||||||
---------------------------------------------------------------------- */
|
---------------------------------------------------------------------- */
|
||||||
|
#ifndef __PAD_PADS_H__
|
||||||
|
#include "pad\pads.h"
|
||||||
|
#endif
|
||||||
void CFrontEndStart::think(int _frames)
|
void CFrontEndStart::think(int _frames)
|
||||||
{
|
{
|
||||||
if(!m_shuttingDown)
|
if(!m_shuttingDown)
|
||||||
{
|
{
|
||||||
|
/////////// PKG
|
||||||
|
if(PadGetDown(0)&PAD_START)
|
||||||
|
{
|
||||||
|
m_selectedSlot=0;
|
||||||
|
}
|
||||||
|
/////////// PKG
|
||||||
if(m_selectedSlot!=NO_SLOT_SELECTED||
|
if(m_selectedSlot!=NO_SLOT_SELECTED||
|
||||||
m_escapeToTitles)
|
m_escapeToTitles)
|
||||||
{
|
{
|
||||||
|
@ -163,13 +172,13 @@ int CFrontEndStart::isReadyToExit()
|
||||||
---------------------------------------------------------------------- */
|
---------------------------------------------------------------------- */
|
||||||
CFrontEndScene::FrontEndMode CFrontEndStart::getNextMode()
|
CFrontEndScene::FrontEndMode CFrontEndStart::getNextMode()
|
||||||
{
|
{
|
||||||
if(m_selectedSlot!=NO_SLOT_SELECTED)
|
if(m_selectedSlot==NO_SLOT_SELECTED)
|
||||||
{
|
{
|
||||||
return CFrontEndScene::MODE__MAIN_TITLES;
|
return CFrontEndScene::MODE__MAIN_TITLES;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return CFrontEndScene::MODE__MAIN_TITLES; // PKG
|
return CFrontEndScene::MODE__EXIT_TO_GAME;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -53,6 +53,7 @@ void GameState::think()
|
||||||
{
|
{
|
||||||
if(s_currentScene->readyToShutdown())
|
if(s_currentScene->readyToShutdown())
|
||||||
{
|
{
|
||||||
|
SYSTEM_DBGMSG("GameState: Closing down scene..");
|
||||||
ASSERT(s_pendingScene); // There really should be a scene pending before you shutdown..!
|
ASSERT(s_pendingScene); // There really should be a scene pending before you shutdown..!
|
||||||
s_currentScene->shutdown();
|
s_currentScene->shutdown();
|
||||||
s_currentScene=NULL;
|
s_currentScene=NULL;
|
||||||
|
@ -60,6 +61,7 @@ void GameState::think()
|
||||||
}
|
}
|
||||||
if(!s_currentScene)
|
if(!s_currentScene)
|
||||||
{
|
{
|
||||||
|
SYSTEM_DBGMSG("GameState: Opening new scene..");
|
||||||
s_currentScene=s_pendingScene;
|
s_currentScene=s_pendingScene;
|
||||||
s_currentScene->init();
|
s_currentScene->init();
|
||||||
s_pendingScene=NULL;
|
s_pendingScene=NULL;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue