2 // Basically every vm builtin cmd should be in here.
3 // All 3 builtin and extension lists can be found here
4 // cause large (I think they will) parts are from pr_cmds the same copyright like in pr_cmds
9 ============================================================================
13 checkextension(string)
18 sprint(float clientnum,...[string])
19 centerprint(...[string])
20 vector normalize(vector)
22 float vectoyaw(vector)
23 vector vectoangles(vector)
27 cvar_set (string,string)
33 float stof(...[string])
36 entity find(entity start, .string field, string match)
38 entity findfloat(entity start, .float field, float match)
39 entity findentity(entity start, .entity field, entity match)
41 entity findchain(.string field, string match)
43 entity findchainfloat(.string field, float match)
44 entity findchainentity(.string field, entity match)
46 string precache_file(string)
47 string precache_sound (string sample)
55 entity nextent(entity)
60 float registercvar (string name, string value, float flags)
61 float min(float a, float b, ...[float])
62 float max(float a, float b, ...[float])
63 float bound(float min, float value, float max)
64 float pow(float a, float b)
65 copyentity(entity src, entity dst)
66 float fopen(string filename, float mode)
68 string fgets(float fhandle)
69 fputs(float fhandle, string s)
70 float strlen(string s)
71 string strcat(string,string,...[string])
72 string substring(string s, float start, float length)
74 string strzone(string s)
76 float tokenize(string s)
81 clientcommand(float client, string s) (for client and menu)
82 changelevel(string map)
83 localsound(string sample)
86 loadfromdata(string data)
87 loadfromfile(string file)
88 parseentitydata(entity ent, string data)
89 float mod(float val, float m)
90 const string cvar_string (string)
94 float search_begin(string pattern, float caseinsensitive, float quiet)
95 void search_end(float handle)
96 float search_getsize(float handle)
97 string search_getfilename(float handle, float num)
99 string chr(float ascii)
104 float altstr_count(string)
105 string altstr_prepare(string)
106 string altstr_get(string,float)
107 string altstr_set(string altstr, float num, string set)
108 string altstr_ins(string altstr, float num, string set)
110 perhaps only : Menu : WriteMsg
111 ===============================
113 WriteByte(float data, float dest, float desto)
114 WriteChar(float data, float dest, float desto)
115 WriteShort(float data, float dest, float desto)
116 WriteLong(float data, float dest, float desto)
117 WriteAngle(float data, float dest, float desto)
118 WriteCoord(float data, float dest, float desto)
119 WriteString(string data, float dest, float desto)
120 WriteEntity(entity data, float dest, float desto)
122 Client & Menu : draw functions & video functions
123 ===================================================
125 float iscachedpic(string pic)
126 string precache_pic(string pic)
128 float drawcharacter(vector position, float character, vector scale, vector rgb, float alpha, float flag)
129 float drawstring(vector position, string text, vector scale, vector rgb, float alpha, float flag)
130 float drawpic(vector position, string pic, vector size, vector rgb, float alpha, float flag)
131 float drawfill(vector position, vector size, vector rgb, float alpha, float flag)
132 drawsetcliparea(float x, float y, float width, float height)
134 vector getimagesize(string pic)
136 float cin_open(string file, string name)
137 void cin_close(string name)
138 void cin_setstate(string name, float type)
139 float cin_getstate(string name)
140 void cin_restart(string name)
142 ==============================================================================
146 setkeydest(float dest)
148 setmousetarget(float target)
149 float getmousetarget()
151 callfunction(...,string function_name)
152 writetofile(float fhandle, entity ent)
153 float isfunction(string function_name)
154 vector getresolution(float number)
155 string keynumtostring(float keynum)
156 string findkeysforcommand(string command)
157 float getserverliststat(float type)
158 string getserverliststring(float fld, float hostnr)
160 float stringtokeynum(string key)
162 resetserverlistmasks()
163 setserverlistmaskstring(float mask, float fld, string str)
164 setserverlistmasknumber(float mask, float fld, float num, float op)
166 setserverlistsort(float field, float descending)
168 float getserverlistnumber(float fld, float hostnr)
169 float getserverlistindexforkey(string key)
170 addwantedserverlistkey(string key)
173 #include "quakedef.h"
174 #include "progdefs.h"
176 #include "clprogdefs.h"
177 #include "mprogdefs.h"
179 #include "cl_video.h"
181 //============================================================================
182 // nice helper macros
184 #ifndef VM_NOPARMCHECK
185 #define VM_SAFEPARMCOUNT(p,f) if(prog->argc != p) PRVM_ERROR(#f " wrong parameter count (" #p " expected ) !\n")
187 #define VM_SAFEPARMCOUNT(p,f)
190 #define VM_RETURN_EDICT(e) (((int *)prog->globals)[OFS_RETURN] = PRVM_EDICT_TO_PROG(e))
192 #define e10 0,0,0,0,0,0,0,0,0,0
193 #define e100 e10,e10,e10,e10,e10,e10,e10,e10,e10,e10
194 #define e1000 e100,e100,e100,e100,e100,e100,e100,e100,e100,e100
196 // builtins and other general functions
198 char *VM_GetTempString(void);
199 void VM_CheckEmptyString (const char *s);
200 void VM_VarString(int first, char *out, int outlength);
202 void VM_checkextension (void);
203 void VM_error (void);
204 void VM_objerror (void);
205 void VM_print (void);
206 void VM_bprint (void);
207 void VM_sprint (void);
208 void VM_centerprint (void);
209 void VM_normalize (void);
211 void VM_vectoyaw (void);
212 void VM_vectoangles (void);
213 void VM_random (void);
214 void VM_localsound(void);
215 void VM_break (void);
216 void VM_localcmd (void);
218 void VM_cvar_string(void);
219 void VM_cvar_set (void);
220 void VM_dprint (void);
228 void VM_spawn (void);
229 void VM_remove (void);
231 void VM_findfloat (void);
232 void VM_findchain (void);
233 void VM_findchainfloat (void);
234 void VM_precache_file (void);
235 void VM_precache_error (void);
236 void VM_precache_sound (void);
237 void VM_coredump (void);
239 void VM_stackdump (void);
240 void VM_crash(void); // REMOVE IT
241 void VM_traceon (void);
242 void VM_traceoff (void);
243 void VM_eprint (void);
245 void VM_floor (void);
247 void VM_nextent (void);
250 sizebuf_t *VM_WriteDest (void);
251 void VM_WriteByte (void);
252 void VM_WriteChar (void);
253 void VM_WriteShort (void);
254 void VM_WriteLong (void);
255 void VM_WriteAngle (void);
256 void VM_WriteCoord (void);
257 void VM_WriteString (void);
258 void VM_WriteEntity (void);
260 void VM_changelevel (void);
264 void VM_randomvec (void);
265 void VM_registercvar (void);
268 void VM_bound (void);
270 void VM_copyentity (void);
272 void VM_Files_Init(void);
273 void VM_Files_CloseAll(void);
276 void VM_fclose(void);
279 // used by M_WriteToFile
280 // should be only called from a builtin
281 qfile_t *VM_GetFileHandle( int index );
283 void VM_strlen(void);
284 void VM_strcat(void);
285 void VM_substring(void);
287 void VM_strzone(void);
288 void VM_strunzone(void);
290 void VM_clcommand (void);
292 void VM_tokenize (void);
295 void VM_isserver(void);
296 void VM_clientcount(void);
297 void VM_clientstate(void);
298 // not used at the moment -> not included in the common list
299 void VM_getostype(void);
300 void VM_getmousepos(void);
301 void VM_gettime(void);
302 void VM_loadfromdata(void);
303 void VM_parseentitydata(void);
304 void VM_loadfromfile(void);
305 void VM_modulo(void);
307 void VM_search_begin(void);
308 void VM_search_end(void);
309 void VM_search_getsize(void);
310 void VM_search_getfilename(void);
312 void VM_iscachedpic(void);
313 void VM_precache_pic(void);
314 void VM_freepic(void);
315 void VM_drawcharacter(void);
316 void VM_drawstring(void);
317 void VM_drawpic(void);
318 void VM_drawfill(void);
319 void VM_drawsetcliparea(void);
320 void VM_drawresetcliparea(void);
321 void VM_getimagesize(void);
323 void VM_cin_open( void );
324 void VM_cin_close( void );
325 void VM_cin_setstate( void );
326 void VM_cin_getstate( void );
327 void VM_cin_restart( void );
329 void VM_altstr_count( void );
330 void VM_altstr_prepare( void );
331 void VM_altstr_get( void );
332 void VM_altstr_set( void );
333 void VM_altstr_ins(void);
335 void VM_Cmd_Init(void);
336 void VM_Cmd_Reset(void);