prime/include/MetroidPrime/Player/CGameOptions.hpp

44 lines
1012 B
C++
Raw Normal View History

#ifndef _CGAMEOPTIONS
#define _CGAMEOPTIONS
#include "types.h"
#include "rstl/pair.hpp"
#include "rstl/reserved_vector.hpp"
#include "rstl/vector.hpp"
2022-10-10 19:44:11 +00:00
#include "Kyoto/SObjectTag.hpp"
2022-07-18 22:42:58 +00:00
#include "Kyoto/Streams/CInputStream.hpp"
#include "MetroidPrime/TGameTypes.hpp"
class CGameOptions {
public:
CGameOptions();
CGameOptions(CInputStream& in);
void EnsureOptions();
2022-10-17 11:10:16 +00:00
void SetIsRumbleEnabled(bool rumble);
bool GetIsRumbleEnabled() const { return x68_26_rumble; }
private:
rstl::reserved_vector< bool, 64 > x0_;
int x44_soundMode; // CAudioSys::ESurroundModes
uint x48_screenBrightness;
int x4c_screenXOffset;
int x50_screenYOffset;
int x54_screenStretch;
uint x58_sfxVol;
uint x5c_musicVol;
uint x60_hudAlpha;
uint x64_helmetAlpha;
bool x68_24_hudLag : 1;
bool x68_25_invertY : 1;
bool x68_26_rumble : 1;
bool x68_27_swapBeamsControls : 1;
bool x68_28_hintSystem : 1;
rstl::vector< rstl::pair< CAssetId, CAssetId > > x6c_controlTxtrMap;
};
#endif // _CGAMEOPTIONS