mirror of https://github.com/PrimeDecomp/prime.git
32 lines
926 B
C++
32 lines
926 B
C++
#ifndef _CBSATTACK
|
|
#define _CBSATTACK
|
|
|
|
#include "MetroidPrime/BodyState/CBodyState.hpp"
|
|
|
|
#include "MetroidPrime/BodyState/CBodyStateCmdMgr.hpp"
|
|
|
|
#include "Kyoto/Math/CVector3f.hpp"
|
|
|
|
class CBSAttack : public CBodyState {
|
|
public:
|
|
CBSAttack();
|
|
|
|
bool CanShoot() const override { return false; }
|
|
void Start(CBodyController& bc, CStateManager& mgr) override;
|
|
pas::EAnimationState UpdateBody(float dt, CBodyController& bc, CStateManager& mgr) override;
|
|
void Shutdown(CBodyController&) override;
|
|
|
|
private:
|
|
pas::EAnimationState x4_nextState; // = pas::kAS_Invalid;
|
|
CBCSlideCmd x8_slide;
|
|
CVector3f x20_targetPos;
|
|
float x2c_alignTargetPosStartTime; // = -1.f;
|
|
float x30_alignTargetPosTime; // = -1.f;
|
|
float x34_curTime; // = 0.f;
|
|
|
|
pas::EAnimationState GetBodyStateTransition(float dt, CBodyController& bc);
|
|
void UpdatePhysicsActor(CBodyController& bc, float dt);
|
|
};
|
|
|
|
#endif // _CBSATTACK
|