This commit is contained in:
parent
be3f0f9be4
commit
90d4097793
8 changed files with 92 additions and 25 deletions
|
@ -53,7 +53,8 @@ fileio_src := fileio \
|
|||
|
||||
frontend_src := frontend \
|
||||
scrollbg \
|
||||
maintitl
|
||||
maintitl \
|
||||
options
|
||||
|
||||
game_src := game
|
||||
|
||||
|
|
|
@ -26,6 +26,10 @@
|
|||
#include "frontend\maintitl.h"
|
||||
#endif
|
||||
|
||||
#ifndef __FRONTEND_OPTIONS_H__
|
||||
#include "frontend\options.h"
|
||||
#endif
|
||||
|
||||
|
||||
/* Std Lib
|
||||
------- */
|
||||
|
@ -50,11 +54,12 @@
|
|||
---- */
|
||||
|
||||
static CFrontEndMainTitles s_frontEndModeMainTitles;
|
||||
static CFrontEndOptions s_frontEndModeOptions;
|
||||
|
||||
CFrontEndMode *CFrontEndScene::s_modeCodes[]=
|
||||
{
|
||||
&s_frontEndModeMainTitles, // MODE__MAIN_TITLES
|
||||
NULL, // MODE__GAME_OPTIONS
|
||||
&s_frontEndModeOptions, // MODE__GAME_OPTIONS
|
||||
NULL, // MODE__CHOOSE_SLOT
|
||||
NULL, // MODE__DEMO
|
||||
|
||||
|
@ -73,6 +78,12 @@ CFrontEndScene FrontEndScene;
|
|||
---------------------------------------------------------------------- */
|
||||
void CFrontEndScene::init()
|
||||
{
|
||||
for(int i=0;i<MODE__NONE;i++)
|
||||
{
|
||||
if(s_modeCodes[i]) // temporary (PKG)
|
||||
s_modeCodes[i]->init();
|
||||
}
|
||||
|
||||
m_mode=MODE__NONE;
|
||||
setMode(MODE__MAIN_TITLES);
|
||||
}
|
||||
|
@ -86,6 +97,11 @@ void CFrontEndScene::init()
|
|||
---------------------------------------------------------------------- */
|
||||
void CFrontEndScene::shutdown()
|
||||
{
|
||||
for(int i=0;i<MODE__NONE;i++)
|
||||
{
|
||||
if(s_modeCodes[i]) // temporary (PKG)
|
||||
s_modeCodes[i]->shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -145,16 +161,12 @@ PAUL_DBGMSG("CFrontEndScene::setMode(%d)",_newMode);
|
|||
// Close old mode
|
||||
if(s_modeCodes[m_mode])
|
||||
{
|
||||
PAUL_DBGMSG("CFrontEndScene::shutdown mode %d",m_mode);
|
||||
s_modeCodes[m_mode]->shutdown();
|
||||
s_modeCodes[m_mode]->unselect();
|
||||
}
|
||||
|
||||
// Open new mode
|
||||
m_mode=_newMode;
|
||||
PAUL_DBGMSG("CFrontEndScene::init mode %d",m_mode);
|
||||
s_modeCodes[m_mode]->init();
|
||||
s_modeCodes[m_mode]->shutdown();
|
||||
s_modeCodes[m_mode]->init();
|
||||
s_modeCodes[m_mode]->select();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -78,6 +78,8 @@ class CFrontEndMode
|
|||
public:
|
||||
virtual void init()=0;
|
||||
virtual void shutdown()=0;
|
||||
virtual void select()=0;
|
||||
virtual void unselect()=0;
|
||||
virtual void render()=0;
|
||||
virtual void think(int _frames)=0;
|
||||
|
||||
|
|
|
@ -127,8 +127,6 @@ PAUL_DBGMSG("initial mem free=%d",mem);
|
|||
m_smallFont->initialise(&standardFont);
|
||||
m_smallFont->setJustification(FontBank::JUST_CENTRE);
|
||||
|
||||
m_mode=MODE__PRESS_START;
|
||||
|
||||
// Create the main menu ( START GAME/OPTIONS )
|
||||
m_mainMenu=new ("Main Menu GUI") CGUIControlFrame();
|
||||
m_mainMenu->init(NULL);
|
||||
|
@ -156,13 +154,6 @@ PAUL_DBGMSG("initial mem free=%d",mem);
|
|||
tg=new ("togglebutton") CGUIToggleButton();
|
||||
tg->init(fr);
|
||||
tg->setButtonTarget(&m_gotoOptionsFlag);
|
||||
|
||||
m_mainMenu->select();
|
||||
|
||||
m_startGameFlag=false;
|
||||
m_gotoOptionsFlag=false;
|
||||
|
||||
CFader::setFadingIn();
|
||||
}
|
||||
|
||||
|
||||
|
@ -180,6 +171,35 @@ void CFrontEndMainTitles::shutdown()
|
|||
PAUL_DBGMSG("change=%d",mem-(MainRam.TotalRam-MainRam.RamUsed));
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
Function:
|
||||
Purpose:
|
||||
Params:
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
void CFrontEndMainTitles::select()
|
||||
{
|
||||
m_mode=MODE__PRESS_START;
|
||||
|
||||
m_mainMenu->select();
|
||||
|
||||
m_startGameFlag=false;
|
||||
m_gotoOptionsFlag=false;
|
||||
|
||||
CFader::setFadingIn();
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
Function:
|
||||
Purpose:
|
||||
Params:
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
void CFrontEndMainTitles::unselect()
|
||||
{
|
||||
m_mainMenu->unselect();
|
||||
}
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
|
@ -327,7 +347,7 @@ CFrontEndScene::FrontEndMode CFrontEndMainTitles::getNextMode()
|
|||
break;
|
||||
|
||||
case MODE__GOTO_OPTIONS:
|
||||
ret=CFrontEndScene::MODE__MAIN_TITLES;//MODE__GAME_OPTIONS;
|
||||
ret=CFrontEndScene::MODE__GAME_OPTIONS;
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -43,6 +43,8 @@ class CFrontEndMainTitles : public CFrontEndMode
|
|||
public:
|
||||
void init();
|
||||
void shutdown();
|
||||
void select();
|
||||
void unselect();
|
||||
void render();
|
||||
void think(int _frames);
|
||||
|
||||
|
|
|
@ -111,7 +111,28 @@ void CFrontEndOptions::init()
|
|||
tg=new ("togglebutton") CGUIToggleButton();
|
||||
tg->init(fr);
|
||||
tg->setButtonTarget(&m_exitFlag);
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
Function:
|
||||
Purpose:
|
||||
Params:
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
void CFrontEndOptions::shutdown()
|
||||
{
|
||||
m_optionsMenu->shutdown();
|
||||
m_background->shutdown(); delete m_background;
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
Function:
|
||||
Purpose:
|
||||
Params:
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
void CFrontEndOptions::select()
|
||||
{
|
||||
m_optionsMenu->select();
|
||||
|
||||
m_exitFlag=false;
|
||||
|
@ -126,10 +147,9 @@ void CFrontEndOptions::init()
|
|||
Params:
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
void CFrontEndOptions::shutdown()
|
||||
void CFrontEndOptions::unselect()
|
||||
{
|
||||
m_optionsMenu->shutdown();
|
||||
m_background->shutdown(); delete m_background;
|
||||
m_optionsMenu->unselect();
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
|
|
|
@ -39,6 +39,8 @@ class CFrontEndOptions : public CFrontEndMode
|
|||
public:
|
||||
void init();
|
||||
void shutdown();
|
||||
void select();
|
||||
void unselect();
|
||||
void render();
|
||||
void think(int _frames);
|
||||
|
||||
|
|
|
@ -141,6 +141,14 @@ SOURCE=..\..\..\source\frontend\maintitl.h
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\..\source\frontend\options.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\..\source\frontend\options.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\..\source\frontend\scrollbg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue