Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/world_entities/player.h @ 3655

Last change on this file since 3655 was 3655, checked in by bensch, 19 years ago

orxonox/trunk: moved protoclass to folder proto
added protosingleton
added resourceManager
modiefied some stuff to work better

File size: 1.6 KB
Line 
1/*!
2    \file player.h
3    \brief Implements a basic controllable WorldEntity
4*/
5
6#ifndef _PLAYER_H
7#define _PLAYER_H
8
9#include "world_entity.h"
10
11template<class T> class tList;
12class Weapon;
13class Vector;
14class World;
15
16//! Basic controllable WorldEntity
17class Player : public WorldEntity
18{
19  friend class World;
20 
21 public:
22  Player();
23  virtual ~Player();
24
25  void addWeapon(Weapon* weapon);
26  void removeWeapon(Weapon* weapon);
27 
28  virtual void postSpawn();
29  virtual void leftWorld();
30  virtual void hit(WorldEntity* weapon, Vector* loc);
31  virtual void collide(WorldEntity* other, Uint32 ownhitflags, Uint32 otherhitflags);
32
33  virtual void tick(float time); 
34  virtual void draw();
35
36  virtual void command(Command* cmd);
37 
38 private:
39  bool bUp;              //!< up button pressed.
40  bool bDown;            //!< down button pressed.
41  bool bLeft;            //!< left button pressed.
42  bool bRight;           //!< right button pressed.
43  bool bAscend;          //!< ascend button pressed.
44  bool bDescend;         //!< descend button presses.
45  bool bFire;            //!< fire button pressed.
46  bool bWeaponChange;    //!< weapon change button pressed
47
48  tList<Weapon>* weapons;//!< a list of weapon
49  Weapon* activeWeapon;  //!< the weapon that is currenty activated
50  World* myWorld;        //!< reference to the world object
51
52  Vector* velocity;       //!< the velocity of the player.
53  float travelSpeed;     //!< the current speed of the player (to make soft movement)
54  float acceleration;    //!< the acceleration of the player.
55 
56  void move(float time);
57  void weapon(void);
58 
59};
60
61#endif /* _PLAYER_H */
Note: See TracBrowser for help on using the repository browser.