#ifndef _DNAMP1_CTWEAKPLAYER_HPP_ #define _DNAMP1_CTWEAKPLAYER_HPP_ #include "../../DNACommon/Tweaks/ITweakPlayer.hpp" namespace DataSpec { namespace DNAMP1 { struct CTweakPlayer : ITweakPlayer { Delete _d; Value x4_maxTranslationalAcceleration[8]; Value x24_[8]; Value x44_translationFriction[8]; Value x64_[8]; Value x84_[8]; Value xa4_translationMaxSpeed[8]; Value xc4_normalGravAccel; Value xc8_fluidGravAccel; Value xcc_; Value xd0_; Value xd4_; Value xd8_; Value xdc_; Value xe0_; Value xe4_; Value xe8_; Value xec_; Value xf0_; Value xf4_; Value xf8_; Value xfc_; Value x100_; Value x104_; Value x108_; Value x10c_; Value x110_; Value x114_; Value x118_; Value x11c_; Value x120_; Value x124_eyeOffset; Value x128_; Value x12c_; Value x130_horizontalFreeLookAngleVel; Value x134_verticalFreeLookAngleVel; Value x138_freeLookSpeed; Value x13c_freeLookSnapSpeed; Value x140_; Value x144_freeLookCenteredThresholdAngle; Value x148_freeLookCenteredTime; Value x14c_; Value x150_leftDiv; Value x154_rightDiv; Value x158_[3]; Value x164_[3]; Value x170_[3]; Value x17c_; Value x180_orbitNormalDistance; Value x184_; Value x188_maxUpwardOrbitLookAngle; Value x18c_maxDownwardOrbitLookAngle; Value x190_orbitHorizAngle; Value x194_; Value x198_; Value x19c_; Value x1a0_; Value x1a4_orbitDistanceThreshold; Value x1a8_orbitScreenBoxHalfExtentX[2]; Value x1b0_orbitScreenBoxHalfExtentY[2]; Value x1b8_orbitScreenBoxCenterX[2]; Value x1c0_orbitScreenBoxCenterY[2]; Value x1c8_orbitZoneIdealX[2]; Value x1d0_orbitZoneIdealY[2]; Value x1d8_orbitNearX; Value x1dc_orbitNearZ; Value x1e0_; Value x1e4_; Value x1e8_; Value x1ec_orbitZRange; Value x1f0_; Value x1f4_; Value x1f8_; Value x1fc_; Value x200_24_ : 1; Value x200_25_ : 1; Value x204_; Value x208_; Value x20c_; Value x210_; Value x214_; Value x218_scanningRange; Value x21c_24_scanRetention : 1; Value x21c_25_scanFreezesGame : 1; Value x21c_26_orbitWhileScanning : 1; Value x220_; Value x224_scanningFrameSenseRange; Value x228_24_freelookTurnsPlayer : 1; Value x228_25_ : 1; Value x228_26_ : 1; Value x228_27_ : 1; Value x228_28_enableFreeLook : 1; Value x228_29_twoButtonsForFreeLook : 1; Value x228_30_ : 1; Value x228_31_ : 1; Value x229_24_ : 1; Value x229_25_aimWhenOrbitingPoint : 1; Value x229_26_stayInFreeLookWhileFiring : 1; Value x229_27_ : 1; Value x229_28_ : 1; Value x229_29_ : 1; Value x229_30_gunButtonTogglesHolster : 1; Value x229_31_gunNotFiringHolstersGun : 1; Value x22a_24_ : 1; Value x22a_25_ : 1; Value x22a_26_firingCancelsCameraPitch : 1; Value x22a_27_assistedAimingIgnoreHorizontal : 1; Value x22a_28_assistedAimingIgnoreVertical : 1; Value x22c_; Value x230_; Value x234_aimMaxDistance; Value x238_; Value x23c_; Value x240_; Value x244_; Value x248_; Value x24c_aimThresholdDistance; Value x250_; Value x254_; Value x258_aimBoxWidth; Value x25c_aimBoxHeight; Value x260_aimTargetTimer; Value x264_aimAssistHorizontalAngle; Value x268_aimAssistVerticalAngle; Value x26c_playerHeight; Value x270_playerXYHalfExtent; Value x274_; Value x278_; Value x27c_playerBallHalfExtent; Value x280_; Value x284_; Value x288_; Value x28c_; Value x290_; Value x294_; Value x298_; Value x29c_; Value x2a0_orbitDistanceMax; Value x2a4_grappleSwingLength; Value x2a8_grappleSwingPeriod; Value x2ac_grapplePullSpeedMin; Value x2b0_; Value x2b4_maxGrappleLockedTurnAlignDistance; Value x2b8_grapplePullSpeedProportion; Value x2bc_grapplePullSpeedMax; Value x2c0_grappleLookCenterSpeed; Value x2c4_maxGrappleTurnSpeed; Value x2c8_grappleJumpForce; Value x2cc_grappleReleaseTime; Value x2d0_grappleJumpMode; Value x2d4_; Value x2d5_invertGrappleTurn; Value x2d8_; Value x2dc_; Value x2e0_; Value x2e4_; Value x2e8_; Value x2ec_; Value x2f0_; Value x2f4_; Value x2f8_frozenTimeout; Value x2fc_iceBreakJumpCount; Value x300_variaDamageReduction; Value x304_gravityDamageReduction; Value x308_phazonDamageReduction; float GetMaxTranslationalAcceleration(int s) const { return x4_maxTranslationalAcceleration[s]; } float GetPlayerTranslationFriction(int s) const { return x44_translationFriction[s]; } float GetPlayerTranslationMaxSpeed(int s) const { return xa4_translationMaxSpeed[s]; } float GetNormalGravAccel() const { return xc4_normalGravAccel; } float GetFluidGravAccel() const { return xc8_fluidGravAccel; } float GetEyeOffset() const { return x124_eyeOffset; } float GetFreeLookSpeed() const { return x138_freeLookSpeed; } float GetFreeLookSnapSpeed() const { return x13c_freeLookSnapSpeed; } float GetFreeLookCenteredThresholdAngle() const { return x144_freeLookCenteredThresholdAngle; } float GetFreeLookCenteredTime() const { return x148_freeLookCenteredTime; } float GetOrbitNormalDistance() const { return x180_orbitNormalDistance; } float GetMaxUpwardOrbitLookAngle() const { return x188_maxUpwardOrbitLookAngle; } float GetMaxDownwardOrbitLookAngle() const { return x18c_maxDownwardOrbitLookAngle; } float GetOrbitHorizAngle() const { return x190_orbitHorizAngle; } float GetOrbitDistanceThreshold() const { return x1a4_orbitDistanceThreshold; } uint32_t GetOrbitScreenBoxHalfExtentX(int zone) const { return x1a8_orbitScreenBoxHalfExtentX[zone]; } uint32_t GetOrbitScreenBoxHalfExtentY(int zone) const { return x1b0_orbitScreenBoxHalfExtentY[zone]; } uint32_t GetOrbitScreenBoxCenterX(int zone) const { return x1b8_orbitScreenBoxCenterX[zone]; } uint32_t GetOrbitScreenBoxCenterY(int zone) const { return x1c0_orbitScreenBoxCenterY[zone]; } uint32_t GetOrbitZoneIdealX(int zone) const { return x1c8_orbitZoneIdealX[zone]; } uint32_t GetOrbitZoneIdealY(int zone) const { return x1d0_orbitZoneIdealY[zone]; } float GetOrbitNearX() const { return x1d8_orbitNearX; } float GetOrbitNearZ() const { return x1dc_orbitNearZ; } float GetOrbitZRange() const { return x1ec_orbitZRange; } float GetScanningRange() const { return x218_scanningRange; } bool GetScanRetention() const { return x21c_24_scanRetention; } bool GetScanFreezesGame() const { return x21c_25_scanFreezesGame; } bool GetOrbitWhileScanning() const { return x21c_26_orbitWhileScanning; } float GetScanningFrameSenseRange() const { return x224_scanningFrameSenseRange; } bool GetEnableFreeLook() const { return x228_28_enableFreeLook; } bool GetTwoButtonsForFreeLook() const { return x228_29_twoButtonsForFreeLook; } bool GetAimWhenOrbitingPoint() const { return x229_25_aimWhenOrbitingPoint; } bool GetStayInFreeLookWhileFiring() const { return x229_26_stayInFreeLookWhileFiring; } bool GetGunButtonTogglesHolster() const { return x229_30_gunButtonTogglesHolster; } bool GetGunNotFiringHolstersGun() const { return x229_31_gunNotFiringHolstersGun; } bool GetFiringCancelsCameraPitch() const { return x22a_26_firingCancelsCameraPitch; } bool GetAssistedAimingIgnoreHorizontal() const { return x22a_27_assistedAimingIgnoreHorizontal; } bool GetAssistedAimingIgnoreVertical() const { return x22a_28_assistedAimingIgnoreVertical; } float GetAimMaxDistance() const { return x234_aimMaxDistance; } float GetAimThresholdDistance() const { return x24c_aimThresholdDistance; } float GetAimBoxWidth() const { return x258_aimBoxWidth; } float GetAimBoxHeight() const { return x25c_aimBoxHeight; } float GetAimTargetTimer() const { return x260_aimTargetTimer; } float GetAimAssistHorizontalAngle() const { return x264_aimAssistHorizontalAngle; } float GetAimAssistVerticalAngle() const { return x268_aimAssistVerticalAngle; } float GetPlayerHeight() const { return x26c_playerHeight; } float GetPlayerXYHalfExtent() const { return x270_playerXYHalfExtent; } float GetX274() const { return x274_; } float GetX278() const { return x278_; } float GetPlayerBallHalfExtent() const { return x27c_playerBallHalfExtent; } float GetOrbitDistanceMax() const { return x2a0_orbitDistanceMax; } float GetGrappleSwingLength() const { return x2a4_grappleSwingLength; } float GetGrappleSwingPeriod() const { return x2a8_grappleSwingPeriod; } float GetGrapplePullSpeedMin() const { return x2ac_grapplePullSpeedMin; } float GetMaxGrappleLockedTurnAlignDistance() const { return x2b4_maxGrappleLockedTurnAlignDistance; } float GetGrapplePullSpeedProportion() const { return x2b8_grapplePullSpeedProportion; } float GetGrapplePullSpeedMax() const { return x2bc_grapplePullSpeedMax; } float GetGrappleLookCenterSpeed() const { return x2c0_grappleLookCenterSpeed; } float GetMaxGrappleTurnSpeed() const { return x2c4_maxGrappleTurnSpeed; } float GetGrappleJumpForce() const { return x2c8_grappleJumpForce; } float GetGrappleReleaseTime() const { return x2cc_grappleReleaseTime; } uint32_t GetGrappleJumpMode() const { return x2d0_grappleJumpMode; } bool InvertGrappleTurn() const { return x2d5_invertGrappleTurn; } float GetHorizontalFreeLookAngleVel() const { return x130_horizontalFreeLookAngleVel; } float GetVerticalFreeLookAngleVel() const { return x134_verticalFreeLookAngleVel; } float GetX184() const { return x184_; } float GetX1fc() const { return x1fc_; } bool GetFreeLookTurnsPlayer() const { return x228_24_freelookTurnsPlayer; } float GetX288() const { return x288_; } float GetX28c() const { return x28c_; } float GetX290() const { return x290_; } float GetX294() const { return x294_; } float GetX298() const { return x298_; } float GetX29C() const { return x29c_; } float GetX280() const { return x280_; } float GetX2B0() const { return x2b0_; } float GetX14C() const { return x14c_; } float GetLeftLogicalThreshold() const { return x150_leftDiv; } float GetRightLogicalThreshold() const { return x154_rightDiv; } float GetX164(int type) const { return x164_[type]; } float GetFrozenTimeout() const { return x2f8_frozenTimeout; } uint32_t GetIceBreakJumpCount() const { return x2fc_iceBreakJumpCount; } float GetVariaDamageReduction() const { return x300_variaDamageReduction; } float GetGravityDamageReduction() const { return x304_gravityDamageReduction; } float GetPhazonDamageReduction() const { return x308_phazonDamageReduction; } CTweakPlayer() = default; CTweakPlayer(athena::io::IStreamReader& reader) { read(reader); FixupValues(); } void read(athena::io::IStreamReader& __dna_reader); void write(athena::io::IStreamWriter& __dna_writer) const; void read(athena::io::YAMLDocReader& __dna_docin); void write(athena::io::YAMLDocWriter& __dna_docout) const; void FixupValues(); static const char* DNAType(); const char* DNATypeV() const { return DNAType(); } size_t binarySize(size_t __isz) const; }; } } #endif // _DNAMP1_CTWEAKPLAYER_HPP_