Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

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

orxonox/trunk: some little errors corrected via Valgrind

File size: 2.1 KB
RevLine 
[4780]1/*!
[4885]2 * @file player.h
3 * Implements a basic controllable WorldEntity
[4818]4 */
[3471]5
6#ifndef _PLAYER_H
7#define _PLAYER_H
8
9#include "world_entity.h"
[4382]10#include "physics_interface.h"
[4404]11#include "event_listener.h"
[3471]12
[3583]13template<class T> class tList;
14class Weapon;
[3873]15class WeaponManager;
[3608]16class Vector;
[4404]17class Event;
[3471]18
19//! Basic controllable WorldEntity
[4885]20/**
21  *  this is the debug player - actualy we would have to make a new
22     class derivated from Player for each player. for now, we just use
23     the player.cc for debug also
24*/
[4404]25class Player : public WorldEntity, public PhysicsInterface, public EventListener
[3471]26{
27  friend class World;
[4780]28
[4818]29  public:
30    Player();
[4975]31    Player(const char* fileName);
[4818]32    Player(const TiXmlElement* root);
33    virtual ~Player();
[3583]34
[4818]35    void init();
36    void loadParams(const TiXmlElement* root);
[4780]37
[4818]38    void addWeapon(Weapon* weapon);
39    void removeWeapon(Weapon* weapon);
[4780]40
[4818]41    virtual void postSpawn();
42    virtual void leftWorld();
43    virtual void hit(WorldEntity* weapon, Vector* loc);
44    virtual void collide(WorldEntity* other, Uint32 ownhitflags, Uint32 otherhitflags);
[3583]45
[4818]46    virtual void tick(float time);
47    virtual void draw();
[3583]48
[4818]49    virtual void process(const Event &event);
[4780]50
[3471]51
[4818]52  private:
53    void move(float time);
[4885]54    void weaponAction();
[3755]55
[3583]56
[4818]57  private:
[4885]58    bool                  bUp;                //!< up button pressed.
59    bool                  bDown;              //!< down button pressed.
60    bool                  bLeft;              //!< left button pressed.
61    bool                  bRight;             //!< right button pressed.
62    bool                  bAscend;            //!< ascend button pressed.
63    bool                  bDescend;           //!< descend button presses.
64    bool                  bFire;              //!< fire button pressed.
[4780]65
[4885]66    WeaponManager*        weaponMan;          //!< the weapon manager: managing a list of weapon to wepaon-slot mapping
[4780]67
[5212]68    Vector                velocity;           //!< the velocity of the player.
[4885]69    float                 travelSpeed;        //!< the current speed of the player (to make soft movement)
70    float                 acceleration;       //!< the acceleration of the player.
[3471]71};
72
73#endif /* _PLAYER_H */
Note: See TracBrowser for help on using the repository browser.