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)
102 entity ftoe(float num)
104 -------will be removed soon----------
105 float altstr_count(string)
106 string altstr_prepare(string)
107 string altstr_get(string,float)
108 string altstr_set(string altstr, float num, string set)
109 string altstr_ins(string altstr, float num, string set)
110 --------------------------------------
112 entity findflags(entity start, .float field, float match)
113 entity findchainflags(.float field, float match)
115 const string VM_cvar_defstring (string)
117 perhaps only : Menu : WriteMsg
118 ===============================
120 WriteByte(float data, float dest, float desto)
121 WriteChar(float data, float dest, float desto)
122 WriteShort(float data, float dest, float desto)
123 WriteLong(float data, float dest, float desto)
124 WriteAngle(float data, float dest, float desto)
125 WriteCoord(float data, float dest, float desto)
126 WriteString(string data, float dest, float desto)
127 WriteEntity(entity data, float dest, float desto)
129 Client & Menu : draw functions & video functions
130 ===================================================
132 float iscachedpic(string pic)
133 string precache_pic(string pic)
135 float drawcharacter(vector position, float character, vector scale, vector rgb, float alpha, float flag)
136 float drawstring(vector position, string text, vector scale, vector rgb, float alpha, float flag)
137 float drawpic(vector position, string pic, vector size, vector rgb, float alpha, float flag)
138 float drawfill(vector position, vector size, vector rgb, float alpha, float flag)
139 drawsetcliparea(float x, float y, float width, float height)
141 vector getimagesize(string pic)
143 float cin_open(string file, string name)
144 void cin_close(string name)
145 void cin_setstate(string name, float type)
146 float cin_getstate(string name)
147 void cin_restart(string name)
149 ==============================================================================
153 setkeydest(float dest)
155 setmousetarget(float target)
156 float getmousetarget()
158 callfunction(...,string function_name)
159 writetofile(float fhandle, entity ent)
160 float isfunction(string function_name)
161 vector getresolution(float number)
162 string keynumtostring(float keynum)
163 string findkeysforcommand(string command)
164 float getserverliststat(float type)
165 string getserverliststring(float fld, float hostnr)
167 float stringtokeynum(string key)
169 resetserverlistmasks()
170 setserverlistmaskstring(float mask, float fld, string str)
171 setserverlistmasknumber(float mask, float fld, float num, float op)
173 setserverlistsort(float field, float descending)
175 float getserverlistnumber(float fld, float hostnr)
176 float getserverlistindexforkey(string key)
177 addwantedserverlistkey(string key)
180 #include "quakedef.h"
181 #include "progdefs.h"
183 #include "clprogdefs.h"
184 #include "mprogdefs.h"
186 #include "cl_video.h"
188 //============================================================================
189 // nice helper macros
191 #ifndef VM_NOPARMCHECK
192 #define VM_SAFEPARMCOUNT(p,f) if(prog->argc != p) PRVM_ERROR(#f " wrong parameter count (" #p " expected ) !")
194 #define VM_SAFEPARMCOUNT(p,f)
197 #define VM_RETURN_EDICT(e) (((int *)prog->globals.generic)[OFS_RETURN] = PRVM_EDICT_TO_PROG(e))
199 #define e10 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL
200 #define e100 e10,e10,e10,e10,e10,e10,e10,e10,e10,e10
201 #define e1000 e100,e100,e100,e100,e100,e100,e100,e100,e100,e100
203 #define VM_STRINGTEMP_BUFFERS 16
204 #define VM_STRINGTEMP_LENGTH MAX_INPUTLINE
206 // builtins and other general functions
208 void VM_CheckEmptyString (const char *s);
209 void VM_VarString(int first, char *out, int outlength);
211 void VM_checkextension (void);
212 void VM_error (void);
213 void VM_objerror (void);
214 void VM_print (void);
215 void VM_bprint (void);
216 void VM_sprint (void);
217 void VM_centerprint (void);
218 void VM_normalize (void);
220 void VM_vectoyaw (void);
221 void VM_vectoangles (void);
222 void VM_random (void);
223 void VM_localsound(void);
224 void VM_break (void);
225 void VM_localcmd (void);
227 void VM_cvar_string(void);
228 void VM_cvar_defstring (void);
229 void VM_cvar_set (void);
230 void VM_dprint (void);
238 void VM_strftime(void);
239 void VM_spawn (void);
240 void VM_remove (void);
242 void VM_findfloat (void);
243 void VM_findchain (void);
244 void VM_findchainfloat (void);
245 void VM_findflags (void);
246 void VM_findchainflags (void);
247 void VM_precache_file (void);
248 void VM_precache_error (void);
249 void VM_precache_sound (void);
250 void VM_coredump (void);
252 void VM_stackdump (void);
253 void VM_crash(void); // REMOVE IT
254 void VM_traceon (void);
255 void VM_traceoff (void);
256 void VM_eprint (void);
258 void VM_floor (void);
260 void VM_nextent (void);
262 void VM_changelevel (void);
266 void VM_randomvec (void);
267 void VM_registercvar (void);
270 void VM_bound (void);
272 void VM_copyentity (void);
276 void VM_atan2 (void);
279 void VM_Files_Init(void);
280 void VM_Files_CloseAll(void);
283 void VM_fclose(void);
286 // used by M_WriteToFile
287 // should be only called from a builtin
288 qfile_t *VM_GetFileHandle( int index );
290 void VM_strlen(void);
291 void VM_strcat(void);
292 void VM_substring(void);
294 void VM_strzone(void);
295 void VM_strunzone(void);
297 // DRESK - String Length (not counting color codes)
298 void VM_strlennocol(void);
299 // DRESK - Decolorized String
300 void VM_strdecolorize(void);
302 void VM_clcommand (void);
304 void VM_tokenize (void);
307 void VM_isserver(void);
308 void VM_clientcount(void);
309 void VM_clientstate(void);
310 // not used at the moment -> not included in the common list
311 void VM_getostype(void);
312 void VM_getmousepos(void);
313 void VM_gettime(void);
314 void VM_loadfromdata(void);
315 void VM_parseentitydata(void);
316 void VM_loadfromfile(void);
317 void VM_modulo(void);
319 void VM_search_begin(void);
320 void VM_search_end(void);
321 void VM_search_getsize(void);
322 void VM_search_getfilename(void);
324 void VM_iscachedpic(void);
325 void VM_precache_pic(void);
326 void VM_freepic(void);
327 void VM_drawcharacter(void);
328 void VM_drawstring(void);
329 void VM_drawpic(void);
330 void VM_drawfill(void);
331 void VM_drawsetcliparea(void);
332 void VM_drawresetcliparea(void);
333 void VM_getimagesize(void);
335 void VM_vectorvectors (void);
337 void VM_keynumtostring (void);
338 void VM_stringtokeynum (void);
340 void VM_cin_open( void );
341 void VM_cin_close( void );
342 void VM_cin_setstate( void );
343 void VM_cin_getstate( void );
344 void VM_cin_restart( void );
346 void VM_drawline (void);
347 void VM_R_PolygonBegin (void);
348 void VM_R_PolygonVertex (void);
349 void VM_R_PolygonEnd (void);
351 void VM_bitshift (void);
353 void VM_altstr_count( void );
354 void VM_altstr_prepare( void );
355 void VM_altstr_get( void );
356 void VM_altstr_set( void );
357 void VM_altstr_ins(void);
359 void VM_buf_create(void);
360 void VM_buf_del (void);
361 void VM_buf_getsize (void);
362 void VM_buf_copy (void);
363 void VM_buf_sort (void);
364 void VM_buf_implode (void);
365 void VM_bufstr_get (void);
366 void VM_bufstr_set (void);
367 void VM_bufstr_add (void);
368 void VM_bufstr_free (void);
370 void VM_Cmd_Init(void);
371 void VM_Cmd_Reset(void);