#ifndef _DNAMP1_CTWEAKGUI_HPP_ #define _DNAMP1_CTWEAKGUI_HPP_ #include "../../DNACommon/Tweaks/ITweakGui.hpp" namespace DataSpec { namespace DNAMP1 { struct CTweakGui : ITweakGui { DECL_YAML Value x4_; Value x8_mapAlphaInterp; Value xc_; Value x10_; Value x14_; Value x18_; Value x1c_; Value x20_; Value x24_; Value x28_; atUint32 x2c_ = 0; Value x30_; Value x34_energyBarFilledSpeed; Value x38_energyBarShadowSpeed; Value x3c_energyBarDrainDelay; Value x40_energyBarAlwaysResetDelay; Value x44_; Value x48_; Value x4c_; Value x50_; Value x54_; Value x58_; Value x5c_; Value x60_; Value x64_; Value x70_; Value x7c_; Value x80_; Value x84_; Value x88_; Value x8c_; Value x90_; Value x94_; Value x98_; Value x9c_; Value xa0_; Value xa4_; Value xa8_hudCamFovTweak; Value xac_hudCamYTweak; Value xb0_hudCamZTweak; Value xb4_; Value xb8_; Value xbc_; Value xc0_; Value xc4_; Value xc8_; Value xcc_; Value xd0_; Value xd4_; Value xd8_; Value xdc_; Value xe0_; Value xe4_; Value xe8_; Value xec_; Value xf0_; Value xf4_; Value xf8_hudVisMode; Value xfc_helmetVisMode; Value x100_enableAutoMapper; Value x104_; Value x108_enableTargetingManager; Value x10c_enablePlayerVisor; Value x110_; Value x114_; Value x118_; Value x11c_; Value x120_; Value x124_; Value x128_; Value x12c_; Value x130_; Value x134_; Value x138_; Value x13c_; Value x140_; Value x144_; Value x148_; Value x14c_; String<-1> x150_; String<-1> x160_; String<-1> x170_; String<-1> x180_; String<-1> x190_; Value x1a0_; Value x1a4_; Value x1a8_; Value x1ac_; Value x1b0_; Value x1b4_; Value x1b8_; Value x1bc_; Value x1c0_; Value x1c4_; Value x1c8_; Value x1cc_; Value x1cd_; Value x1d0_; Value x1d4_; Value x1d8_; Value x1dc_; Value x1e0_; Value x1e4_; Value x1e8_; Value x1ec_; Value x1f0_; Value x1f4_; Value x1f8_; Value x1fc_; float x200_; float x204_xrayBlurScaleLinear = 0.0014f; float x208_xrayBlurScaleQuadratic = 0.0000525f; Value x20c_; Value x210_scanSidesAngle; Value x214_scanSidesXScale; Value x218_scanSidesPositionEnd; Value x21c_; Value x220_scanSidesDuration; Value x224_scanSidesStartTime; float x228_scanSidesEndTime; Value x22c_; Value x230_; Value x234_; Value x238_; Value x23c_; Value x240_; Value x244_scanAppearanceOffset; Value x248_; Value x24c_; Value x250_; Value x254_ballViewportYReduction; Value x258_; Value x25c_; Value x260_; Value x264_; Value x268_; Value x26c_; Value x270_scanSidesPositionStart; Value x274_; bool x275_ = true; Value x278_wtMgrCharsPerSfx; Value x27c_xrayFogMode; Value x280_xrayFogNearZ; Value x284_xrayFogFarZ; DNAColor x288_xrayFogColor; Value x28c_thermalVisorLevel; DNAColor x290_thermalVisorColor; DNAColor x294_; DNAColor x298_; DNAColor x29c_; DNAColor x2a0_; DNAColor x2a4_; DNAColor x2a8_; DNAColor x2ac_; DNAColor x2b0_; DNAColor x2b4_; Value x2b8_; Value x2bc_; Value x2c0_; Value m_scanSpeedsCount; Vector x2c4_scanSpeeds; String<-1> x2d0_; String<-1> x2e0_; String<-1> x2f0_; DNAColor x300_; DNAColor x304_; Value x308_; Value x30c_; Value x310_; String<-1> x314_; String<-1> x324_; String<-1> x334_; DNAColor x344_; DNAColor x348_; DNAColor x34c_; DNAColor x350_; DNAColor x354_; DNAColor x358_; Value x35c_; Value x360_; Value x364_; CTweakGui() = default; CTweakGui(athena::io::IStreamReader& r) { this->read(r); } float GetMapAlphaInterpolant() const { return x8_mapAlphaInterp; } float GetEnergyBarFilledSpeed() const { return x34_energyBarFilledSpeed; } float GetEnergyBarShadowSpeed() const { return x38_energyBarShadowSpeed; } float GetEnergyBarDrainDelay() const { return x3c_energyBarDrainDelay; } bool GetEnergyBarAlwaysResetDelay() const { return x40_energyBarAlwaysResetDelay; } atUint32 GetHudCamFovTweak() const { return xa8_hudCamFovTweak; } atUint32 GetHudCamYTweak() const { return xac_hudCamYTweak; } atUint32 GetHudCamZTweak() const { return xb0_hudCamZTweak; } EHudVisMode GetHudVisMode() const { return xf8_hudVisMode; } EHelmetVisMode GetHelmetVisMode() const { return xfc_helmetVisMode; } atUint32 GetEnableAutoMapper() const { return x100_enableAutoMapper; } atUint32 GetEnableTargetingManager() const { return x108_enableTargetingManager; } atUint32 GetEnablePlayerVisor() const { return x10c_enablePlayerVisor; } float GetScanAppearanceOffset() const { return x244_scanAppearanceOffset; } float GetBallViewportYReduction() const { return x254_ballViewportYReduction; } float GetXrayBlurScaleLinear() const { return x204_xrayBlurScaleLinear; } float GetXrayBlurScaleQuadratic() const { return x208_xrayBlurScaleQuadratic; } float GetScanSidesAngle() const { return x210_scanSidesAngle; } float GetScanSidesXScale() const { return x214_scanSidesXScale; } float GetScanSidesPositionEnd() const { return x218_scanSidesPositionEnd; } float GetScanSidesDuration() const { return x220_scanSidesDuration; } float GetScanSidesStartTime() const { return x224_scanSidesStartTime; } float GetScanSidesEndTime() const { return x228_scanSidesEndTime; } float GetScanSidesPositionStart() const { return x270_scanSidesPositionStart; } float GetWorldTransManagerCharsPerSfx() const { return x278_wtMgrCharsPerSfx; } atUint32 GetXRayFogMode() const { return x27c_xrayFogMode; } float GetXRayFogNearZ() const { return x280_xrayFogNearZ; } float GetXRayFogFarZ() const { return x284_xrayFogFarZ; } const zeus::CColor& GetXRayFogColor() const { return x288_xrayFogColor; } float GetThermalVisorLevel() const { return x28c_thermalVisorLevel; } const zeus::CColor& GetThermalVisorColor() const { return x290_thermalVisorColor; } float GetScanSpeed(int idx) const { if (idx < 0 || idx >= x2c4_scanSpeeds.size()) return 0.f; return x2c4_scanSpeeds[idx]; } void FixupValues() { xd8_ = zeus::degToRad(xd8_); xdc_ = zeus::degToRad(xdc_); x200_ = x1f4_ * 0.25f; x204_xrayBlurScaleLinear = x1f8_ * 0.25f; x208_xrayBlurScaleQuadratic = x1fc_ * 0.25f; x210_scanSidesAngle = zeus::degToRad(x210_scanSidesAngle); x228_scanSidesEndTime = x220_scanSidesDuration + x224_scanSidesStartTime; if (x27c_xrayFogMode == 1) x27c_xrayFogMode = 2; else if (x27c_xrayFogMode == 2) x27c_xrayFogMode = 4; else if (x27c_xrayFogMode == 3) x27c_xrayFogMode = 5; else x27c_xrayFogMode = 0; x84_ *= 2.0f; } }; } } #endif // _DNAMP1_CTWEAKGUI_HPP_