Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/preferences.old/src/world_entities/weapons/laser.h @ 7232

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

orxonox/trunk: more small optimisations, and a convenience inline-tick-life-cycle functions for projectiles

File size: 798 bytes
Line 
1/*!
2 * @file laser.h
3 * @brief a projectile, that is been shooted by a weapon
4*/
5
6#ifndef _LASER_H
7#define _LASER_H
8
9#include "projectile.h"
10
11class Vector;
12class Weapon;
13class ParticleSystem;
14class ParticleEmitter;
15class FastFactory;
16
17class Laser : public Projectile
18{
19  public:
20    Laser ();
21    virtual ~Laser ();
22
23
24    virtual void activate();
25    virtual void deactivate();
26
27    virtual void collidesWith(WorldEntity* entity, const Vector& location);
28
29    virtual void destroy ();
30
31    virtual void tick (float dt);
32    virtual void draw () const;
33
34
35  private:
36    static FastFactory*               fastFactory;
37
38    static ParticleSystem*            explosionParticles;
39
40    ParticleEmitter*                  emitter;
41
42
43    WorldEntity* hitEntity; // FIXME TEMPORARY
44};
45
46#endif /* _LASER_H */
Note: See TracBrowser for help on using the repository browser.