2012-11-04 20:56:02 +00:00
|
|
|
|
|
|
|
/** \file PHY_ICharacter.h
|
|
|
|
* \ingroup phys
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __PHY_ICHARACTER_H__
|
|
|
|
#define __PHY_ICHARACTER_H__
|
|
|
|
|
|
|
|
//PHY_ICharacter provides a generic interface for "character" controllers
|
|
|
|
|
|
|
|
#ifdef WITH_CXX_GUARDEDALLOC
|
|
|
|
#include "MEM_guardedalloc.h"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
class PHY_ICharacter
|
|
|
|
{
|
|
|
|
public:
|
2013-01-30 05:55:17 +00:00
|
|
|
virtual ~PHY_ICharacter(){};
|
2012-11-04 20:56:02 +00:00
|
|
|
|
|
|
|
virtual void Jump()= 0;
|
|
|
|
virtual bool OnGround()= 0;
|
|
|
|
|
|
|
|
virtual float GetGravity()= 0;
|
|
|
|
virtual void SetGravity(float gravity)= 0;
|
2012-12-26 01:25:53 +00:00
|
|
|
|
|
|
|
virtual int GetMaxJumps()= 0;
|
|
|
|
virtual void SetMaxJumps(int maxJumps)= 0;
|
2012-11-04 20:56:02 +00:00
|
|
|
|
2012-12-29 10:22:19 +00:00
|
|
|
virtual int GetJumpCount()= 0;
|
|
|
|
|
2013-02-21 18:30:11 +00:00
|
|
|
virtual void SetWalkDirection(const class MT_Vector3& dir)=0;
|
|
|
|
virtual MT_Vector3 GetWalkDirection()=0;
|
2013-01-30 05:55:17 +00:00
|
|
|
|
2012-11-04 20:56:02 +00:00
|
|
|
#ifdef WITH_CXX_GUARDEDALLOC
|
|
|
|
MEM_CXX_CLASS_ALLOC_FUNCS("GE:PHY_ICharacter")
|
|
|
|
#endif
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif //__PHY_ICHARACTER_H__
|