1 /* 2 * OpenBOR - http://www.chronocrash.com 3 * ----------------------------------------------------------------------- 4 * All rights reserved. See LICENSE in OpenBOR root for license details. 5 * 6 * Copyright (c) 2004 - 2014 OpenBOR Team 7 */ 8 9 #ifndef OPENBORSCRIPT_H 10 #define OPENBORSCRIPT_H 11 12 #include "Interpreter.h" 13 #include "pp_parser.h" 14 15 #define MAX_GLOBAL_VAR 2048 16 #define MAX_KEY_LEN 24 17 18 //osc 19 #define script_magic ((int)0x73636f) 20 //vlst 21 #define varlist_magic ((int)0x74736c76) 22 23 typedef enum 24 { 25 // Array keys for attack entity property. 26 // Damon V. Caskey 27 // 2016-02-20 28 29 // Used for varlist[KEY] when getting or setting 30 // entity attack property. 31 32 EP_ATTACK_AK_ENTITY, 33 EP_ATTACK_AK_PROPERTY, 34 EP_ATTACK_AK_ANIMATION, 35 EP_ATTACK_AK_FRAME, 36 EP_ATTACK_AK_INDEX 37 38 } ep_attack_array_key; 39 40 //This structure holds a named variable list (list) 41 // and an indexed list (vars). 42 typedef struct 43 { 44 int magic; 45 List *list; 46 ScriptVariant *vars; 47 } Varlist; 48 49 typedef struct Script 50 { 51 int magic; 52 Interpreter *pinterpreter; 53 char *comment; // debug purpose 54 Varlist *varlist; 55 int initialized; //flag 56 int interpreterowner; //flag 57 } Script; 58 59 extern Varlist global_var_list; 60 extern List theFunctionList; 61 extern ScriptVariant *indexed_var_list; 62 extern int max_indexed_vars; 63 extern int max_entity_vars; 64 extern int max_script_vars; 65 extern int max_global_vars; 66 extern int no_nested_script; 67 extern int global_var_count; 68 69 //these functions can be used by openbor.c 70 void Varlist_Init(Varlist *varlist, int size); 71 void Varlist_Clear(Varlist *varlist); 72 void Varlist_Cleanup(Varlist *varlist); 73 int Varlist_SetByName(Varlist *varlist, char *theName, ScriptVariant *var); 74 #define Script_Set_Local_Variant(s, k, v) Varlist_SetByName((s)->varlist, (k), (v)) 75 void Script_Global_Init(); 76 void Script_Global_Clear(); 77 void Script_Init(Script *pscript, char *theName, char *comment, int first); 78 Script *alloc_script(); 79 void Script_Copy(Script *pdest, Script *psrc, int localclear); 80 int Script_IsInitialized(Script *pscript); 81 void Script_Clear(Script *pscript, int localclear); 82 int Script_AppendText(Script *pscript, char *text, char *path); 83 int Script_Compile(Script *pscript); 84 int Script_Execute(Script *pscript); 85 int Script_Save_Local_Variant(Script *cs, char *namelist[]); 86 void Script_Load_Local_Variant(Script *cs, int handle); 87 88 void Script_LoadSystemFunctions(); 89 int Script_MapStringConstants(Instruction *pInstruction); 90 91 #ifndef COMPILED_SCRIPT 92 int Script_Call(Script *pscript, char *method, ScriptVariant *pretvar); 93 #endif 94 95 HRESULT system_isempty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 96 HRESULT system_exit(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 97 HRESULT system_NULL(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 98 HRESULT system_rand(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 99 HRESULT system_srand(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 100 HRESULT system_getglobalvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 101 HRESULT system_setglobalvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 102 HRESULT system_getlocalvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 103 HRESULT system_setlocalvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 104 HRESULT system_clearlocalvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 105 HRESULT system_clearglobalvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 106 HRESULT system_clearindexedvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 107 HRESULT system_free(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 108 HRESULT system_typeof(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 109 HRESULT math_sin(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 110 HRESULT math_ssin(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 111 HRESULT math_cos(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 112 HRESULT math_scos(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 113 HRESULT math_sqrt(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 114 HRESULT math_pow(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 115 HRESULT math_asin(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 116 HRESULT math_acos(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 117 HRESULT math_atan(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 118 HRESULT math_trunc(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 119 HRESULT math_round(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 120 HRESULT openbor_systemvariant(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 121 HRESULT openbor_changesystemvariant(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 122 HRESULT openbor_drawstring(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 123 HRESULT openbor_drawstringtoscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 124 HRESULT openbor_drawsprite(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 125 HRESULT openbor_drawspritetoscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 126 HRESULT openbor_log(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 127 HRESULT openbor_drawbox(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 128 HRESULT openbor_drawline(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 129 HRESULT openbor_drawdot(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 130 HRESULT openbor_drawboxtoscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 131 HRESULT openbor_drawlinetoscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 132 HRESULT openbor_drawdottoscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 133 HRESULT openbor_drawscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 134 135 // Animation properties. 136 HRESULT openbor_changeplayerproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 137 HRESULT openbor_changeentityproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 138 HRESULT openbor_get_animation_property(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 139 HRESULT openbor_set_animation_property(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 140 141 // Attack properties 142 HRESULT openbor_get_attack_collection(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 143 HRESULT openbor_get_attack_instance(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 144 HRESULT openbor_get_attack_property(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 145 HRESULT openbor_set_attack_property(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 146 147 // Body collision (bbox) properties 148 HRESULT openbor_get_body_collision_collection(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 149 HRESULT openbor_get_body_collision_instance(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 150 HRESULT openbor_get_body_collision_property(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 151 HRESULT openbor_set_body_collision_property(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 152 153 HRESULT openbor_getplayerproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 154 HRESULT openbor_getentityproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 155 HRESULT openbor_clearspawnentry(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 156 HRESULT openbor_setspawnentry(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 157 HRESULT openbor_spawn(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 158 HRESULT openbor_projectile(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 159 HRESULT openbor_transconst(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 160 HRESULT openbor_tossentity(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 161 HRESULT openbor_playmusic(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 162 HRESULT openbor_fademusic(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 163 HRESULT openbor_setmusicvolume(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 164 HRESULT openbor_setmusictempo(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 165 HRESULT openbor_pausemusic(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 166 HRESULT openbor_pausesamples(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 167 HRESULT openbor_pausesample(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 168 HRESULT openbor_querychannel(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 169 HRESULT openbor_stopchannel(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 170 HRESULT openbor_isactivesample(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 171 HRESULT openbor_sampleid(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 172 HRESULT openbor_playsample(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 173 HRESULT openbor_loadsample(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 174 HRESULT openbor_unloadsample(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 175 HRESULT openbor_fadeout(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 176 HRESULT openbor_playerkeys(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 177 HRESULT openbor_changepalette(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 178 HRESULT openbor_damageentity(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 179 HRESULT openbor_killentity(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 180 HRESULT openbor_dograb(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 181 HRESULT openbor_findtarget(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 182 HRESULT openbor_checkrange(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 183 HRESULT openbor_gettextobjproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 184 HRESULT openbor_changetextobjproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 185 HRESULT openbor_settextobj(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 186 HRESULT openbor_cleartextobj(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 187 HRESULT openbor_getlayerproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 188 HRESULT openbor_changelayerproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 189 HRESULT openbor_getlevelproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 190 HRESULT openbor_changelevelproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 191 HRESULT openbor_checkhole(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 192 HRESULT openbor_checkholeindex(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 193 HRESULT openbor_checkwall(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 194 HRESULT openbor_checkwallindex(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 195 HRESULT openbor_checkplatformbelow(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 196 HRESULT openbor_checkplatformabove(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 197 HRESULT openbor_checkplatformbetween(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 198 HRESULT openbor_checkbasemap(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 199 HRESULT openbor_checkbasemapindex(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 200 HRESULT openbor_generatebasemap(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 201 202 HRESULT openbor_openfilestream(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 203 HRESULT openbor_getfilestreamline(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 204 HRESULT openbor_getfilestreamargument(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 205 HRESULT openbor_filestreamnextline(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 206 HRESULT openbor_getfilestreamposition(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 207 HRESULT openbor_setfilestreamposition(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 208 209 HRESULT openbor_filestreamappend(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 210 HRESULT openbor_createfilestream(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 211 HRESULT openbor_closefilestream(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 212 HRESULT openbor_savefilestream(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 213 214 HRESULT openbor_getindexedvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 215 HRESULT openbor_setindexedvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 216 HRESULT openbor_getscriptvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 217 HRESULT openbor_setscriptvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 218 HRESULT openbor_getentityvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 219 HRESULT openbor_setentityvar(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 220 221 HRESULT openbor_shutdown(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 222 223 HRESULT openbor_jumptobranch(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 224 225 HRESULT openbor_changelight(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 226 HRESULT openbor_changeshadowcolor(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 227 HRESULT openbor_bindentity(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 228 229 HRESULT openbor_array(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 230 HRESULT openbor_size(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 231 HRESULT openbor_get(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 232 HRESULT openbor_set(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 233 HRESULT openbor_delete(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 234 HRESULT openbor_add(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 235 HRESULT openbor_reset(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 236 HRESULT openbor_next(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 237 HRESULT openbor_previous(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 238 HRESULT openbor_key(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 239 HRESULT openbor_value(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 240 HRESULT openbor_islast(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 241 HRESULT openbor_isfirst(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 242 243 HRESULT openbor_allocscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 244 HRESULT openbor_clearscreen(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 245 HRESULT openbor_setdrawmethod(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 246 HRESULT openbor_updateframe(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 247 HRESULT openbor_executeanimation(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 248 HRESULT openbor_performattack(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 249 HRESULT openbor_setidle(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 250 HRESULT openbor_getentity(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 251 252 HRESULT openbor_loadmodel(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 253 HRESULT openbor_loadsprite(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 254 HRESULT openbor_hallfame(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 255 HRESULT openbor_menu_options(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 256 HRESULT openbor_playwebm(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 257 HRESULT openbor_playgif(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 258 HRESULT openbor_openanigif(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 259 HRESULT openbor_decodeanigif(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 260 HRESULT openbor_getanigifinfo(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 261 262 263 HRESULT openbor_strinfirst(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 264 HRESULT openbor_strinlast(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 265 HRESULT openbor_strleft(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 266 HRESULT openbor_strlength(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 267 HRESULT openbor_strwidth(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 268 HRESULT openbor_strright(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 269 HRESULT openbor_getmodelproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 270 HRESULT openbor_changemodelproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 271 HRESULT openbor_rgbcolor(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 272 273 HRESULT openbor_adjustwalkanimation(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 274 HRESULT openbor_finditem(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 275 HRESULT openbor_pickup(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 276 HRESULT openbor_waypoints(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 277 HRESULT openbor_changedrawmethod(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 278 279 HRESULT openbor_drawspriteq(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 280 HRESULT openbor_clearspriteq(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 281 HRESULT openbor_getgfxproperty(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 282 HRESULT openbor_getdrawmethod(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 283 284 HRESULT openbor_allocscript(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 285 HRESULT openbor_loadscript(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 286 HRESULT openbor_compilescript(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 287 HRESULT openbor_executescript(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 288 289 HRESULT openbor_loadgamefile(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 290 HRESULT openbor_finishlevel(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 291 HRESULT openbor_gotomainmenu(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 292 HRESULT openbor_playgame(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 293 HRESULT openbor_getrecordingstatus(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 294 HRESULT openbor_recordinputs(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 295 HRESULT openbor_getsaveinfo(ScriptVariant **varlist , ScriptVariant **pretvar, int paramCount); 296 297 int mapstrings_animationproperty(ScriptVariant **varlist, int paramCount); 298 int mapstrings_systemvariant(ScriptVariant **varlist, int paramCount); 299 int mapstrings_entityproperty(ScriptVariant **varlist, int paramCount); 300 int mapstrings_playerproperty(ScriptVariant **varlist, int paramCount); 301 int mapstrings_setspawnentry(ScriptVariant **varlist, int paramCount); 302 int mapstrings_transconst(ScriptVariant **varlist, int paramCount); 303 int mapstrings_playerkeys(ScriptVariant **varlist, int paramCount); 304 int mapstrings_textobjproperty(ScriptVariant **varlist, int paramCount); 305 int mapstrings_layerproperty(ScriptVariant **varlist, int paramCount); 306 int mapstrings_drawmethodproperty(ScriptVariant **varlist, int paramCount); 307 int mapstrings_gfxproperty(ScriptVariant **varlist, int paramCount); 308 int mapstrings_levelproperty(ScriptVariant **varlist, int paramCount); 309 int mapstrings_attackproperty(ScriptVariant **varlist, int paramCount); 310 311 enum systemvariant_enum 312 { 313 _sv_background, 314 _sv_blockade, 315 _sv_branchname, 316 _sv_cheats, 317 _sv_count_enemies, 318 _sv_count_entities, 319 _sv_count_npcs, 320 _sv_count_players, 321 _sv_current_branch, 322 _sv_current_level, 323 _sv_current_palette, 324 _sv_current_scene, 325 _sv_current_set, 326 _sv_current_stage, 327 _sv_effectvol, 328 _sv_elapsed_time, 329 _sv_ent_max, 330 _sv_fps, 331 _sv_freeram, 332 _sv_game_paused, 333 _sv_game_speed, 334 _sv_gfx_x_offset, 335 _sv_gfx_y_offset, 336 _sv_gfx_y_offset_adj, 337 _sv_hresolution, 338 _sv_in_cheat_options, 339 _sv_in_control_options, 340 _sv_in_enginecreditsscreen, 341 _sv_in_gameoverscreen, 342 _sv_in_halloffamescreen, 343 _sv_in_level, 344 _sv_in_load_game, 345 _sv_in_menuscreen, 346 _sv_in_new_game, 347 _sv_in_options, 348 _sv_in_selectscreen, 349 _sv_in_showcomplete, 350 _sv_in_sound_options, 351 _sv_in_start_game, 352 _sv_in_system_options, 353 _sv_in_titlescreen, 354 _sv_in_video_options, 355 _sv_lasthita, 356 _sv_lasthitc, 357 _sv_lasthitt, 358 _sv_lasthitx, 359 _sv_lasthity, 360 _sv_lasthitz, 361 _sv_levelheight, 362 _sv_levelpos, 363 _sv_levelwidth, 364 _sv_lightx, 365 _sv_lightz, 366 _sv_maxanimations, 367 _sv_maxattacktypes, 368 _sv_maxentityvars, 369 _sv_maxglobalvars, 370 _sv_maxindexedvars, 371 _sv_maxplayers, 372 _sv_maxscriptvars, 373 _sv_maxsoundchannels, 374 _sv_models_cached, 375 _sv_models_loaded, 376 _sv_musicvol, 377 _sv_nofadeout, 378 _sv_nogameover, 379 _sv_nohof, 380 _sv_nojoin, 381 _sv_nopause, 382 _sv_nosave, 383 _sv_noscreenshot, 384 _sv_noshowcomplete, 385 _sv_numbasemaps, 386 _sv_numholes, 387 _sv_numlayers, 388 _sv_numpalettes, 389 _sv_numwalls, 390 _sv_pakname, 391 _sv_pause, 392 _sv_pixelformat, 393 _sv_player, 394 _sv_player1, 395 _sv_player2, 396 _sv_player3, 397 _sv_player4, 398 _sv_player_max_z, 399 _sv_player_min_z, 400 _sv_porting, 401 _sv_sample_play_id, 402 _sv_scrollmaxx, 403 _sv_scrollmaxz, 404 _sv_scrollminx, 405 _sv_scrollminz, 406 _sv_self, 407 _sv_shadowalpha, 408 _sv_shadowcolor, 409 _sv_shadowopacity, 410 _sv_skiptoset, 411 _sv_slowmotion, 412 _sv_slowmotion_duration, 413 _sv_smartbomber, 414 _sv_soundvol, 415 _sv_textbox, 416 _sv_ticks, 417 _sv_totalram, 418 _sv_usedram, 419 _sv_viewporth, 420 _sv_viewportw, 421 _sv_viewportx, 422 _sv_viewporty, 423 _sv_vresolution, 424 _sv_vscreen, 425 _sv_waiting, 426 _sv_xpos, 427 _sv_ypos, 428 _sv_the_end 429 }; 430 431 #endif 432