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 | |
---|---|
File size: 1.2 KB |
Rev | Line | |
---|---|---|
[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] | 9 | class AI; |
[1904] | 10 | |
[10263] | 11 | class NPC : public WorldEntity |
12 | { | |
[9869] | 13 | ObjectListDeclaration(NPC); |
[10263] | 14 | |
15 | public: | |
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] | 35 | private: |
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.