mirror of https://github.com/PrimeDecomp/prime.git
26 lines
847 B
C++
26 lines
847 B
C++
|
#ifndef _CBODYSTATE
|
||
|
#define _CBODYSTATE
|
||
|
|
||
|
#include "Kyoto/Animation/CPASAnimState.hpp"
|
||
|
|
||
|
class CStateManager;
|
||
|
class CBodyController;
|
||
|
|
||
|
class CBodyState {
|
||
|
public:
|
||
|
virtual ~CBodyState() {}
|
||
|
virtual bool IsInAir(const CBodyController&) const { return false; }
|
||
|
virtual bool IsDead() const { return false; }
|
||
|
virtual bool IsDying() const { return false; }
|
||
|
virtual bool IsMoving() const { return false; }
|
||
|
virtual bool ApplyGravity() const { return true; }
|
||
|
virtual bool ApplyHeadTracking() const { return true; }
|
||
|
virtual bool ApplyAnimationDeltas() const { return true; }
|
||
|
virtual bool CanShoot() const { return false; }
|
||
|
virtual void Start(CBodyController&, CStateManager&) = 0;
|
||
|
virtual pas::EAnimationState UpdateBody(float, CBodyController&, CStateManager&) = 0;
|
||
|
virtual void Shutdown(CBodyController&) = 0;
|
||
|
};
|
||
|
|
||
|
#endif // _CBODYSTATE
|