summaryrefslogtreecommitdiff
path: root/src/shared/igame.h
blob: 4b0e933685c90de82bf7b507465feba706047ce5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
// the interface the engine uses to run the gameplay module

namespace entities {
	extern void editent(int i, bool local);
	extern const char *entname(int i);
	extern int extraentinfosize();
	extern void fixentity(extentity &e);
	extern void entradius(extentity &e);
	extern extentity *newentity();
	extern void deleteentity(extentity *e);
	extern void clearents();
	extern vector<extentity *> &getents();
	extern const char *entmodel(const entity &e);
}

namespace game {
	extern void gamedisconnect(bool cleanup);
	extern void parsepacketclient(int chan, packetbuf &p);
	extern void connectattempt(const char *name, const char *password, const ENetAddress &address);
	extern void connectfail();
	extern void gameconnect(bool _remote);
	extern bool allowedittoggle();
	extern void edittoggled(bool on);
	extern void writeclientinfo(stream *f);
	extern void toserver(char *text);
	extern void changemap(const char *name);
	extern void forceedit(const char *name);
	extern bool ispaused();
	extern int scaletime(int t);
	extern bool allowmouselook();
	extern const char *savedconfig();
	extern const char *restoreconfig();
	extern const char *defaultconfig();
	extern const char *autoexec();
	extern const char *savedservers();
	extern void loadconfigs();
	extern void updateworld();
	extern void initclient();
	extern void physicstrigger(physent *d, int floorlevel);
	extern void bounced(physent *d, const vec &surface);
	extern void edittrigger(const selinfo &sel, int op, int arg1 = 0, int arg2 = 0, int arg3 = 0, const VSlot *vs = NULL);
	extern void vartrigger(ident *id);
	extern const char *getclientmap();
	extern const char *getmapinfo();
	extern const char *getscreenshotinfo();
	extern void resetgamestate();
	extern void suicide(physent *d);
	extern float ratespawn(dynent *d, const extentity &e);
	extern void newmap(int size);
	extern void startmap(const char *name);
	extern void preload();
	extern float abovegameplayhud(int w, int h);
	extern void gameplayhud(int w, int h);
	extern bool canjump();
	extern bool allowmove(physent *d);
	extern void doattack(bool on);
	extern dynent *iterdynents(int i);
	extern int numdynents();
	extern void rendergame(bool mainpass);
	extern void renderavatar();
	extern void renderplayerpreview(int model, int team, int weap);
	extern void g3d_gamemenus();
	extern const char *defaultcrosshair(int index);
	extern int selectcrosshair(vec &color);
	extern void setupcamera();
	extern bool allowthirdperson(bool msg = false);
	extern bool detachcamera();
	extern bool collidecamera();
	extern void adddynlights();
	extern void particletrack(physent *owner, vec &o, vec &d);
	extern void dynlighttrack(physent *owner, vec &o, vec &hud);
	extern int maxsoundradius(int n);
	extern bool serverinfostartcolumn(g3d_gui *g, int i);
	extern void serverinfoendcolumn(g3d_gui *g, int i);
	extern bool serverinfoentry(g3d_gui *g, int i, const char *name, int port, const char *desc, const char *map, int ping, const vector<int> &attr, int np);
}

namespace server {
	extern void *newclientinfo();
	extern void deleteclientinfo(void *ci);
	extern void serverinit();
	extern int reserveclients();
	extern int numchannels();
	extern void clientdisconnect(int n);
	extern int clientconnect(int n);
	extern void localdisconnect(int n);
	extern void localconnect(int n);
	extern bool allowbroadcast(int n);
	extern void recordpacket(int chan, void *data, int len);
	extern void parsepacket(int sender, int chan, packetbuf &p);
	extern void sendservmsg(const char *s);
	extern bool sendpackets(bool force = false);
	extern void serverinforeply(ucharbuf &req, ucharbuf &p);
	extern void serverupdate();
	extern int laninfoport();
	extern int serverinfoport(int servport = -1);
	extern int serverport(int infoport = -1);
	extern const char *defaultmaster();
	extern int masterport();
	extern void processmasterinput(const char *cmd, int cmdlen);
	extern void masterconnected();
	extern void masterdisconnected();
	extern bool ispaused();
	extern int scaletime(int t);
}