mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-08 16:24:55 +00:00
CTweakPlayerGun rep (THE FINAL ONE YAY!!!)
This commit is contained in:
@@ -40,6 +40,7 @@
|
||||
#include "Tweaks/CTweakBall.hpp"
|
||||
#include "Tweaks/CTweakParticle.hpp"
|
||||
#include "Tweaks/CTweakGuiColors.hpp"
|
||||
#include "Tweaks/CTweakPlayerGun.hpp"
|
||||
|
||||
namespace DataSpec
|
||||
{
|
||||
@@ -406,6 +407,8 @@ ResExtractor<PAKBridge> PAKBridge::LookupExtractor(const PAK& pak, const PAK::En
|
||||
return {ExtractTweak<CTweakParticle>, {_S(".yaml")}};
|
||||
if (!name.compare("GuiColors"))
|
||||
return {ExtractTweak<CTweakGuiColors>, {_S(".yaml")}};
|
||||
if (!name.compare("PlayerGun"))
|
||||
return {ExtractTweak<CTweakPlayerGun>, {_S(".yaml")}};
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -58,6 +58,12 @@ struct CTweakBall : public ITweakBall
|
||||
float x128_ = 40000.f;
|
||||
float x12c_ = 10000.f;
|
||||
float x130_ = 10000.f;
|
||||
float x134_ = 1000.f;
|
||||
float x138_ = 10000.f;
|
||||
float x13c_ = 2000.f;
|
||||
float x140_ = 2000.f;
|
||||
float x144_ = 2000.f;
|
||||
float x148_ = 2000.f;
|
||||
Value<float> x14c_;
|
||||
Value<float> x150_;
|
||||
Value<float> x158_;
|
||||
@@ -114,7 +120,22 @@ struct CTweakBall : public ITweakBall
|
||||
Value<float> x234_;
|
||||
|
||||
CTweakBall()=default;
|
||||
CTweakBall(athena::io::IStreamReader& r) { this->read(r); }
|
||||
CTweakBall(athena::io::IStreamReader& r)
|
||||
{
|
||||
this->read(r);
|
||||
x74_ = zeus::degToRad(x74_);
|
||||
x90_ = zeus::degToRad(x90_);
|
||||
x15c_ = zeus::degToRad(x15c_);
|
||||
x16c_ = zeus::degToRad(x16c_);
|
||||
x174_ = zeus::degToRad(x174_);
|
||||
x17c_ = zeus::degToRad(x17c_);
|
||||
x184_ = zeus::degToRad(x184_);
|
||||
x188_ = zeus::degToRad(x188_);
|
||||
x1a8_ = zeus::degToRad(x1a8_);
|
||||
x1b0_ = zeus::degToRad(x1b0_);
|
||||
x1b4_ = zeus::degToRad(x1b4_);
|
||||
x1ec_ = zeus::degToRad(x1ec_);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,8 +11,55 @@ namespace DNAMP1
|
||||
struct CTweakPlayerGun : ITweakPlayerGun
|
||||
{
|
||||
DECL_YAML
|
||||
};
|
||||
Value<float> x4_;
|
||||
Value<float> x8_;
|
||||
Value<float> xc_;
|
||||
Value<float> x10_;
|
||||
Value<float> x14_;
|
||||
Value<float> x18_;
|
||||
Value<float> x1c_;
|
||||
Value<float> x20_;
|
||||
Value<float> x24_;
|
||||
Value<float> x28_;
|
||||
Value<float> x2c_;
|
||||
Value<float> x30_;
|
||||
Value<float> x34_;
|
||||
Value<float> x38_;
|
||||
Value<float> x3c_;
|
||||
Value<float> x40_;
|
||||
Value<float> x44_;
|
||||
Value<float> x48_;
|
||||
Value<zeus::CVector3f> x4c_;
|
||||
Value<zeus::CVector3f> x58_;
|
||||
Value<zeus::CVector3f> x64_;
|
||||
SShotParam x70_bomb;
|
||||
SShotParam x8c_powerBomb;
|
||||
SShotParam x1d4_missile;
|
||||
struct SWeaponInfo : BigYAML
|
||||
{
|
||||
DECL_YAML
|
||||
Value<float> x0_coolDown = 0.1f;
|
||||
SShotParam x4_normal;
|
||||
SChargedShotParam x20_charged;
|
||||
};
|
||||
SWeaponInfo xa8_beams[5];
|
||||
SComboShotParam x1f0_combos[5]; // Originally rstl::prereserved_vector<SShotParam,5>
|
||||
Value<float> x280_ricochetData[5]; // Originally rstl::prereserved_vector<float,5>
|
||||
Value<float> 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_; }
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user