131 DataBuffer* casebuffers[MAX_CASE]; |
124 DataBuffer* casebuffers[MAX_CASE]; |
132 |
125 |
133 // What is the current buffer of the block? |
126 // What is the current buffer of the block? |
134 DataBuffer* recordbuffer; |
127 DataBuffer* recordbuffer; |
135 }; |
128 }; |
|
129 |
|
130 // ============================================================================ |
|
131 typedef struct { |
|
132 str name; |
|
133 type_e type; |
|
134 str val; |
|
135 } constinfo_t; |
136 |
136 |
137 // ============================================================================ |
137 // ============================================================================ |
138 // The script reader reads the script, parses it and tells the object writer |
138 // The script reader reads the script, parses it and tells the object writer |
139 // the bytecode it needs to write to file. |
139 // the bytecode it needs to write to file. |
140 class ScriptReader { |
140 class ScriptReader { |
179 void ParserWarning (const char* message, ...); |
179 void ParserWarning (const char* message, ...); |
180 |
180 |
181 // parser.cxx: |
181 // parser.cxx: |
182 void ParseBotScript (ObjWriter* w); |
182 void ParseBotScript (ObjWriter* w); |
183 DataBuffer* ParseCommand (CommandDef* comm); |
183 DataBuffer* ParseCommand (CommandDef* comm); |
184 DataBuffer* ParseExpression (int reqtype); |
184 DataBuffer* ParseExpression (type_e reqtype); |
185 DataBuffer* ParseAssignment (ScriptVar* var); |
185 DataBuffer* ParseAssignment (ScriptVar* var); |
186 int ParseOperator (bool peek = false); |
186 int ParseOperator (bool peek = false); |
187 DataBuffer* ParseExprValue (int reqtype); |
187 DataBuffer* ParseExprValue (type_e reqtype); |
|
188 str ParseFloat (); |
188 void PushScope (); |
189 void PushScope (); |
189 |
190 |
190 // preprocessor.cxx: |
191 // preprocessor.cxx: |
191 void PreprocessDirectives (); |
192 void PreprocessDirectives (); |
192 void PreprocessMacros (); |
193 void PreprocessMacros (); |