2002-11-16 08:07:38 +00:00
|
|
|
#ifndef PREFSMANAGER_H
|
|
|
|
|
#define PREFSMANAGER_H
|
2002-02-28 19:40:40 +00:00
|
|
|
/*
|
|
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
|
Class: PrefsManager
|
|
|
|
|
|
2002-07-23 01:41:40 +00:00
|
|
|
Desc: Holds user-chosen preferences that are saved between sessions.
|
2002-02-28 19:40:40 +00:00
|
|
|
|
2003-02-01 05:39:48 +00:00
|
|
|
Copyright (c) 2001-2003 by the person(s) listed below. All rights reserved.
|
2002-02-28 19:40:40 +00:00
|
|
|
Chris Danford
|
2003-02-01 05:39:48 +00:00
|
|
|
Chris Gomez
|
2002-02-28 19:40:40 +00:00
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
|
*/
|
2002-06-24 22:04:31 +00:00
|
|
|
|
2002-02-28 19:40:40 +00:00
|
|
|
class PrefsManager
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
PrefsManager();
|
|
|
|
|
~PrefsManager();
|
|
|
|
|
|
2002-07-11 19:02:26 +00:00
|
|
|
// GameOptions (ARE saved between sessions)
|
2002-09-22 18:18:50 +00:00
|
|
|
bool m_bWindowed;
|
2002-11-11 04:53:31 +00:00
|
|
|
int m_iDisplayWidth;
|
|
|
|
|
int m_iDisplayHeight;
|
|
|
|
|
int m_iDisplayColorDepth;
|
|
|
|
|
int m_iTextureColorDepth;
|
2003-01-11 20:15:00 +00:00
|
|
|
int m_iMaxTextureResolution;
|
2002-11-12 09:23:50 +00:00
|
|
|
int m_iRefreshRate;
|
2002-09-22 18:18:50 +00:00
|
|
|
bool m_bShowStats;
|
2003-01-19 04:44:22 +00:00
|
|
|
enum { BGMODE_OFF, BGMODE_ANIMATIONS, BGMODE_MOVIEVIS, BGMODE_RANDOMMOVIES } m_BackgroundMode;
|
2003-05-28 04:33:55 +00:00
|
|
|
int m_iNumBackgrounds;
|
2002-09-22 18:18:50 +00:00
|
|
|
float m_fBGBrightness;
|
|
|
|
|
int m_iMovieDecodeMS;
|
|
|
|
|
bool m_bHiddenSongs;
|
|
|
|
|
bool m_bVsync;
|
2003-04-18 23:55:20 +00:00
|
|
|
bool m_bDelayedTextureDelete;
|
2003-04-25 03:41:38 +00:00
|
|
|
bool m_bDelayedScreenLoad;
|
2003-06-11 02:58:13 +00:00
|
|
|
bool m_bBannerCache;
|
2002-07-11 19:02:26 +00:00
|
|
|
|
2002-09-22 18:18:50 +00:00
|
|
|
bool m_bIgnoreJoyAxes;
|
|
|
|
|
bool m_bOnlyDedicatedMenuButtons;
|
|
|
|
|
bool m_bMenuTimer;
|
|
|
|
|
bool m_bShowDanger;
|
|
|
|
|
int m_iNumArcadeStages;
|
2003-04-19 19:05:25 +00:00
|
|
|
bool m_bEventMode;
|
2003-01-11 08:55:21 +00:00
|
|
|
float m_fJudgeWindowScale;
|
2002-09-22 18:18:50 +00:00
|
|
|
float m_fLifeDifficultyScale;
|
2003-01-11 08:55:21 +00:00
|
|
|
float m_fJudgeWindowMarvelousSeconds;
|
|
|
|
|
float m_fJudgeWindowPerfectSeconds;
|
|
|
|
|
float m_fJudgeWindowGreatSeconds;
|
|
|
|
|
float m_fJudgeWindowGoodSeconds;
|
|
|
|
|
float m_fJudgeWindowBooSeconds;
|
2003-02-17 05:33:57 +00:00
|
|
|
float m_fJudgeWindowOKSeconds;
|
2002-09-22 18:18:50 +00:00
|
|
|
bool m_bAutoPlay;
|
|
|
|
|
bool m_bDelayedEscape;
|
2003-01-11 08:55:21 +00:00
|
|
|
bool m_bInstructions, m_bShowDontDie, m_bShowSelectGroup;
|
2003-05-20 04:41:47 +00:00
|
|
|
bool m_bShowNative;
|
2002-09-22 18:18:50 +00:00
|
|
|
bool m_bArcadeOptionsNavigation;
|
2003-02-04 03:03:43 +00:00
|
|
|
enum { NEVER, ALWAYS, ABC_ONLY } m_MusicWheelUsesSections;
|
2003-01-21 06:51:35 +00:00
|
|
|
int m_iMusicWheelSwitchSpeed;
|
2003-01-11 08:55:21 +00:00
|
|
|
bool m_bEasterEggs;
|
|
|
|
|
bool m_bMarvelousTiming;
|
2003-04-13 04:50:08 +00:00
|
|
|
int m_iCoinMode;
|
2003-01-19 04:44:22 +00:00
|
|
|
int m_iCoinsPerCredit;
|
|
|
|
|
bool m_bJointPremium;
|
2003-02-01 05:39:48 +00:00
|
|
|
bool m_bPickExtraStage;
|
2003-02-10 05:30:12 +00:00
|
|
|
float m_fLongVerSongSeconds;
|
|
|
|
|
float m_fMarathonVerSongSeconds;
|
2003-04-21 22:36:45 +00:00
|
|
|
enum Maybe { ASK = -1, NO = 0, YES = 1 };
|
|
|
|
|
Maybe m_ShowSongOptions;
|
2003-02-27 10:56:37 +00:00
|
|
|
bool m_bSoloSingle;
|
2003-04-11 01:49:57 +00:00
|
|
|
bool m_bDancePointsForOni; //DDR-Extreme style dance points instead of max2 percent
|
2003-03-07 04:47:04 +00:00
|
|
|
bool m_bTimestamping;
|
2003-03-20 10:59:09 +00:00
|
|
|
bool m_bShowLyrics;
|
2003-03-27 01:56:21 +00:00
|
|
|
bool m_bAutogenMissingTypes;
|
|
|
|
|
bool m_bAutogenGroupCourses;
|
2003-04-11 01:49:57 +00:00
|
|
|
bool m_bBreakComboToGetItem;
|
2003-05-05 04:43:11 +00:00
|
|
|
bool m_bShowDancingCharacters;
|
2003-05-09 05:56:05 +00:00
|
|
|
float m_fDancePointsAccumulated;
|
|
|
|
|
bool m_bUseUnlockSystem;
|
2003-05-26 09:18:44 +00:00
|
|
|
bool m_bFirstRun;
|
2003-05-28 02:35:05 +00:00
|
|
|
bool m_bAutoMapJoysticks;
|
2003-01-26 03:51:59 +00:00
|
|
|
|
2003-01-18 04:26:25 +00:00
|
|
|
/* 0 = no; 1 = yes; -1 = auto (do whatever is appropriate for the arch). */
|
|
|
|
|
int m_iBoostAppPriority;
|
|
|
|
|
|
2003-04-01 19:31:27 +00:00
|
|
|
CStringArray m_asAdditionalSongFolders;
|
|
|
|
|
CString m_DWIPath;
|
2002-05-27 08:23:27 +00:00
|
|
|
|
2003-05-31 21:34:07 +00:00
|
|
|
CString m_sLastSeenVideoDriver;
|
2003-06-10 23:50:31 +00:00
|
|
|
#if defined(WIN32)
|
|
|
|
|
int m_iLastSeenMemory;
|
|
|
|
|
#endif
|
2003-06-05 19:29:27 +00:00
|
|
|
CString m_sVideoRenderers;
|
|
|
|
|
bool m_bAntiAliasing;
|
2003-01-19 21:51:46 +00:00
|
|
|
CString m_sSoundDrivers;
|
2003-01-11 04:03:21 +00:00
|
|
|
float m_fSoundVolume;
|
2003-03-31 21:21:23 +00:00
|
|
|
bool m_bSoundPreloadAll;
|
2003-05-27 01:03:21 +00:00
|
|
|
bool m_bAllowUnacceleratedRenderer;
|
2002-12-13 22:06:30 +00:00
|
|
|
|
2003-02-22 00:12:45 +00:00
|
|
|
/* Game-specific prefs: */
|
2003-06-25 05:02:42 +00:00
|
|
|
CString m_sDefaultModifiers;
|
2003-02-22 00:12:45 +00:00
|
|
|
|
2002-07-23 01:41:40 +00:00
|
|
|
void ReadGlobalPrefsFromDisk( bool bSwitchToLastPlayedGame );
|
|
|
|
|
void SaveGlobalPrefsToDisk();
|
2002-05-27 08:23:27 +00:00
|
|
|
|
|
|
|
|
|
2002-07-23 01:41:40 +00:00
|
|
|
void ReadGamePrefsFromDisk();
|
|
|
|
|
void SaveGamePrefsToDisk();
|
2002-02-28 19:40:40 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
2002-05-27 08:23:27 +00:00
|
|
|
extern PrefsManager* PREFSMAN; // global and accessable from anywhere in our program
|
2002-11-16 08:07:38 +00:00
|
|
|
|
|
|
|
|
#endif
|