prime/include/MetroidPrime/Player/CGrappleArm.hpp
Luke Street 7ca3a1c0bb Replace int types in Retro code
Retro seemingly avoided using the Dolphin
typedefs in most places, opting to use int/uint
instead. This likely means they didn't use
u8/s8/u16/s16/etc either.


Former-commit-id: 133326ae406a0ebc76f56f8bcb489fda280be2be
2022-10-09 01:37:23 -04:00

36 lines
983 B
C++

#ifndef _CGRAPPLEARM
#define _CGRAPPLEARM
#include "types.h"
class CVector3f;
class CGrappleArm {
public:
CGrappleArm(const CVector3f& scale);
~CGrappleArm();
void PreRender(CStateManager& mgr, const CFrustumPlanes& frustum, const CVector3f& camPos);
void ReturnToDefault(CStateManager& mgr, float dt, bool setState);
// EArmState GetAnimState() const { return x334_animState; }
bool GetActive() const { return x3b2_24_active; }
bool BeamActive() const { return x3b2_25_beamActive; }
bool IsArmMoving() const { return x3b2_27_armMoving; }
bool IsGrappling() const { return x3b2_28_isGrappling; }
bool IsSuitLoading() const { return x3b2_29_suitLoading; }
private:
uchar x0_pad[0x3b0];
short x3b0_rumbleHandle;
bool x3b2_24_active : 1;
bool x3b2_25_beamActive : 1;
bool x3b2_26_grappleHit : 1;
bool x3b2_27_armMoving : 1;
bool x3b2_28_isGrappling : 1;
bool x3b2_29_suitLoading : 1;
};
CHECK_SIZEOF(CGrappleArm, 0x3b4)
#endif // _CGRAPPLEARM