#ifndef _CTWEAKGAME #define _CTWEAKGAME #include "types.h" #include "MetroidPrime/Tweaks/ITweakObject.hpp" #include "Kyoto/TOneStatic.hpp" #include "rstl/string.hpp" class CTweakGame; class CTweakGame : public ITweakObject, public TOneStatic< CTweakGame > { public: CTweakGame(CInputStream&); ~CTweakGame() override; const rstl::string& GetWorldPrefix() { return x4_worldPrefix; } const rstl::string& GetDefaultRoom() const { return x14_defaultRoom; } bool GetSplashScreensDisabled() const { return x2b_splashScreensDisabled; } float GetFirstPersonFOV() const { return x24_fov; } float GetPressStartDelay() const { return x30_pressStartDelay; } float GetWavecapIntensityNormal() const { return x34_wavecapIntensityNormal; } float GetWavecapIntensityPoison() const { return x38_wavecapIntensityPoison; } float GetWavecapIntensityLava() const { return x3c_wavecapIntensityLava; } float GetRippleIntensityNormal() const { return x40_rippleIntensityNormal; } float GetRippleIntensityPoison() const { return x44_rippleIntensityPoison; } float GetRippleIntensityLava() const { return x48_rippleIntensityLava; } float GetFluidEnvBumpScale() const { return x4c_fluidEnvBumpScale; } float GetWaterFogDistanceBase() const { return x50_waterFogDistanceBase; } float GetWaterFogDistanceRange() const { return x54_waterFogDistanceRange; } float GetGravityWaterFogDistanceBase() const { return x58_gravityWaterFogDistanceBase; } float GetGravityWaterFogDistanceRange() const { return x5c_gravityWaterFogDistanceRange; } float GetHardModeDamageMultiplier() const { return x60_hardmodeDamageMult; } float GetHardModeWeaponMultiplier() const { return x64_hardmodeWeaponMult; } private: rstl::string x4_worldPrefix; rstl::string x14_defaultRoom; float x24_fov; bool x28_unknown1; bool x29_unknown2; bool x2a_unknown3; bool x2b_splashScreensDisabled; float x2c_unknown5; float x30_pressStartDelay; float x34_wavecapIntensityNormal; float x38_wavecapIntensityPoison; float x3c_wavecapIntensityLava; float x40_rippleIntensityNormal; float x44_rippleIntensityPoison; float x48_rippleIntensityLava; float x4c_fluidEnvBumpScale; float x50_waterFogDistanceBase; float x54_waterFogDistanceRange; float x58_gravityWaterFogDistanceBase; float x5c_gravityWaterFogDistanceRange; float x60_hardmodeDamageMult; float x64_hardmodeWeaponMult; }; extern CTweakGame* gpTweakGame; #endif // _CTWEAKGAME