#ifndef _DNAMP1_CTWEAKPLAYERGUN_HPP_ #define _DNAMP1_CTWEAKPLAYERGUN_HPP_ #include "../../DNACommon/Tweaks/ITweakPlayerGun.hpp" namespace DataSpec { namespace DNAMP1 { struct CTweakPlayerGun : ITweakPlayerGun { DECL_YAML Value x4_; Value x8_; Value xc_; Value x10_; Value x14_; Value x18_; Value x1c_; Value x20_; Value x24_; Value x28_; Value x2c_; Value x30_; Value x34_; Value x38_; Value x3c_; Value x40_; Value x44_; Value x48_; Value x4c_; Value x58_; Value x64_; SShotParam x70_bomb; SShotParam x8c_powerBomb; SShotParam x1d4_missile; struct SWeaponInfo : BigYAML { DECL_YAML Value x0_coolDown = 0.1f; SShotParam x4_normal; SChargedShotParam x20_charged; }; SWeaponInfo xa8_beams[5]; SComboShotParam x1f0_combos[5]; // Originally rstl::prereserved_vector Value x280_ricochetData[5]; // Originally rstl::prereserved_vector Value unused; // Kept for consistency CTweakPlayerGun() = default; CTweakPlayerGun(athena::io::IStreamReader& r) { this->read(r); x44_ = zeus::degToRad(x44_); } float GetX24() const { return x24_; } float GetX28() const { return x28_; } float GetX2c() const { return x2c_; } float GetX30() const { return x30_; } float GetX34() const { return x34_; } float GetX38() const { return x38_; } }; } } #endif // _DNAMP1_CTWEAKPLAYERGUN_HPP_