Add support for a few announcer triggers;
gameplay oni fail gameplay oni fail halfway (may as well, used in extreme) gameplay combo overflow (for multiples of 100 over 1000) Hm. neither of the oni fail ones are actually oni-specific (are used with any course mode).
This commit is contained in:
@@ -401,6 +401,8 @@ void ScoreKeeperMAX2::HandleTapRowScore( TapNoteScore scoreOfLastTap, int iNumTa
|
||||
SCREENMAN->PostMessageToTopScreen( SM_900Combo, 0 );
|
||||
else if( CROSSED(1000))
|
||||
SCREENMAN->PostMessageToTopScreen( SM_1000Combo, 0 );
|
||||
else if( (iOldCombo / 100) < (iCurCombo / 100) && iCurCombo > 1000 )
|
||||
SCREENMAN->PostMessageToTopScreen( SM_ComboContinuing, 0 );
|
||||
|
||||
// new max combo
|
||||
GAMESTATE->m_CurStageStats.iMaxCombo[m_PlayerNumber] = max(GAMESTATE->m_CurStageStats.iMaxCombo[m_PlayerNumber], iCurCombo);
|
||||
|
||||
@@ -572,6 +572,7 @@ ScreenGameplay::ScreenGameplay( bool bDemonstration ) : Screen("ScreenGameplay")
|
||||
m_announcer900Combo.Load( ANNOUNCER->GetPathTo("gameplay 900 combo") );
|
||||
m_announcer1000Combo.Load( ANNOUNCER->GetPathTo("gameplay 1000 combo") );
|
||||
m_announcerComboStopped.Load( ANNOUNCER->GetPathTo("gameplay combo stopped") );
|
||||
m_announcerComboContinuing.Load(ANNOUNCER->GetPathTo("gameplay combo overflow") );
|
||||
m_soundAssistTick.Load( THEME->GetPathToS("ScreenGameplay assist tick") );
|
||||
|
||||
switch( GAMESTATE->m_PlayMode )
|
||||
@@ -1663,7 +1664,13 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
m_fTimeLeftBeforeDancingComment = SECONDS_BETWEEN_COMMENTS;
|
||||
}
|
||||
break;
|
||||
|
||||
case SM_ComboContinuing:
|
||||
if( SECS_SINCE_LAST_COMMENT > 2 )
|
||||
{
|
||||
m_announcerComboContinuing.PlayRandom();
|
||||
m_fTimeLeftBeforeDancingComment = SECONDS_BETWEEN_COMMENTS;
|
||||
}
|
||||
break;
|
||||
case SM_BattleTrickLevel1:
|
||||
if( SECS_SINCE_LAST_COMMENT > 3 )
|
||||
{
|
||||
@@ -1766,8 +1773,15 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
if (PREFSMAN->m_bUseUnlockSystem)
|
||||
GAMESTATE->m_pUnlockingSys->UnlockFailExtraStage();
|
||||
}
|
||||
|
||||
SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo("gameplay failed") );
|
||||
|
||||
// Feels hackish. Feel free to make cleaner.
|
||||
if(GAMESTATE->IsCourseMode())
|
||||
if(GAMESTATE->GetCourseSongIndex() > (int(m_apSongsQueue.size() / 2) - 1 ) && GAMESTATE->GetCourseSongIndex() < (int(m_apSongsQueue.size() / 2) + 1))
|
||||
SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo( "gameplay oni failed halfway" ) );
|
||||
else
|
||||
SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo( "gameplay oni failed" ) );
|
||||
else
|
||||
SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo("gameplay failed") );
|
||||
break;
|
||||
|
||||
case SM_GoToScreenAfterFail:
|
||||
|
||||
@@ -43,6 +43,7 @@ const ScreenMessage SM_800Combo = ScreenMessage(SM_User+207);
|
||||
const ScreenMessage SM_900Combo = ScreenMessage(SM_User+208);
|
||||
const ScreenMessage SM_1000Combo = ScreenMessage(SM_User+209);
|
||||
const ScreenMessage SM_ComboStopped = ScreenMessage(SM_User+210);
|
||||
const ScreenMessage SM_ComboContinuing = ScreenMessage(SM_User+211);
|
||||
|
||||
const ScreenMessage SM_BattleTrickLevel1 = ScreenMessage(SM_User+301);
|
||||
const ScreenMessage SM_BattleTrickLevel2 = ScreenMessage(SM_User+302);
|
||||
@@ -169,6 +170,7 @@ protected:
|
||||
RandomSample m_announcer900Combo;
|
||||
RandomSample m_announcer1000Combo;
|
||||
RandomSample m_announcerComboStopped;
|
||||
RandomSample m_announcerComboContinuing;
|
||||
RandomSample m_announcerBattleTrickLevel1;
|
||||
RandomSample m_announcerBattleTrickLevel2;
|
||||
RandomSample m_announcerBattleTrickLevel3;
|
||||
|
||||
Reference in New Issue
Block a user