Rev | Line | |
---|
[5433] | 1 | /*! |
---|
[5039] | 2 | * @file power_up.h |
---|
[5433] | 3 | * @brief A class representing a PowerUp in the world. |
---|
| 4 | */ |
---|
[2077] | 5 | |
---|
[3224] | 6 | #ifndef _POWER_UP_H |
---|
| 7 | #define _POWER_UP_H |
---|
[2077] | 8 | |
---|
| 9 | #include "world_entity.h" |
---|
| 10 | |
---|
[6113] | 11 | class Material; |
---|
| 12 | |
---|
| 13 | typedef enum PowerUpRespawn { |
---|
| 14 | RESPAWN_NONE, |
---|
| 15 | RESPAWN_TIME, |
---|
| 16 | RESPAWN_size |
---|
| 17 | } PowerUpRespawn; |
---|
| 18 | |
---|
[5434] | 19 | class PowerUp : public WorldEntity { |
---|
[2077] | 20 | |
---|
[6113] | 21 | public: |
---|
| 22 | void loadParams(const TiXmlElement* root); |
---|
| 23 | void collidesWith (WorldEntity* entity, const Vector& location); |
---|
| 24 | |
---|
| 25 | virtual void draw () const; |
---|
| 26 | void setRespawnType(const char* type); |
---|
| 27 | |
---|
[6424] | 28 | int writeState(const byte* data, int length, int sender); |
---|
| 29 | int readState(byte* data, int maxLength ); |
---|
| 30 | |
---|
[6113] | 31 | protected: |
---|
| 32 | PowerUp(float r, float g, float b); |
---|
[3544] | 33 | virtual ~PowerUp (); |
---|
[6113] | 34 | virtual void respawn() {}; |
---|
| 35 | |
---|
| 36 | private: |
---|
| 37 | Material* sphereMaterial; |
---|
| 38 | PowerUpRespawn respawnType; |
---|
| 39 | static const char* respawnTypes[]; |
---|
[2077] | 40 | }; |
---|
| 41 | |
---|
[3224] | 42 | #endif /* _POWER_UP_H */ |
---|
Note: See
TracBrowser
for help on using the repository browser.