2
0
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:
2017-01-26 18:58:21 -08:00
parent b103ae3943
commit 933e731817
15 changed files with 178 additions and 47 deletions

View File

@@ -9,12 +9,12 @@ CPlayerGun::CPlayerGun(TUniqueId id)
: x0_lights(8, zeus::CVector3f{-30.f, 0.f, 30.f}, 4, 4, 0, 0, 0, 0.1f), x538_thisId(id),
x550_camBob(CPlayerCameraBob::ECameraBobType::One,
zeus::CVector2f(0.071f, 0.141f), 0.47f),
x678_morph(g_tweakPlayerGun->GetSomething6(), g_tweakPlayerGun->GetSomething5())
x678_morph(g_tweakPlayerGun->GetX38(), g_tweakPlayerGun->GetX34())
{
x354_ = g_tweakPlayerGun->GetSomething3();
x358_ = g_tweakPlayerGun->GetSomething4();
x668_ = g_tweakPlayerGun->GetSomething1();
x66c_ = g_tweakPlayerGun->GetSomething2();
x354_ = g_tweakPlayerGun->GetX2c();
x358_ = g_tweakPlayerGun->GetX30();
x668_ = g_tweakPlayerGun->GetX24();
x66c_ = g_tweakPlayerGun->GetX28();
x832_31_ = true;
x833_24_ = true;

View File

@@ -1,12 +1,13 @@
#include "CWeaponMode.hpp"
#include "DataSpec/DNACommon/Tweaks/ITweakPlayerGun.hpp"
namespace urde
{
CWeaponMode::CWeaponMode(EWeaponType type, bool b1, bool b2, bool b3)
CWeaponMode::CWeaponMode(EWeaponType type, bool charged, bool comboed, bool instaKill)
: x0_weaponType(type)
, x4_24_(b1)
, x4_25_(b2)
, x4_26_instantKill(b3)
, x4_24_charged(charged)
, x4_25_comboed(comboed)
, x4_26_instantKill(instaKill)
{
}

View File

@@ -8,25 +8,18 @@ namespace urde
class CWeaponMode
{
EWeaponType x0_weaponType = EWeaponType::None;
union
{
struct
{
bool x4_24_ : 1;
bool x4_25_ : 1;
bool x4_26_instantKill : 1;
};
u8 dummy = 0;
};
bool x4_24_charged : 1;
bool x4_25_comboed : 1;
bool x4_26_instantKill : 1;
public:
CWeaponMode() = default;
CWeaponMode(EWeaponType, bool = false, bool = false, bool instaKill = false);
CWeaponMode(EWeaponType, bool charged = false, bool comboed = false, bool instaKill = false);
EWeaponType GetType() const;
bool IsCharged() const;
bool IsComboed() const;
bool IsInstantKill() const;
bool IsCharged() const { return x4_24_charged; }
bool IsComboed() const { return x4_25_comboed; }
bool IsInstantKill() const { return x4_26_instantKill; }
static CWeaponMode Invalid();
static CWeaponMode Phazon();

View File

@@ -2,10 +2,10 @@
#define __URDE_WEAPONCOMMON_HPP__
#include "RetroTypes.hpp"
#include "DataSpec/DNACommon/Tweaks/ITweakPlayerGun.hpp"
namespace urde
{
enum class EWeaponType
{
None = -1,