-
Notifications
You must be signed in to change notification settings - Fork 20
/
openborscript.h
189 lines (169 loc) · 12.2 KB
/
openborscript.h
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
/*
* OpenBOR - http://www.LavaLit.com
* -----------------------------------------------------------------------
* Licensed under the BSD license, see LICENSE in OpenBOR root for details.
*
* Copyright (c) 2004 - 2011 OpenBOR Team
*/
#ifndef OPENBORSCRIPT_H
#define OPENBORSCRIPT_H
#include "Interpreter.h"
#include "pp_parser.h"
#define MAX_GLOBAL_VAR 2048
#define MAX_KEY_LEN 24
typedef struct {
ScriptVariant value;
char key[MAX_KEY_LEN];
struct Script *owner;
} s_variantnode;
typedef struct Script {
Interpreter *pinterpreter;
ScriptVariant *vars;
int initialized; //flag
int interpreterowner; //flag
} Script;
extern s_variantnode **global_var_list;
extern List theFunctionList;
extern ScriptVariant *indexed_var_list;
extern int max_indexed_vars;
extern int max_entity_vars;
extern int max_script_vars;
extern int max_global_vars;
extern int max_global_var_index;
extern int global_var_count;
//these functions can be used by openbor.c
void Script_Global_Init();
void Script_Global_Clear();
ScriptVariant *Script_Get_Global_Variant(char *theName);
int Script_Set_Global_Variant(char *theName, ScriptVariant * var);
ScriptVariant *Script_Get_Local_Variant(char *theName);
int Script_Set_Local_Variant(char *theName, ScriptVariant * var);
void Script_Init(Script * pscript, char *theName, int first);
Script *alloc_script();
void Script_Copy(Script * pdest, Script * psrc, int localclear);
int Script_IsInitialized(Script * pscript);
void Script_Clear(Script * pscript, int localclear);
int Script_AppendText(Script * pscript, char *text, char *path);
int Script_Compile(Script * pscript);
int Script_Execute(Script * pscript);
void Script_LoadSystemFunctions();
#ifndef COMPILED_SCRIPT
int Script_Call(Script * pscript, char *method, ScriptVariant * pretvar);
#endif
s32 system_isempty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_NULL(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_rand(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_maxglobalvarindex(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_getglobalvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_setglobalvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_getlocalvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_setlocalvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_clearlocalvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_clearglobalvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_clearindexedvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 system_free(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_systemvariant(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changesystemvariant(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawstring(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawstringtoscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawsprite(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawspritetoscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_log(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawbox(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawline(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawdot(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawboxtoscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawlinetoscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawdottoscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_drawscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changeplayerproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changeentityproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getplayerproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getentityproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_clearspawnentry(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setspawnentry(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_spawn(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_projectile(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_transconst(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_tossentity(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_playmusic(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_fademusic(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setmusicvolume(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setmusictempo(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_pausemusic(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_playsample(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_loadsample(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_unloadsample(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_fadeout(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_playerkeys(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changepalette(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_damageentity(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_killentity(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_findtarget(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_checkrange(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_gettextobjproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changetextobjproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_settextobj(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_cleartextobj(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getbglayerproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changebglayerproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getfglayerproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changefglayerproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getlevelproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changelevelproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_checkhole(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_checkwall(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_checkplatformbelow(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_openfilestream(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getfilestreamline(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getfilestreamargument(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_filestreamnextline(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getfilestreamposition(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setfilestreamposition(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_filestreamappend(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_createfilestream(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_savefilestream(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getindexedvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setindexedvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getscriptvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setscriptvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getentityvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setentityvar(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_jumptobranch(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changelight(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changeshadowcolor(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_bindentity(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_allocscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_clearscreen(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setdrawmethod(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_updateframe(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_performattack(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_setidle(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getentity(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_loadmodel(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_loadsprite(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_playgif(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_strinfirst(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_strinlast(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_strleft(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_strlength(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_strright(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_getmodelproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_changemodelproperty(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
s32 openbor_rgbcolor(ScriptVariant ** varlist, ScriptVariant ** pretvar, int paramCount);
void mapstrings_systemvariant(ScriptVariant ** varlist, int paramCount);
void mapstrings_changesystemvariant(ScriptVariant ** varlist, int paramCount);
void mapstrings_getentityproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_changeentityproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_getplayerproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_changeplayerproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_setspawnentry(ScriptVariant ** varlist, int paramCount);
void mapstrings_transconst(ScriptVariant ** varlist, int paramCount);
void mapstrings_playerkeys(ScriptVariant ** varlist, int paramCount);
void mapstrings_gettextobjproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_changetextobjproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_getbglayerproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_changebglayerproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_getfglayerproperty(ScriptVariant ** varlist, int paramCount);
void mapstrings_changefglayerproperty(ScriptVariant ** varlist, int paramCount);
#endif