Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/branches/chris/src/track.h @ 3021

Last change on this file since 3021 was 2141, checked in by chris, 20 years ago

orxonox/branches/chris: added lots and lots of doxygen tags

File size: 955 bytes
RevLine 
[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]16class 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.