00001
00002
00003
#ifndef SCREENNETSELECTMUSIC_H
00004
#define SCREENNETSELECTMUSIC_H
00005
00006
#include "ScreenNetSelectBase.h"
00007
#include "ScreenWithMenuElements.h"
00008
#include "Sprite.h"
00009
#include "Quad.h"
00010
#include "BitmapText.h"
00011
00012
#include "DifficultyRating.h"
00013
#include "ModeSwitcher.h"
00014
#include "DifficultyIcon.h"
00015
#include "Difficulty.h"
00016
#include "DifficultyMeter.h"
00017
#include "MusicWheel.h"
00018
#include "OptionIconRow.h"
00019
#include "BPMDisplay.h"
00020
00021 class ScreenNetSelectMusic :
public ScreenNetSelectBase
00022 {
00023
public:
00024
ScreenNetSelectMusic(
const CString& sName );
00025
00026
virtual void Input(
const DeviceInput& DeviceI,
const InputEventType type,
00027
const GameInput& GameI,
const MenuInput& MenuI,
00028
const StyleInput& StyleI );
00029
virtual void HandleScreenMessage(
const ScreenMessage SM );
00030
00031
void UpdateSongsListPos();
00032
void UpdateGroupsListPos();
00033
void UpdateSongsList();
00034
void UpdateTextInput();
00035
00036
void StartSelectedSong();
00037
00038
private:
00039 int m_iSongNum;
00040 int m_iShowSongs;
00041 int m_iGroupNum;
00042 int m_iShowGroups;
00043
00044 enum NetScreenSelectModes
00045 {
00046
SelectGroup = 0,
00047
SelectSong,
00048
SelectDifficulty,
00049
SelectOptions,
00050
SelectModes,
00051 };
00052
00053 NetScreenSelectModes m_SelectMode;
00054
00055
protected:
00056
virtual void MenuStart( PlayerNumber pn );
00057
virtual void MenuLeft( PlayerNumber pn,
const InputEventType type );
00058
virtual void MenuUp( PlayerNumber pn,
const InputEventType type );
00059
virtual void MenuDown( PlayerNumber pn,
const InputEventType type );
00060
virtual void MenuRight( PlayerNumber pn,
const InputEventType type );
00061
virtual void MenuBack( PlayerNumber pn );
00062
00063
virtual void Update(
float fDeltaTime );
00064
00065
void MusicChanged();
00066
00067
void TweenOffScreen();
00068
private:
00069 MusicWheel m_MusicWheel;
00070
00071 Sprite m_sprDiff;
00072
00073
00074 DifficultyIcon m_DifficultyIcon[
NUM_PLAYERS];
00075 Difficulty m_DC[
NUM_PLAYERS];
00076
00077
void UpdateDifficulties( PlayerNumber pn );
00078 DifficultyMeter m_DifficultyMeters[
NUM_PLAYERS];
00079
00080 RageSound m_soundChangeOpt;
00081 RageSound m_soundChangeSel;
00082
00083 BPMDisplay m_BPMDisplay;
00084 OptionIconRow m_OptionIconRow[
NUM_PLAYERS];
00085
00086 Song *
m_cSong;
00087
00088 bool m_bInitialSelect;
00089 bool m_bAllowInput;
00090 };
00091
00092
#endif
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117