34 lines
965 B
C
34 lines
965 B
C
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "vjolt_object.h"
|
||
|
#include "vjolt_environment.h"
|
||
|
|
||
|
class JoltPhysicsMotionController : public IPhysicsMotionController, public IJoltObjectDestroyedListener, public IJoltPhysicsController
|
||
|
{
|
||
|
public:
|
||
|
JoltPhysicsMotionController( IMotionEvent *pHandler );
|
||
|
~JoltPhysicsMotionController() override;
|
||
|
|
||
|
void SetEventHandler( IMotionEvent *handler ) override;
|
||
|
void AttachObject( IPhysicsObject *pObject, bool checkIfAlreadyAttached ) override;
|
||
|
void DetachObject( IPhysicsObject *pObject ) override;
|
||
|
|
||
|
int CountObjects( void ) override;
|
||
|
void GetObjects( IPhysicsObject **pObjectList ) override;
|
||
|
void ClearObjects( void ) override;
|
||
|
void WakeObjects( void ) override;
|
||
|
|
||
|
void SetPriority( priority_t priority ) override;
|
||
|
|
||
|
public:
|
||
|
|
||
|
void OnJoltPhysicsObjectDestroyed( JoltPhysicsObject *pObject ) override;
|
||
|
void OnPreSimulate( float flDeltaTime ) override;
|
||
|
|
||
|
private:
|
||
|
IMotionEvent *m_pMotionEvent;
|
||
|
|
||
|
CUtlVector< JoltPhysicsObject * > m_pObjects;
|
||
|
};
|