Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/branches/trackManager/src/world.h @ 3414

Last change on this file since 3414 was 3374, checked in by bensch, 20 years ago

orxonox/branches/trackManager: deleted old track-system

File size: 1.9 KB
RevLine 
[2190]1/*!
2    \file world.h
3    \brief Holds and manages all game data
4*/ 
[1853]5
[3224]6#ifndef _WORLD_H
7#define _WORLD_H
[1853]8
[2190]9#include "stdincl.h"
[2636]10#include "story_entity.h"
[2190]11
[2636]12
[3365]13class TrackManager;
[2077]14class WorldEntity;
[2636]15class Camera;
[3365]16class PNode;
17class GLMenuImageScreen;
[1883]18
[2190]19//! The game environment
[2636]20class World : public StoryEntity {
[1853]21
22 public:
[2636]23  World (char* name);
24  World (int worldID);
[3221]25  virtual ~World ();
[2636]26 
[3225]27  virtual ErrorMessage init ();
28  virtual ErrorMessage start ();
29  virtual ErrorMessage stop ();
30  virtual ErrorMessage pause ();
31  virtual ErrorMessage resume ();
[1917]32
[3225]33  virtual void load ();
34  virtual void destroy ();
[2636]35
[3365]36  //static void vertexCallback (GLfloat* vertex);
37
[3225]38  void timeSlice (Uint32 deltaT);
[2636]39  void collide ();
40  void draw ();
41  void update ();       // maps Locations to Placements
[3365]42  //void calcCameraPos (Location* loc, Placement* plc);
[2190]43       
[2636]44  void unload ();
[3225]45  bool command (Command* cmd);
[3365]46  virtual void displayLoadScreen();
47  virtual void releaseLoadScreen();
[2636]48 
[3216]49  //bool system_command (Command* cmd);
[3225]50  Camera* getCamera ();
[2644]51
[3225]52  void spawn (WorldEntity* entity);
[3365]53  void spawn (WorldEntity* entity, Vector* absCoor, Quaternion* absDir);
[2644]54
[2822]55  tList<WorldEntity>* entities;
[2636]56 
57  // base level data
[3365]58  TrackManager* trackManager;
[2636]59  Vector* pathnodes;
60  Camera* localCamera; 
61
[3365]62
63  UPointCurve* testCurve;
[1883]64 private:
[2636]65  Uint32 lastFrame; //!> last time of frame
66  bool bQuitOrxonox; //!> quit this application
67  bool bQuitCurrentGame; //!> quit only the current game and return to menu
68  bool bPause;
[1855]69
[3365]70  GLMenuImageScreen* glmis;
71
[2636]72  char* worldName;
73  int debugWorldNr;
[2731]74  GLuint objectList;
[3365]75  SDL_Surface *loadImage;
[2636]76
[2640]77  WorldEntity* localPlayer;
[3365]78 
79  PNode* nullParent;
80 
[3225]81  void mainLoop ();
82  void synchronize ();
[3226]83  void handleInput ();
[3225]84  void timeSlice ();
85  void collision ();
86  void display ();
87  void debug ();
[3365]88
89  void swap (unsigned char &a, unsigned char &b); /* \todo: this function doesn't belong here, this should be part of a image class*/
[2190]90};
[1883]91
[3224]92#endif /* _WORLD_H */
Note: See TracBrowser for help on using the repository browser.