82199383a8
Split ScreenLogo and ScreenTitleMenu. In ScreenTitleMenu, add a different animation if using COIN_HOME (for SMMAX2). Added codes at TitleMenu to change Theme and Announcer.
92 lines
1.8 KiB
C++
92 lines
1.8 KiB
C++
/*
|
|
-----------------------------------------------------------------------------
|
|
Class: ScreenTitleMenu
|
|
|
|
Desc: The main title screen and menu.
|
|
|
|
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
|
|
Chris Danford
|
|
-----------------------------------------------------------------------------
|
|
*/
|
|
|
|
#include "Screen.h"
|
|
#include "Transition.h"
|
|
#include "Sprite.h"
|
|
#include "BitmapText.h"
|
|
#include "RageSound.h"
|
|
#include "BGAnimation.h"
|
|
#include "RageTimer.h"
|
|
#include "RandomSample.h"
|
|
|
|
|
|
class ScreenTitleMenu : public Screen
|
|
{
|
|
public:
|
|
ScreenTitleMenu();
|
|
virtual ~ScreenTitleMenu();
|
|
|
|
virtual void Input( const DeviceInput& DeviceI, const InputEventType type, const GameInput &GameI, const MenuInput &MenuI, const StyleInput &StyleI );
|
|
virtual void Update( float fDelta );
|
|
virtual void HandleScreenMessage( const ScreenMessage SM );
|
|
|
|
enum Choice
|
|
{
|
|
CHOICE_GAME_START = 0,
|
|
CHOICE_SELECT_GAME,
|
|
CHOICE_OPTIONS,
|
|
CHOICE_EDIT,
|
|
CHOICE_JUKEBOX,
|
|
#ifdef DEBUG
|
|
CHOICE_SANDBOX,
|
|
#endif
|
|
CHOICE_EXIT,
|
|
NUM_CHOICES // leave this at the end!
|
|
};
|
|
|
|
CString ChoiceToString( Choice c )
|
|
{
|
|
const CString s[NUM_CHOICES] = {
|
|
"GAME START",
|
|
"SELECT GAME",
|
|
"OPTIONS",
|
|
"EDIT/SYNC SONGS",
|
|
"JUKEBOX",
|
|
#ifdef DEBUG
|
|
"SANDBOX",
|
|
#endif
|
|
"EXIT"
|
|
};
|
|
return s[c];
|
|
}
|
|
|
|
|
|
private:
|
|
void GainFocus( int iChoiceIndex );
|
|
void LoseFocus( int iChoiceIndex );
|
|
|
|
Choice m_Choice;
|
|
|
|
BGAnimation m_Background;
|
|
Sprite m_sprLogo;
|
|
BitmapText m_textVersion;
|
|
BitmapText m_textSongs;
|
|
BitmapText m_textHelp;
|
|
BitmapText m_textChoice[NUM_CHOICES];
|
|
|
|
RandomSample m_soundAttract;
|
|
RageSound m_soundChange;
|
|
RageSound m_soundSelect;
|
|
RageSound m_soundInvalid;
|
|
|
|
RageTimer TimeToDemonstration;
|
|
|
|
BGAnimation m_CoinMode;
|
|
BGAnimation m_JointPremium;
|
|
|
|
Transition m_In;
|
|
Transition m_Out;
|
|
};
|
|
|
|
|
|
|