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.generic)[OFS_RETURN] = PRVM_EDICT_TO_PROG(e))
192 #define e10 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL
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 #define VM_STRINGTEMP_BUFFERS 16
197 #define VM_STRINGTEMP_LENGTH 4096
199 // builtins and other general functions
201 char *VM_GetTempString(void);
202 void VM_CheckEmptyString (const char *s);
203 void VM_VarString(int first, char *out, int outlength);
205 void VM_checkextension (void);
206 void VM_error (void);
207 void VM_objerror (void);
208 void VM_print (void);
209 void VM_bprint (void);
210 void VM_sprint (void);
211 void VM_centerprint (void);
212 void VM_normalize (void);
214 void VM_vectoyaw (void);
215 void VM_vectoangles (void);
216 void VM_random (void);
217 void VM_localsound(void);
218 void VM_break (void);
219 void VM_localcmd (void);
221 void VM_cvar_string(void);
222 void VM_cvar_set (void);
223 void VM_dprint (void);
231 void VM_spawn (void);
232 void VM_remove (void);
234 void VM_findfloat (void);
235 void VM_findchain (void);
236 void VM_findchainfloat (void);
237 void VM_precache_file (void);
238 void VM_precache_error (void);
239 void VM_precache_sound (void);
240 void VM_coredump (void);
242 void VM_stackdump (void);
243 void VM_crash(void); // REMOVE IT
244 void VM_traceon (void);
245 void VM_traceoff (void);
246 void VM_eprint (void);
248 void VM_floor (void);
250 void VM_nextent (void);
253 sizebuf_t *VM_WriteDest (void);
254 void VM_WriteByte (void);
255 void VM_WriteChar (void);
256 void VM_WriteShort (void);
257 void VM_WriteLong (void);
258 void VM_WriteAngle (void);
259 void VM_WriteCoord (void);
260 void VM_WriteString (void);
261 void VM_WriteEntity (void);
263 void VM_changelevel (void);
267 void VM_randomvec (void);
268 void VM_registercvar (void);
271 void VM_bound (void);
273 void VM_copyentity (void);
275 void VM_Files_Init(void);
276 void VM_Files_CloseAll(void);
279 void VM_fclose(void);
282 // used by M_WriteToFile
283 // should be only called from a builtin
284 qfile_t *VM_GetFileHandle( int index );
286 void VM_strlen(void);
287 void VM_strcat(void);
288 void VM_substring(void);
290 void VM_strzone(void);
291 void VM_strunzone(void);
293 void VM_clcommand (void);
295 void VM_tokenize (void);
298 void VM_isserver(void);
299 void VM_clientcount(void);
300 void VM_clientstate(void);
301 // not used at the moment -> not included in the common list
302 void VM_getostype(void);
303 void VM_getmousepos(void);
304 void VM_gettime(void);
305 void VM_loadfromdata(void);
306 void VM_parseentitydata(void);
307 void VM_loadfromfile(void);
308 void VM_modulo(void);
310 void VM_search_begin(void);
311 void VM_search_end(void);
312 void VM_search_getsize(void);
313 void VM_search_getfilename(void);
315 void VM_iscachedpic(void);
316 void VM_precache_pic(void);
317 void VM_freepic(void);
318 void VM_drawcharacter(void);
319 void VM_drawstring(void);
320 void VM_drawpic(void);
321 void VM_drawfill(void);
322 void VM_drawsetcliparea(void);
323 void VM_drawresetcliparea(void);
324 void VM_getimagesize(void);
326 void VM_cin_open( void );
327 void VM_cin_close( void );
328 void VM_cin_setstate( void );
329 void VM_cin_getstate( void );
330 void VM_cin_restart( void );
332 void VM_altstr_count( void );
333 void VM_altstr_prepare( void );
334 void VM_altstr_get( void );
335 void VM_altstr_set( void );
336 void VM_altstr_ins(void);
338 void VM_Cmd_Init(void);
339 void VM_Cmd_Reset(void);