| 
    mElite
    1.0
    
   An Elite clone based on TextElite by Jan-Philipp Kappmeier and Melanie Schmidt. 
   | 
 
Represents a space ship. More...
#include <SpaceShip.h>
  
 Public Member Functions | |
| SpaceShip (float r, GLuint displayList) | |
| Initializes the space ship.   | |
| SpaceShip (Vector3 position, float r, GLuint displayList) | |
| Initializes the space ship.   | |
| SpaceShip (float x, float y, float z, float r, GLuint displayList) | |
| Initializes the space ship.   | |
| ~SpaceShip (void) | |
| Destructor.   | |
| void | draw () | 
| Draws the object using the base class drawing method.   | |
| Vector3 | getOriginalView (void) | 
| Returns the original view vector.   | |
| Vector3 | getOriginalUp (void) | 
| Returns the original up vector.   | |
| bool | isDestroyed () | 
| Determines wheather a ship is destroyed or not.   | |
| virtual void | update (float t) | 
| float | getLaserHeat (void) | 
| Returns the current heat of the laser.   | |
| float | getMaxLaserHeat (void) | 
| float | getLaserPercentage (void) | 
| Returns the percentage of the heat of the maximal heat.   | |
| unsigned int | getMissileCount (void) | 
| Returns the current amount of missiles.   | |
| bool | isOverHeated (void) | 
| Returns true if the laser is overheated, otherwise false.   | |
| void | useMissile (void) | 
| Shoots a missile, if possible.   | |
| bool | isShooting () | 
| void | setShoot (bool status) | 
| float | getBackShieldPower (void) | 
| Returns the current back shield power.   | |
| float | getBackShieldPowerPercentage (void) | 
| Returns the current percentage of back shield power.   | |
| float | getFrontShieldPower (void) | 
| Returns the current front shield power.   | |
| float | getFrontShieldPowerPercentage (void) | 
| Returns the current percentage of front shield power.   | |
| void | setShieldRecovering (bool recovers) | 
| void | receiveHitBack (DWORD time) | 
| void | receiveHitFront (DWORD time) | 
| void | setShieldCapacity (float capacity) | 
| bool | shipWasHitOnce () | 
  Public Member Functions inherited from MovingObject | |
| MovingObject () | |
| Constructor, initializes to the origin. The line of vision is aligned to the z axis, the up vector is aligned to the y-axis.   | |
| MovingObject (Vector3 position) | |
| Constructor initializing to a given position as Vector3.   | |
| MovingObject (float x, float y, float z) | |
| Constructor, the startposition is (x,y,z).   | |
| ~MovingObject (void) | |
| Destructor.   | |
| void | pitch (float angle) | 
| Pitches the line of vision.   | |
| void | roll (float angle) | 
| Rolls the eye.   | |
| Vector3 | getRight (void) | 
| Returns the vector indiciating what is 'right' of the eye.   | |
| Vector3 | getUp (void) | 
| Returns the vector indication what is 'up'.   | |
| Vector3 | getView (void) | 
| Returns the current viewing vector.   | |
| void | setView (Vector3 v) | 
| Sets the current viewing vector.   | |
| void | accelerate (float step) | 
| Sets the speed.   | |
| void | advance (float t) | 
| Move the camera depending on the current speed and line of vision.   | |
| float | getMaxSpeed (void) | 
| Returns the maximal speed.   | |
| float | getMinSpeed (void) | 
| Returns the minimal speed.   | |
| float | getSpeed (void) | 
| Returns the vector indicating the direction 'right'.   | |
| void | setMaxSpeed (float speed) | 
| Sets the maximal speed.   | |
| void | setMinSpeed (float speed) | 
| Sets the minimal speed.   | |
| void | setSpeed (float speed) | 
| Sets the current speed.   | |
| void | setStep (float step) | 
| Sets the value that is advanced in one step.   | |
  Public Member Functions inherited from GameObject | |
| GameObject (void) | |
| The constructor creates the object. The position is set to zero by default.   | |
| GameObject (Vector3 position) | |
| The constructor creates the object and gives it a position in the scene.   | |
| GameObject (float x, float y, float z) | |
| The constructor creates the object and gives it a position in the scene.   | |
| ~GameObject (void) | |
| Destructor. Does nothing.   | |
| virtual Vector3 | getPos (void) | 
| Returns the current position as Vector3 triple.   | |
| void | setPos (float x, float y, float z) | 
| Sets the current position.   | |
| void | setPos (Vector3 position) | 
| Sets the current position.   | |
  Public Member Functions inherited from ModelObject | |
| ModelObject (GLuint displayList) | |
| Creates a model object and sets up the display List.   | |
| ModelObject (float r, GLuint displayList) | |
| Creates a model object and sets up the display List.   | |
| ModelObject (Vector3 position, float r, GLuint displayList) | |
| Creates a model object and sets up the display List.   | |
| ModelObject (float x, float y, float z, float r, GLuint displayList) | |
| Creates a model object and sets up the display List.   | |
| ~ModelObject (void) | |
| The destructor has nothing to clean up.   | |
  Public Member Functions inherited from GraphicsObject | |
| GraphicsObject (void) | |
| The constructor creates the object.   | |
| GraphicsObject (GLfloat r) | |
| The constructor creates the object.   | |
| GraphicsObject (Vector3 position, float r) | |
| Creates an graphical object.   | |
| GraphicsObject (float x, float y, float z, float r) | |
| Creates a graphical object.   | |
| ~GraphicsObject (void) | |
| Destructor.   | |
| float | getRadius (void) | 
| Returns the radius of the object, usable for view frustum culling.   | |
| float | getCollisionRadius (void) | 
| Returns the radius of the object, usable for collision detection.   | |
Protected Member Functions | |
| void | advance (float t) | 
| void | updateLaser (float t) | 
| void | setLaserHeat (float heat) | 
| virtual void | coolLaser (DWORD time) | 
| Cools the laser.   | |
Represents a space ship.
Derived from the ModelObject class which means, the ship is drawable using the base draw() method. As a ship is movable, it inherits also from the MovingObject class. Besides that the class provides the propertys and the behavior of a space ship. It contains shooting, the shield.
Definition at line 20 of file SpaceShip.h.
| SpaceShip::SpaceShip | ( | float | r, | 
| GLuint | displayList | ||
| ) | 
Initializes the space ship.
The radius and the display list have to be submitted if an object is initialized. The starting position is set to the origin.
| r | the radius | 
| displayList | the display list | 
Definition at line 17 of file SpaceShip.cpp.
| SpaceShip::SpaceShip | ( | Vector3 | position, | 
| float | r, | ||
| GLuint | displayList | ||
| ) | 
Initializes the space ship.
The radius and the display list have to be submitted if an object is initialized.
| position | the position as Vector3 | 
| r | the radius | 
| displayList | the display list | 
Definition at line 29 of file SpaceShip.cpp.
| SpaceShip::SpaceShip | ( | float | x, | 
| float | y, | ||
| float | z, | ||
| float | r, | ||
| GLuint | displayList | ||
| ) | 
Initializes the space ship.
The radius and the display list have to be submitted if an object is initialized.
| x | the x-position | 
| y | the y-position | 
| z | the z-position | 
| r | the radius | 
| displayList | the display list | 
Definition at line 43 of file SpaceShip.cpp.
| SpaceShip::~SpaceShip | ( | void | ) | 
Destructor.
Definition at line 50 of file SpaceShip.cpp.
      
  | 
  protected | 
Definition at line 137 of file SpaceShip.cpp.
      
  | 
  protectedvirtual | 
Cools the laser.
If the laser is not used, this function is called. It cools the laser until its heat is zero. This is called in the SpaceShip::advance() method.
| time | the time that has passed | 
Reimplemented in PlayerObject.
Definition at line 127 of file SpaceShip.cpp.
      
  | 
  virtual | 
Draws the object using the base class drawing method.
Previously it is translated to the current position.
Reimplemented from ModelObject.
Definition at line 78 of file SpaceShip.cpp.
| float SpaceShip::getBackShieldPower | ( | void | ) | 
Returns the current back shield power.
Definition at line 230 of file SpaceShip.cpp.
| float SpaceShip::getBackShieldPowerPercentage | ( | void | ) | 
Returns the current percentage of back shield power.
Definition at line 237 of file SpaceShip.cpp.
| float SpaceShip::getFrontShieldPower | ( | void | ) | 
Returns the current front shield power.
Definition at line 244 of file SpaceShip.cpp.
| float SpaceShip::getFrontShieldPowerPercentage | ( | void | ) | 
Returns the current percentage of front shield power.
Definition at line 251 of file SpaceShip.cpp.
| float SpaceShip::getLaserHeat | ( | void | ) | 
Returns the current heat of the laser.
Definition at line 161 of file SpaceShip.cpp.
| float SpaceShip::getLaserPercentage | ( | void | ) | 
Returns the percentage of the heat of the maximal heat.
Definition at line 172 of file SpaceShip.cpp.
| float SpaceShip::getMaxLaserHeat | ( | void | ) | 
Definition at line 165 of file SpaceShip.cpp.
| unsigned int SpaceShip::getMissileCount | ( | void | ) | 
Returns the current amount of missiles.
Definition at line 179 of file SpaceShip.cpp.
| Vector3 SpaceShip::getOriginalUp | ( | void | ) | 
Returns the original up vector.
Definition at line 258 of file SpaceShip.cpp.
| Vector3 SpaceShip::getOriginalView | ( | void | ) | 
Returns the original view vector.
Definition at line 265 of file SpaceShip.cpp.
| bool SpaceShip::isDestroyed | ( | ) | 
Determines wheather a ship is destroyed or not.
If the current front or back shield power is less than zero, the ship is destroyed.
Definition at line 114 of file SpaceShip.cpp.
| bool SpaceShip::isOverHeated | ( | void | ) | 
Returns true if the laser is overheated, otherwise false.
Definition at line 186 of file SpaceShip.cpp.
| bool SpaceShip::isShooting | ( | ) | 
Definition at line 215 of file SpaceShip.cpp.
| void SpaceShip::receiveHitBack | ( | DWORD | time | ) | 
Definition at line 269 of file SpaceShip.cpp.
| void SpaceShip::receiveHitFront | ( | DWORD | time | ) | 
Definition at line 275 of file SpaceShip.cpp.
      
  | 
  protected | 
Definition at line 219 of file SpaceShip.cpp.
| void SpaceShip::setShieldCapacity | ( | float | capacity | ) | 
Definition at line 293 of file SpaceShip.cpp.
| void SpaceShip::setShieldRecovering | ( | bool | recovers | ) | 
Definition at line 303 of file SpaceShip.cpp.
| void SpaceShip::setShoot | ( | bool | status | ) | 
Definition at line 223 of file SpaceShip.cpp.
| bool SpaceShip::shipWasHitOnce | ( | ) | 
Definition at line 307 of file SpaceShip.cpp.
      
  | 
  virtual | 
Reimplemented in abstract.
Definition at line 149 of file SpaceShip.cpp.
      
  | 
  protected | 
Definition at line 142 of file SpaceShip.cpp.
| void SpaceShip::useMissile | ( | void | ) | 
Shoots a missile, if possible.
Reduces the missile count by one.
Definition at line 209 of file SpaceShip.cpp.
 1.8.2