00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _PLAYERCOMPONENT_
00019 #define _PLAYERCOMPONENT_
00020
00021 #include "game/BaseComponent.h"
00022
00023 class PlayerComponent : public BaseComponent
00024 {
00025 private:
00026
00027 std::string m_wheelPart;
00028
00029 float m_fAccellTorque;
00030 float m_fReverseTorque;
00031
00032 bool m_bAccell;
00033 bool m_bReverse;
00034
00035 public:
00036 DEFAULT_COMPONENT_CONSTRUCTOR(BaseComponent, PlayerComponent, INIT4(m_bAccell, false,
00037 m_bReverse, false, m_fAccellTorque, 0.0f, m_fReverseTorque, 0.0f), , );
00038
00039 virtual void Update(const int nDelta);
00040 virtual bool FromAttribute(const Attribute* pRoot);
00041 virtual void ToStream(std::ostream& stream) const;
00042 virtual void FromStream(std::istream& stream);
00043
00044 float GetAccellTorque() const { return m_fAccellTorque; }
00045 void SetAccellTorque(float fAccellTorque) { m_fAccellTorque = fAccellTorque; }
00046
00047 float GetReverseTorque() const { return m_fReverseTorque; }
00048 void SetReverseTorque(float fReverseTorque) { m_fReverseTorque = fReverseTorque; }
00049
00050 void Accellerate() { m_bAccell = true; }
00051 void Reverse() { m_bReverse = true; }
00052 };
00053
00054 REGISTER_COMPONENT(PlayerComponent, "component_player", "player")
00055
00056 #endif