| 
                Last change
                  on this file since 3381 was
                  3238,
                  checked in by bensch, 21 years ago
           | 
        
        
          | 
               
orxonox/branches: updated branches: buerli, nico, sound. And moved bezierTrack to old.bezierTrack. Conflicts resolved in a usefull order. 
Conflics mostly resolved in favor of trunk 
merge. 
 
           | 
        
        | 
            File size:
            1.2 KB
           | 
      
      
        
  | Rev | Line |   | 
|---|
| [2141] | 1 | /*!  | 
|---|
 | 2 |     \file track.h | 
|---|
 | 3 |     \brief Basic level architecture | 
|---|
 | 4 | */  | 
|---|
| [2068] | 5 |  | 
|---|
| [3238] | 6 | #ifndef _TRACK_H | 
|---|
 | 7 | #define _TRACK_H | 
|---|
| [2068] | 8 |  | 
|---|
| [2101] | 9 | #include "stdincl.h" | 
|---|
 | 10 |  | 
|---|
| [2141] | 11 | //!     The Red Line through a level | 
|---|
 | 12 | /** | 
|---|
| [2551] | 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. | 
|---|
| [2141] | 15 | */ | 
|---|
| [2068] | 16 | class Track  | 
|---|
 | 17 | { | 
|---|
 | 18 |  private: | 
|---|
| [2551] | 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 |    | 
|---|
| [3238] | 27 |    | 
|---|
| [2068] | 28 |  public: | 
|---|
| [2636] | 29 |   Track (); | 
|---|
| [2080] | 30 |   Track (Uint32 number, Uint32 next, Vector* start, Vector* finish); | 
|---|
| [2068] | 31 |   ~Track (); | 
|---|
| [2636] | 32 |   virtual void init(); | 
|---|
 | 33 |    | 
|---|
| [3238] | 34 |   virtual void postEnter (WorldEntity* entity); // handle coordinate transition in here !!! (when dist < 0 or dist > lasttracklenght) | 
|---|
 | 35 |   virtual void postLeave (WorldEntity* entity); | 
|---|
| [2636] | 36 |   virtual void tick (float deltaT); | 
|---|
| [3238] | 37 |   virtual void mapCamera (Location* lookat, Placement* camplc); | 
|---|
 | 38 |   virtual bool mapCoords (Location* loc, Placement* plc);       // this should return true if the entity left track boundaries | 
|---|
| [2068] | 39 | }; | 
|---|
 | 40 |  | 
|---|
| [3238] | 41 | #endif /* _TRACK_H */ | 
|---|
       
      
      Note: See 
TracBrowser
        for help on using the repository browser.