22 #ifndef CAFU_HUMAN_PLAYER_HPP_INCLUDED
23 #define CAFU_HUMAN_PLAYER_HPP_INCLUDED
25 #include "BaseEntity.hpp"
26 #include "Libs/Physics.hpp"
27 #include "btBulletDynamicsCommon.h"
30 namespace cf {
namespace GameSys {
class ComponentModelT; } }
31 namespace cf {
namespace GuiSys {
class GuiImplT; } }
42 enum EventTypesT { EVENT_TYPE_PRIMARY_FIRE, EVENT_TYPE_SECONDARY_FIRE, NUM_EVENT_TYPES };
49 unsigned short GetPitch()
const {
return m_Pitch; }
50 unsigned short GetBank()
const {
return m_Bank; }
51 const btRigidBody* GetRigidBody()
const {
return m_RigidBody; }
54 void AddFrag(
int NumFrags=1);
58 void ProcessConfigString(
const void* ConfigData,
const char* ConfigString);
59 void Think(
float FrameTime,
unsigned long ServerFrameNr);
61 void ProcessEvent(
unsigned int EventType,
unsigned int NumEvents);
62 bool GetLightSourceInfo(
unsigned long& DiffuseColor,
unsigned long& SpecularColor,
VectorT& Position,
float& Radius,
bool& CastsShadows)
const;
63 void Draw(
bool FirstPersonView,
float LodDist)
const;
64 void PostDraw(
float FrameTime,
bool FirstPersonView);
67 void getWorldTransform(btTransform& worldTrans)
const;
68 void setWorldTransform(
const btTransform& worldTrans);
79 void NotifyLeaveMap();
87 static int GetHealth(lua_State* LuaState);
88 static int GetArmor(lua_State* LuaState);
89 static int GetFrags(lua_State* LuaState);
90 static int GetCrosshair(lua_State* LuaState);
91 static int GetAmmoString(lua_State* LuaState);
93 static const luaL_Reg MethodsList[];
98 btCollisionShape* m_CollisionShape;
99 btRigidBody* m_RigidBody;
102 mutable VectorT LastSeenAmbientColor;
103 float TimeForLightSource;
This class implements the physics for moving entities through the world.
Definition: Physics.hpp:35
This class implements smart (reference-counted) pointers.
Definition: Pointer.hpp:58
Definition: BaseEntity.hpp:56
Definition: HumanPlayer.hpp:37
This class is used for reading data from a StateT instance (deserialization).
Definition: State.hpp:222
Definition: EntityCreateParams.hpp:37
Definition: BaseEntity.hpp:85
This class is used for writing data into a StateT instance (serialization).
Definition: State.hpp:96
Definition: TypeSys.hpp:67
This class keeps type information (about an entity class that occurs in the game).
Definition: TypeSys.hpp:94