Last change
on this file since 2165 was
2141,
checked in by chris, 20 years ago
|
orxonox/branches/chris: added lots and lots of doxygen tags
|
File size:
955 bytes
|
Rev | Line | |
---|
[2141] | 1 | /*! |
---|
| 2 | \file track.h |
---|
| 3 | \brief Basic level architecture |
---|
| 4 | */ |
---|
[2068] | 5 | |
---|
| 6 | #ifndef TRACK_H |
---|
| 7 | #define TRACK_H |
---|
| 8 | |
---|
[2101] | 9 | #include "stdincl.h" |
---|
| 10 | |
---|
[2141] | 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 | */ |
---|
[2068] | 16 | class Track |
---|
| 17 | { |
---|
| 18 | private: |
---|
| 19 | Uint32 ID; |
---|
| 20 | Vector* offset; |
---|
| 21 | Vector* end; |
---|
[2080] | 22 | Uint32 nextID; |
---|
[2068] | 23 | |
---|
| 24 | public: |
---|
[2101] | 25 | Track (); |
---|
[2080] | 26 | Track (Uint32 number, Uint32 next, Vector* start, Vector* finish); |
---|
[2068] | 27 | ~Track (); |
---|
| 28 | |
---|
[2080] | 29 | virtual void post_enter (WorldEntity* entity); // handle coordinate transition in here !!! (when dist < 0 or dist > lasttracklenght) |
---|
| 30 | virtual void post_leave (WorldEntity* entity); |
---|
| 31 | virtual void tick (float deltaT); |
---|
[2068] | 32 | virtual void map_camera (Location* lookat, Placement* camplc); |
---|
[2080] | 33 | virtual bool map_coords (Location* loc, Placement* plc); // this should return true if the entity left track boundaries |
---|
[2068] | 34 | }; |
---|
| 35 | |
---|
| 36 | #endif |
---|
Note: See
TracBrowser
for help on using the repository browser.