Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/branches/images/src/shoot_rocket.h @ 3127

Last change on this file since 3127 was 2036, checked in by patrick, 20 years ago

orxonxo/trunk/src: extended framework: class inheritance, right including (had som bugs), framework not finished yet

File size: 940 bytes
Line 
1
2#ifndef SHOOT_ROCKET_H
3#define SHOOT_ROCKET_H
4
5
6
7enum RocketType { HOMING, SIDEACC, BACKPARABLE, ROTATER};
8enum RocketDirection {LEFT, RIGHT, UP, DOWN};
9
10
11class ShootRocket {
12
13 public:
14 
15  /* a list of all shoot-amental objects */
16  struct shoot {
17    enum RocketType type;
18    shoot *next;
19    float xCor;
20    float yCor;
21    float zCor;   
22    float xVel;
23    float yVel;
24    float zVel;
25    float xAcc;
26    float yAcc;
27    float zAcc;
28    float age;
29    float lifetime;
30    float collisionRadius;
31  };
32  shoot* lastShoot;
33 
34  ShootRocket ();
35  ~ShootRocket ();
36 
37  int inhibitor;
38  float rotateAngle;
39
40  void drawShoot(void);
41  void addShoot(shoot* sh);
42  void addBackParable(float x, float y, float z);
43  void addSideAcc(float x, float y, float z, enum RocketDirection direction);
44  void addRotater(float x, float y, float z);
45
46  void setShootStep(float step);
47  void removeShoot(shoot* sh);
48
49
50 private:
51
52  float step;
53
54};
55
56#endif
Note: See TracBrowser for help on using the repository browser.