add TemporaryEventMode flag to GameState
This commit is contained in:
@@ -392,7 +392,7 @@ int GetNumCreditsPaid()
|
|||||||
int iNumCreditsPaid = GAMESTATE->GetNumSidesJoined();
|
int iNumCreditsPaid = GAMESTATE->GetNumSidesJoined();
|
||||||
|
|
||||||
// players other than the first joined for free
|
// players other than the first joined for free
|
||||||
if( PREFSMAN->GetPremium() == PREMIUM_JOINT )
|
if( GAMESTATE->GetPremium() == PREMIUM_JOINT )
|
||||||
iNumCreditsPaid = min( iNumCreditsPaid, 1 );
|
iNumCreditsPaid = min( iNumCreditsPaid, 1 );
|
||||||
|
|
||||||
return iNumCreditsPaid;
|
return iNumCreditsPaid;
|
||||||
@@ -401,7 +401,7 @@ int GetNumCreditsPaid()
|
|||||||
|
|
||||||
int GetCreditsRequiredToPlayStyle( const Style *style )
|
int GetCreditsRequiredToPlayStyle( const Style *style )
|
||||||
{
|
{
|
||||||
if( PREFSMAN->GetPremium() == PREMIUM_JOINT )
|
if( GAMESTATE->GetPremium() == PREMIUM_JOINT )
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
switch( style->m_StyleType )
|
switch( style->m_StyleType )
|
||||||
@@ -411,7 +411,7 @@ int GetCreditsRequiredToPlayStyle( const Style *style )
|
|||||||
case TWO_PLAYERS_TWO_SIDES:
|
case TWO_PLAYERS_TWO_SIDES:
|
||||||
return 2;
|
return 2;
|
||||||
case ONE_PLAYER_TWO_SIDES:
|
case ONE_PLAYER_TWO_SIDES:
|
||||||
return (PREFSMAN->GetPremium() == PREMIUM_DOUBLES) ? 1 : 2;
|
return (GAMESTATE->GetPremium() == PREMIUM_DOUBLES) ? 1 : 2;
|
||||||
default:
|
default:
|
||||||
ASSERT(0);
|
ASSERT(0);
|
||||||
return 1;
|
return 1;
|
||||||
@@ -457,7 +457,7 @@ bool GameCommand::IsPlayable( CString *why ) const
|
|||||||
const int iNumCreditsPaid = GetNumCreditsPaid();
|
const int iNumCreditsPaid = GetNumCreditsPaid();
|
||||||
const int iNumCreditsRequired = GetCreditsRequiredToPlayStyle(m_pStyle);
|
const int iNumCreditsRequired = GetCreditsRequiredToPlayStyle(m_pStyle);
|
||||||
|
|
||||||
switch( PREFSMAN->GetCoinMode() )
|
switch( GAMESTATE->GetCoinMode() )
|
||||||
{
|
{
|
||||||
case COIN_HOME:
|
case COIN_HOME:
|
||||||
case COIN_FREE:
|
case COIN_FREE:
|
||||||
|
|||||||
+44
-15
@@ -204,6 +204,8 @@ void GameState::Reset()
|
|||||||
|
|
||||||
m_iStopCourseAtSeconds = -1;
|
m_iStopCourseAtSeconds = -1;
|
||||||
|
|
||||||
|
m_bTemporaryEventMode = false;
|
||||||
|
|
||||||
LIGHTSMAN->SetLightsMode( LIGHTSMODE_ATTRACT );
|
LIGHTSMAN->SetLightsMode( LIGHTSMODE_ATTRACT );
|
||||||
|
|
||||||
ApplyCmdline();
|
ApplyCmdline();
|
||||||
@@ -700,7 +702,7 @@ void GameState::FinishStage()
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
{
|
{
|
||||||
const int iSaveProfileEvery = 3;
|
const int iSaveProfileEvery = 3;
|
||||||
if( iOldStageIndex/iSaveProfileEvery < m_iCurrentStageIndex/iSaveProfileEvery )
|
if( iOldStageIndex/iSaveProfileEvery < m_iCurrentStageIndex/iSaveProfileEvery )
|
||||||
@@ -720,14 +722,14 @@ int GameState::GetNumStagesLeft() const
|
|||||||
{
|
{
|
||||||
if( IsExtraStage() || IsExtraStage2() )
|
if( IsExtraStage() || IsExtraStage2() )
|
||||||
return 1;
|
return 1;
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
return 999;
|
return 999;
|
||||||
return PREFSMAN->m_iNumArcadeStages - m_iCurrentStageIndex;
|
return PREFSMAN->m_iNumArcadeStages - m_iCurrentStageIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GameState::IsFinalStage() const
|
bool GameState::IsFinalStage() const
|
||||||
{
|
{
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if( this->IsCourseMode() )
|
if( this->IsCourseMode() )
|
||||||
@@ -742,14 +744,14 @@ bool GameState::IsFinalStage() const
|
|||||||
|
|
||||||
bool GameState::IsExtraStage() const
|
bool GameState::IsExtraStage() const
|
||||||
{
|
{
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
return false;
|
return false;
|
||||||
return m_iCurrentStageIndex == PREFSMAN->m_iNumArcadeStages;
|
return m_iCurrentStageIndex == PREFSMAN->m_iNumArcadeStages;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GameState::IsExtraStage2() const
|
bool GameState::IsExtraStage2() const
|
||||||
{
|
{
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
return false;
|
return false;
|
||||||
return m_iCurrentStageIndex == PREFSMAN->m_iNumArcadeStages+1;
|
return m_iCurrentStageIndex == PREFSMAN->m_iNumArcadeStages+1;
|
||||||
}
|
}
|
||||||
@@ -760,7 +762,7 @@ CString GameState::GetStageText() const
|
|||||||
else if( m_PlayMode == PLAY_MODE_ONI ) return "oni";
|
else if( m_PlayMode == PLAY_MODE_ONI ) return "oni";
|
||||||
else if( m_PlayMode == PLAY_MODE_NONSTOP ) return "nonstop";
|
else if( m_PlayMode == PLAY_MODE_NONSTOP ) return "nonstop";
|
||||||
else if( m_PlayMode == PLAY_MODE_ENDLESS ) return "endless";
|
else if( m_PlayMode == PLAY_MODE_ENDLESS ) return "endless";
|
||||||
else if( PREFSMAN->m_bEventMode ) return "event";
|
else if( GAMESTATE->GetEventMode() ) return "event";
|
||||||
else if( IsFinalStage() ) return "final";
|
else if( IsFinalStage() ) return "final";
|
||||||
else if( IsExtraStage() ) return "extra1";
|
else if( IsExtraStage() ) return "extra1";
|
||||||
else if( IsExtraStage2() ) return "extra2";
|
else if( IsExtraStage2() ) return "extra2";
|
||||||
@@ -815,7 +817,7 @@ bool GameState::PlayersCanJoin() const
|
|||||||
|
|
||||||
bool GameState::EnoughCreditsToJoin() const
|
bool GameState::EnoughCreditsToJoin() const
|
||||||
{
|
{
|
||||||
switch( PREFSMAN->GetCoinMode() )
|
switch( GAMESTATE->GetCoinMode() )
|
||||||
{
|
{
|
||||||
case COIN_PAY:
|
case COIN_PAY:
|
||||||
return GAMESTATE->m_iCoins >= PREFSMAN->m_iCoinsPerCredit;
|
return GAMESTATE->m_iCoins >= PREFSMAN->m_iCoinsPerCredit;
|
||||||
@@ -962,7 +964,7 @@ bool GameState::IsBattleMode() const
|
|||||||
|
|
||||||
bool GameState::HasEarnedExtraStage() const
|
bool GameState::HasEarnedExtraStage() const
|
||||||
{
|
{
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if( !PREFSMAN->m_bAllowExtraStage )
|
if( !PREFSMAN->m_bAllowExtraStage )
|
||||||
@@ -1302,7 +1304,7 @@ void GameState::AdjustFailType()
|
|||||||
/* If beginner's steps were chosen, and this is the first stage,
|
/* If beginner's steps were chosen, and this is the first stage,
|
||||||
* turn off failure completely--always give a second try. */
|
* turn off failure completely--always give a second try. */
|
||||||
if(dc == DIFFICULTY_BEGINNER &&
|
if(dc == DIFFICULTY_BEGINNER &&
|
||||||
!PREFSMAN->m_bEventMode && /* stage index is meaningless in event mode */
|
GAMESTATE->GetEventMode() && /* stage index is meaningless in event mode */
|
||||||
this->m_iCurrentStageIndex == 0)
|
this->m_iCurrentStageIndex == 0)
|
||||||
setmax(this->m_SongOptions.m_FailType, SongOptions::FAIL_OFF);
|
setmax(this->m_SongOptions.m_FailType, SongOptions::FAIL_OFF);
|
||||||
}
|
}
|
||||||
@@ -1826,14 +1828,25 @@ Difficulty GameState::GetEasiestNotesDifficulty() const
|
|||||||
return dc;
|
return dc;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool PlayerIsUsingModifier( PlayerNumber pn, const CString sModifier )
|
bool GameState::GetEventMode()
|
||||||
{
|
{
|
||||||
PlayerOptions po = GAMESTATE->m_pPlayerState[pn]->m_PlayerOptions;
|
return m_bTemporaryEventMode || PREFSMAN->m_bEventMode;
|
||||||
SongOptions so = GAMESTATE->m_SongOptions;
|
}
|
||||||
po.FromString( sModifier );
|
|
||||||
so.FromString( sModifier );
|
|
||||||
|
|
||||||
return po == GAMESTATE->m_pPlayerState[pn]->m_PlayerOptions && so == GAMESTATE->m_SongOptions;
|
CoinMode GameState::GetCoinMode()
|
||||||
|
{
|
||||||
|
if( GetEventMode() && PREFSMAN->m_CoinMode == COIN_PAY )
|
||||||
|
return COIN_FREE;
|
||||||
|
else
|
||||||
|
return PREFSMAN->m_CoinMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
Premium GameState::GetPremium()
|
||||||
|
{
|
||||||
|
if( GetEventMode() )
|
||||||
|
return PREMIUM_NONE;
|
||||||
|
else
|
||||||
|
return PREFSMAN->m_Premium;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1860,6 +1873,9 @@ public:
|
|||||||
p->ApplyGameCommand(SArg(1),pn);
|
p->ApplyGameCommand(SArg(1),pn);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
static int GetCurrentCourse( T* p, lua_State *L ) { if(p->m_pCurCourse) p->m_pCurCourse->PushSelf(L); else lua_pushnil(L); return 1; }
|
||||||
|
static int SetCurrentCourse( T* p, lua_State *L ) { Course *pC = Luna<Course>::check(L,1); p->m_pCurCourse = pC; return 0; }
|
||||||
|
static int SetTemporaryEventMode( T* p, lua_State *L ) { p->m_bTemporaryEventMode = BArg(1); return 0; }
|
||||||
|
|
||||||
static void Register(lua_State *L)
|
static void Register(lua_State *L)
|
||||||
{
|
{
|
||||||
@@ -1868,6 +1884,9 @@ public:
|
|||||||
ADD_METHOD( GetPlayerDisplayName )
|
ADD_METHOD( GetPlayerDisplayName )
|
||||||
ADD_METHOD( GetMasterPlayerNumber )
|
ADD_METHOD( GetMasterPlayerNumber )
|
||||||
ADD_METHOD( ApplyGameCommand )
|
ADD_METHOD( ApplyGameCommand )
|
||||||
|
ADD_METHOD( GetCurrentCourse )
|
||||||
|
ADD_METHOD( SetCurrentCourse )
|
||||||
|
ADD_METHOD( SetTemporaryEventMode )
|
||||||
Luna<T>::Register( L );
|
Luna<T>::Register( L );
|
||||||
|
|
||||||
// add global singleton
|
// add global singleton
|
||||||
@@ -1912,6 +1931,16 @@ LuaFunction_StrStr( SetEnv, GAMESTATE->m_mapEnv[str1] = str2 )
|
|||||||
LuaFunction_NoArgs( CurSong, GAMESTATE->m_pCurSong )
|
LuaFunction_NoArgs( CurSong, GAMESTATE->m_pCurSong )
|
||||||
LuaFunction_PlayerNumber( CurSteps, GAMESTATE->m_pCurSteps[pn] )
|
LuaFunction_PlayerNumber( CurSteps, GAMESTATE->m_pCurSteps[pn] )
|
||||||
|
|
||||||
|
bool PlayerIsUsingModifier( PlayerNumber pn, const CString sModifier )
|
||||||
|
{
|
||||||
|
PlayerOptions po = GAMESTATE->m_pPlayerState[pn]->m_PlayerOptions;
|
||||||
|
SongOptions so = GAMESTATE->m_SongOptions;
|
||||||
|
po.FromString( sModifier );
|
||||||
|
so.FromString( sModifier );
|
||||||
|
|
||||||
|
return po == GAMESTATE->m_pPlayerState[pn]->m_PlayerOptions && so == GAMESTATE->m_SongOptions;
|
||||||
|
}
|
||||||
|
|
||||||
int LuaFunc_UsingModifier( lua_State *L )
|
int LuaFunc_UsingModifier( lua_State *L )
|
||||||
{
|
{
|
||||||
REQ_ARGS( "UsingModifier", 2 );
|
REQ_ARGS( "UsingModifier", 2 );
|
||||||
|
|||||||
@@ -271,6 +271,17 @@ public:
|
|||||||
//
|
//
|
||||||
int m_iStopCourseAtSeconds; // -1 == don't stop early
|
int m_iStopCourseAtSeconds; // -1 == don't stop early
|
||||||
|
|
||||||
|
//
|
||||||
|
// Preference wrappers
|
||||||
|
//
|
||||||
|
// These options have weird interactions depending on m_bEventMode,
|
||||||
|
// so wrap them
|
||||||
|
bool m_bTemporaryEventMode;
|
||||||
|
bool GetEventMode();
|
||||||
|
CoinMode GetCoinMode();
|
||||||
|
Premium GetPremium();
|
||||||
|
|
||||||
|
|
||||||
// Lua
|
// Lua
|
||||||
void PushSelf( lua_State *L );
|
void PushSelf( lua_State *L );
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -540,7 +540,7 @@ void LifeMeterBar::UpdateNonstopLifebar(const int cleared,
|
|||||||
// it isn't, do so here
|
// it isn't, do so here
|
||||||
/* No, wait: if we're playing nonstop, event mode just means that we can play another
|
/* No, wait: if we're playing nonstop, event mode just means that we can play another
|
||||||
* nonstop course later, so it shouldn't affect life difficulty. */
|
* nonstop course later, so it shouldn't affect life difficulty. */
|
||||||
/* if (PREFSMAN->m_bEventMode)
|
/* if (GAMESTATE->GetEventMode())
|
||||||
{
|
{
|
||||||
m_fLifeDifficulty = m_fBaseLifeDifficulty;
|
m_fLifeDifficulty = m_fBaseLifeDifficulty;
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ public:
|
|||||||
lua_settable(L, metatable);
|
lua_settable(L, metatable);
|
||||||
|
|
||||||
// fill method table with methods from class T
|
// fill method table with methods from class T
|
||||||
for (unsigned i=0; i<s_pvMethods->size(); i++ )
|
for (unsigned i=0; s_pvMethods && i<s_pvMethods->size(); i++ )
|
||||||
{
|
{
|
||||||
const MyRegType *l = &(*s_pvMethods)[i];
|
const MyRegType *l = &(*s_pvMethods)[i];
|
||||||
lua_pushstring(L, l->name);
|
lua_pushstring(L, l->name);
|
||||||
|
|||||||
@@ -232,7 +232,7 @@ void MusicWheel::Load()
|
|||||||
// but someone mentioned it does it sometimes.
|
// but someone mentioned it does it sometimes.
|
||||||
if( GAMESTATE->m_pCurSong != NULL &&
|
if( GAMESTATE->m_pCurSong != NULL &&
|
||||||
SongManager::GetNumStagesForSong( GAMESTATE->m_pCurSong ) + GAMESTATE->m_iCurrentStageIndex > PREFSMAN->m_iNumArcadeStages
|
SongManager::GetNumStagesForSong( GAMESTATE->m_pCurSong ) + GAMESTATE->m_iCurrentStageIndex > PREFSMAN->m_iNumArcadeStages
|
||||||
&& !PREFSMAN->m_bEventMode
|
&& !GAMESTATE->GetEventMode()
|
||||||
&& !GAMESTATE->IsExtraStage() && !GAMESTATE->IsExtraStage2() )
|
&& !GAMESTATE->IsExtraStage() && !GAMESTATE->IsExtraStage2() )
|
||||||
{
|
{
|
||||||
GAMESTATE->m_pCurSong = NULL;
|
GAMESTATE->m_pCurSong = NULL;
|
||||||
@@ -477,7 +477,7 @@ void MusicWheel::BuildWheelItemDatas( vector<WheelItemData> &arrayWheelItemDatas
|
|||||||
case SORT_ONI_COURSES:
|
case SORT_ONI_COURSES:
|
||||||
case SORT_ENDLESS_COURSES:
|
case SORT_ENDLESS_COURSES:
|
||||||
/* Don't display course modes after the first stage. */
|
/* Don't display course modes after the first stage. */
|
||||||
if( !PREFSMAN->m_bEventMode && GAMESTATE->m_iCurrentStageIndex )
|
if( !GAMESTATE->GetEventMode() && GAMESTATE->m_iCurrentStageIndex )
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -837,13 +837,11 @@ class LunaPrefsManager : public Luna<T>
|
|||||||
public:
|
public:
|
||||||
LunaPrefsManager() { LUA->Register( Register ); }
|
LunaPrefsManager() { LUA->Register( Register ); }
|
||||||
|
|
||||||
static int GetEventMode( T* p, lua_State *L ) { lua_pushboolean(L, p->m_bEventMode ); return 1; }
|
// static int GetEventMode( T* p, lua_State *L ) { lua_pushboolean(L, p->m_bEventMode ); return 1; }
|
||||||
static int SetEventMode( T* p, lua_State *L ) { p->m_bEventMode = BArg(1); return 0; }
|
|
||||||
|
|
||||||
static void Register(lua_State *L)
|
static void Register(lua_State *L)
|
||||||
{
|
{
|
||||||
ADD_METHOD( GetEventMode )
|
// ADD_METHOD( GetEventMode )
|
||||||
ADD_METHOD( SetEventMode )
|
|
||||||
Luna<T>::Register( L );
|
Luna<T>::Register( L );
|
||||||
|
|
||||||
// Add global singleton if constructed already. If it's not constructed yet,
|
// Add global singleton if constructed already. If it's not constructed yet,
|
||||||
@@ -862,23 +860,6 @@ LUA_REGISTER_CLASS( PrefsManager )
|
|||||||
// lua end
|
// lua end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CoinMode PrefsManager::GetCoinMode()
|
|
||||||
{
|
|
||||||
if( m_bEventMode && m_CoinMode == COIN_PAY )
|
|
||||||
return COIN_FREE;
|
|
||||||
else
|
|
||||||
return m_CoinMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
Premium PrefsManager::GetPremium()
|
|
||||||
{
|
|
||||||
if(m_bEventMode)
|
|
||||||
return PREMIUM_NONE;
|
|
||||||
else
|
|
||||||
return m_Premium;
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "RageLog.h"
|
#include "RageLog.h"
|
||||||
#include "LuaFunctions.h"
|
#include "LuaFunctions.h"
|
||||||
|
|
||||||
|
|||||||
@@ -149,8 +149,6 @@ public:
|
|||||||
// so wrap them.
|
// so wrap them.
|
||||||
CoinMode m_CoinMode;
|
CoinMode m_CoinMode;
|
||||||
Premium m_Premium;
|
Premium m_Premium;
|
||||||
CoinMode GetCoinMode();
|
|
||||||
Premium GetPremium();
|
|
||||||
|
|
||||||
bool m_bDelayedCreditsReconcile;
|
bool m_bDelayedCreditsReconcile;
|
||||||
bool m_bPickExtraStage;
|
bool m_bPickExtraStage;
|
||||||
|
|||||||
@@ -384,7 +384,7 @@ void ProfileManager::AddStepsScore( const Song* pSong, const Steps* pSteps, Play
|
|||||||
|
|
||||||
// In event mode, set the score's name immediately to the Profile's last
|
// In event mode, set the score's name immediately to the Profile's last
|
||||||
// used name. If no profile last used name exists, use "EVNT".
|
// used name. If no profile last used name exists, use "EVNT".
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
{
|
{
|
||||||
Profile* pProfile = PROFILEMAN->GetProfile(pn);
|
Profile* pProfile = PROFILEMAN->GetProfile(pn);
|
||||||
if( pProfile && !pProfile->m_sLastUsedHighScoreName.empty() )
|
if( pProfile && !pProfile->m_sLastUsedHighScoreName.empty() )
|
||||||
@@ -453,7 +453,7 @@ void ProfileManager::AddCourseScore( const Course* pCourse, const Trail* pTrail,
|
|||||||
|
|
||||||
// In event mode, set the score's name immediately to the Profile's last
|
// In event mode, set the score's name immediately to the Profile's last
|
||||||
// used name. If no profile last used name exists, use "EVNT".
|
// used name. If no profile last used name exists, use "EVNT".
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
{
|
{
|
||||||
Profile* pProfile = PROFILEMAN->GetProfile(pn);
|
Profile* pProfile = PROFILEMAN->GetProfile(pn);
|
||||||
if( pProfile && !pProfile->m_sLastUsedHighScoreName.empty() )
|
if( pProfile && !pProfile->m_sLastUsedHighScoreName.empty() )
|
||||||
|
|||||||
@@ -193,11 +193,11 @@ bool Screen::JoinInput( const MenuInput &MenuI )
|
|||||||
|
|
||||||
/* subtract coins */
|
/* subtract coins */
|
||||||
int iCoinsToCharge = 0;
|
int iCoinsToCharge = 0;
|
||||||
if( PREFSMAN->GetCoinMode() == COIN_PAY )
|
if( GAMESTATE->GetCoinMode() == COIN_PAY )
|
||||||
iCoinsToCharge = PREFSMAN->m_iCoinsPerCredit;
|
iCoinsToCharge = PREFSMAN->m_iCoinsPerCredit;
|
||||||
|
|
||||||
// If joint premium don't take away a credit for the 2nd join.
|
// If joint premium don't take away a credit for the 2nd join.
|
||||||
if( PREFSMAN->GetPremium() == PREMIUM_JOINT &&
|
if( GAMESTATE->GetPremium() == PREMIUM_JOINT &&
|
||||||
GAMESTATE->GetNumSidesJoined() == 1 )
|
GAMESTATE->GetNumSidesJoined() == 1 )
|
||||||
iCoinsToCharge = 0;
|
iCoinsToCharge = 0;
|
||||||
|
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ void ScreenAttract::AttractInput( const DeviceInput& DeviceI, const InputEventTy
|
|||||||
case MENU_BUTTON_START:
|
case MENU_BUTTON_START:
|
||||||
case MENU_BUTTON_BACK:
|
case MENU_BUTTON_BACK:
|
||||||
case MENU_BUTTON_COIN:
|
case MENU_BUTTON_COIN:
|
||||||
switch( PREFSMAN->GetCoinMode() )
|
switch( GAMESTATE->GetCoinMode() )
|
||||||
{
|
{
|
||||||
case COIN_PAY:
|
case COIN_PAY:
|
||||||
LOG->Trace("ScreenAttract::AttractInput: COIN_PAY (%i/%i)", GAMESTATE->m_iCoins, PREFSMAN->m_iCoinsPerCredit );
|
LOG->Trace("ScreenAttract::AttractInput: COIN_PAY (%i/%i)", GAMESTATE->m_iCoins, PREFSMAN->m_iCoinsPerCredit );
|
||||||
|
|||||||
@@ -1375,8 +1375,10 @@ void ScreenEvaluation::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
break;
|
break;
|
||||||
case SM_GoToNextScreen:
|
case SM_GoToNextScreen:
|
||||||
{
|
{
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
|
{
|
||||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Go to FAILED_SCREEN if we failed a non-extra stage. */
|
/* Go to FAILED_SCREEN if we failed a non-extra stage. */
|
||||||
@@ -1457,7 +1459,7 @@ void ScreenEvaluation::EndScreen()
|
|||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
m_Grades[p].SettleImmediately();
|
m_Grades[p].SettleImmediately();
|
||||||
|
|
||||||
if( !PREFSMAN->m_bEventMode )
|
if( !GAMESTATE->GetEventMode() )
|
||||||
{
|
{
|
||||||
switch( m_Type )
|
switch( m_Type )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -951,7 +951,7 @@ void ScreenGameplay::LoadNextSong()
|
|||||||
if( GAMESTATE->m_SongOptions.m_LifeType==SongOptions::LIFE_BATTERY && STATSMAN->m_CurStageStats.m_player[p].bFailed ) // already failed
|
if( GAMESTATE->m_SongOptions.m_LifeType==SongOptions::LIFE_BATTERY && STATSMAN->m_CurStageStats.m_player[p].bFailed ) // already failed
|
||||||
ShowOniGameOver(p);
|
ShowOniGameOver(p);
|
||||||
|
|
||||||
if( GAMESTATE->m_SongOptions.m_LifeType==SongOptions::LIFE_BAR && GAMESTATE->m_PlayMode == PLAY_MODE_REGULAR && !PREFSMAN->m_bEventMode && !GAMESTATE->m_bDemonstrationOrJukebox)
|
if( GAMESTATE->m_SongOptions.m_LifeType==SongOptions::LIFE_BAR && GAMESTATE->m_PlayMode == PLAY_MODE_REGULAR && !GAMESTATE->GetEventMode() && !GAMESTATE->m_bDemonstrationOrJukebox)
|
||||||
{
|
{
|
||||||
m_pLifeMeter[p]->UpdateNonstopLifebar(
|
m_pLifeMeter[p]->UpdateNonstopLifebar(
|
||||||
GAMESTATE->GetStageIndex(),
|
GAMESTATE->GetStageIndex(),
|
||||||
|
|||||||
@@ -386,7 +386,7 @@ void ScreenNameEntry::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
|
|
||||||
// There shouldn't be NameEntry in event mode. -Chris
|
// There shouldn't be NameEntry in event mode. -Chris
|
||||||
// /* Hack: go back to the select course screen in event mode. */
|
// /* Hack: go back to the select course screen in event mode. */
|
||||||
// if( PREFSMAN->m_bEventMode && GAMESTATE->IsCourseMode() )
|
// if( GAMESTATE->GetEventMode() && GAMESTATE->IsCourseMode() )
|
||||||
// {
|
// {
|
||||||
// SCREENMAN->SetNewScreen( "ScreenSelectCourse" );
|
// SCREENMAN->SetNewScreen( "ScreenSelectCourse" );
|
||||||
// break;
|
// break;
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ void ScreenSelect::Update( float fDelta )
|
|||||||
}
|
}
|
||||||
// don't time out on this screen is coin mode is pay.
|
// don't time out on this screen is coin mode is pay.
|
||||||
// If we're here, then there's a credit in the machine.
|
// If we're here, then there's a credit in the machine.
|
||||||
if( PREFSMAN->GetCoinMode() != COIN_PAY )
|
if( GAMESTATE->GetCoinMode() != COIN_PAY )
|
||||||
{
|
{
|
||||||
if( IDLE_TIMEOUT_SECONDS > 0 && m_timerIdleTimeout.PeekDeltaTime() >= IDLE_TIMEOUT_SECONDS )
|
if( IDLE_TIMEOUT_SECONDS > 0 && m_timerIdleTimeout.PeekDeltaTime() >= IDLE_TIMEOUT_SECONDS )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -197,9 +197,9 @@ void ScreenSelectMode::UpdateSelectableChoices()
|
|||||||
(mc.m_pStyle == NULL) ?
|
(mc.m_pStyle == NULL) ?
|
||||||
1 :
|
1 :
|
||||||
1;
|
1;
|
||||||
if( PREFSMAN->GetPremium()!=PREMIUM_JOINT ||
|
if( GAMESTATE->GetPremium()!=PREMIUM_JOINT ||
|
||||||
(
|
(
|
||||||
(PREFSMAN->GetPremium()==PREMIUM_JOINT) &&
|
(GAMESTATE->GetPremium()==PREMIUM_JOINT) &&
|
||||||
(
|
(
|
||||||
(INCLUDE_DOUBLE_IN_JP == 1 && (GAMESTATE->GetNumSidesJoined() == SidesJoinedToPlay)) ||
|
(INCLUDE_DOUBLE_IN_JP == 1 && (GAMESTATE->GetNumSidesJoined() == SidesJoinedToPlay)) ||
|
||||||
(
|
(
|
||||||
|
|||||||
@@ -1098,7 +1098,7 @@ void ScreenSelectMusic::MenuStart( PlayerNumber pn )
|
|||||||
/* See if this song is a repeat. If we're in event mode, only check the last five songs. */
|
/* See if this song is a repeat. If we're in event mode, only check the last five songs. */
|
||||||
bool bIsRepeat = false;
|
bool bIsRepeat = false;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( GAMESTATE->GetEventMode() )
|
||||||
i = max( 0, int(STATSMAN->m_vPlayedStageStats.size())-5 );
|
i = max( 0, int(STATSMAN->m_vPlayedStageStats.size())-5 );
|
||||||
for( ; i < (int)STATSMAN->m_vPlayedStageStats.size(); ++i )
|
for( ; i < (int)STATSMAN->m_vPlayedStageStats.size(); ++i )
|
||||||
if( STATSMAN->m_vPlayedStageStats[i].vpSongs.back() == m_MusicWheel.GetSelectedSong() )
|
if( STATSMAN->m_vPlayedStageStats[i].vpSongs.back() == m_MusicWheel.GetSelectedSong() )
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ ScreenSelectStyle::ScreenSelectStyle( CString sClassName ) : ScreenSelect( sClas
|
|||||||
|
|
||||||
m_sprPremium.SetName( "Premium" );
|
m_sprPremium.SetName( "Premium" );
|
||||||
|
|
||||||
switch( PREFSMAN->GetPremium() )
|
switch( GAMESTATE->GetPremium() )
|
||||||
{
|
{
|
||||||
case PREMIUM_DOUBLES:
|
case PREMIUM_DOUBLES:
|
||||||
m_sprPremium.Load( THEME->GetPathG(m_sName,"doubles premium") );
|
m_sprPremium.Load( THEME->GetPathG(m_sName,"doubles premium") );
|
||||||
|
|||||||
@@ -183,7 +183,7 @@ void ScreenSystemLayer::RefreshCreditsMessages()
|
|||||||
}
|
}
|
||||||
else // bShowCreditsMessage
|
else // bShowCreditsMessage
|
||||||
{
|
{
|
||||||
switch( PREFSMAN->GetCoinMode() )
|
switch( GAMESTATE->GetCoinMode() )
|
||||||
{
|
{
|
||||||
case COIN_HOME:
|
case COIN_HOME:
|
||||||
if( GAMESTATE->PlayersCanJoin() )
|
if( GAMESTATE->PlayersCanJoin() )
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ ScreenTitleMenu::ScreenTitleMenu( CString sScreenName ) :
|
|||||||
|
|
||||||
// Don't show screen title menu (says "Press Start")
|
// Don't show screen title menu (says "Press Start")
|
||||||
// if there are 0 credits and inserted and CoinMode is pay.
|
// if there are 0 credits and inserted and CoinMode is pay.
|
||||||
if( PREFSMAN->GetCoinMode() == COIN_PAY &&
|
if( GAMESTATE->GetCoinMode() == COIN_PAY &&
|
||||||
GAMESTATE->m_iCoins < PREFSMAN->m_iCoinsPerCredit )
|
GAMESTATE->m_iCoins < PREFSMAN->m_iCoinsPerCredit )
|
||||||
{
|
{
|
||||||
SCREENMAN->SetNewScreen( INITIAL_SCREEN );
|
SCREENMAN->SetNewScreen( INITIAL_SCREEN );
|
||||||
@@ -78,7 +78,7 @@ ScreenTitleMenu::ScreenTitleMenu( CString sScreenName ) :
|
|||||||
m_textMaxStages.LoadFromFont( THEME->GetPathF(m_sName,"MaxStages") );
|
m_textMaxStages.LoadFromFont( THEME->GetPathF(m_sName,"MaxStages") );
|
||||||
m_textMaxStages.SetName( "MaxStages" );
|
m_textMaxStages.SetName( "MaxStages" );
|
||||||
CString sText =
|
CString sText =
|
||||||
PREFSMAN->m_bEventMode ?
|
GAMESTATE->GetEventMode() ?
|
||||||
CString("event mode") :
|
CString("event mode") :
|
||||||
ssprintf( "%d %s%s max", PREFSMAN->m_iNumArcadeStages, MAX_STAGES_TEXT.c_str(), (PREFSMAN->m_iNumArcadeStages>1)?"s":"" );
|
ssprintf( "%d %s%s max", PREFSMAN->m_iNumArcadeStages, MAX_STAGES_TEXT.c_str(), (PREFSMAN->m_iNumArcadeStages>1)?"s":"" );
|
||||||
m_textMaxStages.SetText( sText );
|
m_textMaxStages.SetText( sText );
|
||||||
|
|||||||
@@ -1436,7 +1436,7 @@ static void HandleInputEvents(float fDeltaTime)
|
|||||||
continue; // skip
|
continue; // skip
|
||||||
|
|
||||||
// check back in event mode
|
// check back in event mode
|
||||||
if( PREFSMAN->m_bEventMode &&
|
if( GAMESTATE->GetEventMode() &&
|
||||||
CodeDetector::EnteredCode(GameI.controller,CodeDetector::CODE_BACK_IN_EVENT_MODE) )
|
CodeDetector::EnteredCode(GameI.controller,CodeDetector::CODE_BACK_IN_EVENT_MODE) )
|
||||||
{
|
{
|
||||||
MenuI.player = PLAYER_1;
|
MenuI.player = PLAYER_1;
|
||||||
|
|||||||
Reference in New Issue
Block a user