2002-11-16 08:07:38 +00:00
|
|
|
#ifndef MODECHOICE_H
|
|
|
|
|
#define MODECHOICE_H
|
2002-11-11 04:53:31 +00:00
|
|
|
/*
|
|
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
|
Class: ModeChoice
|
|
|
|
|
|
|
|
|
|
Desc: .
|
|
|
|
|
|
|
|
|
|
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
|
|
|
|
|
Chris Danford
|
|
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#include "Game.h"
|
|
|
|
|
#include "Style.h"
|
2003-03-02 01:43:33 +00:00
|
|
|
#include "GameConstantsAndTypes.h"
|
2003-07-20 05:53:22 +00:00
|
|
|
#include "PlayerNumber.h"
|
2002-11-11 04:53:31 +00:00
|
|
|
|
2004-01-25 16:48:09 +00:00
|
|
|
class Song;
|
2004-01-14 05:10:24 +00:00
|
|
|
class Steps;
|
2004-04-30 07:46:46 +00:00
|
|
|
class Course;
|
2004-01-14 05:10:24 +00:00
|
|
|
class Character;
|
|
|
|
|
|
2002-11-11 04:53:31 +00:00
|
|
|
struct ModeChoice // used in SelectMode
|
|
|
|
|
{
|
2003-07-20 05:53:22 +00:00
|
|
|
ModeChoice() { Init(); }
|
|
|
|
|
void Init();
|
|
|
|
|
|
2003-09-25 05:56:38 +00:00
|
|
|
void Load( int iIndex, CString str );
|
2003-09-27 19:23:34 +00:00
|
|
|
void ApplyToAllPlayers() const;
|
|
|
|
|
void Apply( PlayerNumber pn ) const;
|
|
|
|
|
bool DescribesCurrentMode( PlayerNumber pn ) const;
|
|
|
|
|
bool DescribesCurrentModeForAllPlayers() const;
|
2003-09-27 03:06:35 +00:00
|
|
|
bool IsPlayable( CString *why = NULL ) const;
|
2003-09-29 08:56:33 +00:00
|
|
|
bool IsZero() const;
|
2003-07-20 05:53:22 +00:00
|
|
|
|
2004-01-14 05:10:24 +00:00
|
|
|
CString m_sName; // display name
|
2003-09-25 05:56:38 +00:00
|
|
|
bool m_bInvalid;
|
2004-04-30 07:46:46 +00:00
|
|
|
CString m_sInvalidReason;
|
2003-09-25 05:56:38 +00:00
|
|
|
int m_iIndex;
|
|
|
|
|
Game m_game;
|
|
|
|
|
Style m_style;
|
|
|
|
|
PlayMode m_pm;
|
|
|
|
|
Difficulty m_dc;
|
|
|
|
|
CString m_sAnnouncer;
|
2003-09-27 08:01:17 +00:00
|
|
|
CString m_sModifiers;
|
2003-09-27 01:45:46 +00:00
|
|
|
CString m_sScreen;
|
2004-01-25 16:48:09 +00:00
|
|
|
Song* m_pSong;
|
2004-01-14 05:10:24 +00:00
|
|
|
Steps* m_pSteps;
|
2004-04-30 07:46:46 +00:00
|
|
|
Course* m_pCourse;
|
2004-01-14 05:10:24 +00:00
|
|
|
Character* m_pCharacter;
|
2004-01-14 06:34:37 +00:00
|
|
|
CourseDifficulty m_CourseDifficulty;
|
2002-11-11 04:53:31 +00:00
|
|
|
};
|
2002-11-16 08:07:38 +00:00
|
|
|
|
|
|
|
|
#endif
|