Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/ai/src/world_entities/npcs/npc.h @ 10275

Last change on this file since 10275 was 10275, checked in by tfahrni, 18 years ago

npc can shoot

File size: 1.2 KB
RevLine 
[1853]1
[3224]2#ifndef _NPC_H
3#define _NPC_H
[1853]4
[2036]5#include "world_entity.h"
[10263]6#include "ai_module.h"
7#include "world_entities/weapons/weapon_manager.h"
[1853]8
[2036]9class AI;
[1904]10
[10263]11class NPC : public WorldEntity
12{
[9869]13  ObjectListDeclaration(NPC);
[10263]14
15public:
16  NPC(const TiXmlElement* root = NULL);
[6981]17  virtual ~NPC ();
[1853]18
[10275]19  virtual void loadParams(const TiXmlElement* root);
[1899]20
[10268]21
22  bool addWeapon(Weapon* weapon, int configID = -1, int slotID = -1);
23  void removeWeapon(Weapon* weapon);
24  void nextWeaponConfig();
25  void previousWeaponConfig();
26  inline WeaponManager& getWeaponManager() { return this->weaponMan; };
27
28
[10263]29  virtual void tick(float dt);
30  inline int getTeam()  { return teamNumber; }
[10275]31  inline void fire(){ this->bFire=true;}
[1899]32
[5029]33
[10268]34
[10263]35private:
36  inline void setTeamNumber(int number) { teamNumber=number; }
37  inline void setSwarmNumber(int number) { swarmNumber=number; }
38
39
[1858]40 private:
[5029]41
[10263]42  int                   teamNumber;   //!< number of the team
43  int                   swarmNumber;  //!< number of the swarm
44  int                   difficulty;   //!< difficulty
45
46  WeaponManager         weaponMan;    //!< weapon manager
47  bool                  bFire;        //!< fire
48
49  AIModule*             aiModule;
[1853]50};
51
[3224]52#endif /* _NPC_H */
Note: See TracBrowser for help on using the repository browser.