altEngine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
basegame.h
Go to the documentation of this file.
1 #include "include.h"
2 
3 #ifndef BASEGAME_H
4 #define BASEGAME_H
5 
6 /*
7  Virtual class to keep game specific items out of Engine
8 */
9 
10 class BaseGame
11 {
12 public:
13  BaseGame();
14  virtual void init(Engine *altEngine) = 0;
15  virtual void step(int frame_step) = 0;
16  virtual void load(gametype_t gametype) = 0;
17  virtual void map_model(Entity &ent) = 0;
18  virtual void unload() = 0;
19  virtual void destroy() = 0;
20  virtual void add_player(vector<Entity *> &entity_list, playertype_t type, int &ent_id, char *player_name) = 0;
21  virtual void console(int self, char *cmd, Menu &menu, vector<Entity *> &entity_list) = 0;
22  virtual void setup_func(vector<Entity *> &entity_list, Bsp &q3map) = 0;
23  virtual void render_hud(double last_frametime) = 0;
24  virtual void draw_flash(Player &player) = 0;
25  virtual void draw_icon(float scale, int index, float x, float y, float z) = 0;
26  virtual void make_dynamic_ent(net_ent_t item, int ent_id) = 0;
27  virtual void endgame(char *winner) = 0;
28  virtual void get_state(serverdata_t *data) = 0;
29  virtual void set_state(serverdata_t *data) = 0;
30  virtual ~BaseGame()
31  {
32  };
33 
34 public:
35 
36  // Need to move these references out of Engine
38  int fraglimit;
39  int timelimit;
45  bool spectator;
49 };
50 
51 #endif
52