Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/track.h @ 3021

Last change on this file since 3021 was 2636, checked in by patrick, 20 years ago
  • Added a GameLoader to the game. This enables orxonox to load a campaign consisting of multimple worlds and cinematics etc. However, cinematics are not yet implemented.

In the game you can jump from one level to the other by pressing x. Currently there are only two very simple levels defined. (DEBUG_LEVEL_0, DEBUG_LEVEL_1).

  • Added Error Handling structs to signal the error source and code
File size: 1.2 KB
Line 
1/*!
2    \file track.h
3    \brief Basic level architecture
4*/ 
5
6#ifndef TRACK_H
7#define TRACK_H
8
9#include "stdincl.h"
10
11//!     The Red Line through a level
12/**
13   Handles level boundaries, bound movement mapping, camera placement and scripting.
14   To create special levels with special camera movement, rules or whatever, derive from this base class.
15*/
16class Track
17{
18 private:
19  Uint32 ID;
20  Vector* offset;
21  Vector* end;
22  // Vector* direction; // unity direction vector: it is costy to always recalculate it
23  //Vector* up; // direction where up is ment to be - diffuse in space, eh?
24  //Vector* traverse; // right-left
25  Uint32 nextID;
26 
27       
28 public:
29  Track ();
30  Track (Uint32 number, Uint32 next, Vector* start, Vector* finish);
31  ~Track ();
32  virtual void init();
33 
34  virtual void post_enter (WorldEntity* entity);        // handle coordinate transition in here !!! (when dist < 0 or dist > lasttracklenght)
35  virtual void post_leave (WorldEntity* entity);
36  virtual void tick (float deltaT);
37  virtual void map_camera (Location* lookat, Placement* camplc);
38  virtual bool map_coords (Location* loc, Placement* plc);      // this should return true if the entity left track boundaries
39};
40
41#endif
Note: See TracBrowser for help on using the repository browser.