2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-08 19:44:55 +00:00

Initial CPlayerState RE

This commit is contained in:
2016-03-19 12:19:43 -07:00
parent 572b5167fe
commit 62e8066a63
9 changed files with 243 additions and 48 deletions

View File

@@ -5,28 +5,43 @@
#include "CBasics.hpp"
#include "CStaticInterference.hpp"
#include "IOStreams.hpp"
#include "rstl.hpp"
namespace urde
{
class CPlayerState
{
CStaticInterference m_staticIntf;
static const u32 PowerUpMaxes[41];
class CPowerUp
{
int m_a = 0;
int m_b = 0;
int x0_a = 0;
int x4_b = 0;
public:
CPowerUp() {}
CPowerUp(int a, int b) : m_a(a), m_b(b) {}
CPowerUp(int a, int b) : x0_a(a), x4_b(b) {}
};
union
{
struct { bool x0_24_ : 1; bool x0_25_ : 1; bool x0_26_; };
u32 dummy = 0;
};
CPowerUp m_powerups[29];
u32 x4_ = 0;
u32 x8_ = 0;
float xc_baseHealth = 99.f;
float x10_ = 50.f;
u32 x14_ = 0;
u32 x18_ = x14_;
float x1c_ = 0.2f;
u32 x20_ = 0;
rstl::reserved_vector<CPowerUp, 41> x24_powerups;
CStaticInterference x188_staticIntf;
public:
CPlayerState() : m_staticIntf(5) {}
CPlayerState(CInputStream& stream);
CPlayerState() : x188_staticIntf(5) { x0_24_ = true; }
CPlayerState(CBitStreamReader& stream);
};
}
#endif // __PSHAG_CPLAYERSTATE_HPP__