root/trunk/SynEdit_EiScript/SynHighlighterEIScript.pas

Revision 1, 53.8 kB (checked in by sagrer, 1 year ago)

Заливаю исходник.

  • Property svnmailer:content-charset set to cp1251
Line 
1 {-------------------------------------------------------------------------------
2 The contents of this file are subject to the Mozilla Public License
3 Version 1.1 (the "License"); you may not use this file except in compliance
4 with the License. You may obtain a copy of the License at
5 http://www.mozilla.org/MPL/
6
7 Software distributed under the License is distributed on an "AS IS" basis,
8 WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
9 the specific language governing rights and limitations under the License.
10
11 Code template generated with SynGen.
12 The original code is: SynHighlighterEIScript.pas, released 2005-06-18.
13 Description: Evil Islands Script highlighter
14 The initial author of this file is Sagrer.
15 Copyright (c) 2005, all rights reserved.
16
17 Contributors to the SynEdit and mwEdit projects are listed in the
18 Contributors.txt file.
19
20 Alternatively, the contents of this file may be used under the terms of the
21 GNU General Public License Version 2 or later (the "GPL"), in which case
22 the provisions of the GPL are applicable instead of those above.
23 If you wish to allow use of your version of this file only under the terms
24 of the GPL and not to allow others to use your version of this file
25 under the MPL, indicate your decision by deleting the provisions above and
26 replace them with the notice and other provisions required by the GPL.
27 If you do not delete the provisions above, a recipient may use your version
28 of this file under either the MPL or the GPL.
29
30 $Id: $
31
32 You may retrieve the latest version of this file at the SynEdit home page,
33 located at http://SynEdit.SourceForge.net
34
35 -------------------------------------------------------------------------------}
36
37 unit SynHighlighterEIScript;
38
39 {$I SynEdit.inc}
40
41 interface
42
43 uses
44   SysUtils,
45   Classes,
46 {$IFDEF SYN_CLX}
47   QControls,
48   QGraphics,
49 {$ELSE}
50   Windows,
51   Controls,
52   Graphics,
53 {$ENDIF}
54   SynEditTypes,
55   SynEditHighlighter;
56
57 type
58   TtkTokenKind = (
59     tkComment,
60     tkDateTypes,
61     tkFunctions,
62     tkIdentifier,
63     tkKey,
64     tkNull,
65     tkNumber,
66     tkSkobki,
67     tkStringValues,
68     tkUnknown);
69
70   TRangeState = (rsUnKnown, rsCommentProc, rsStringValuesProc);
71
72   TProcTableProc = procedure of object;
73
74   PIdentFuncTableFunc = ^TIdentFuncTableFunc;
75   TIdentFuncTableFunc = function: TtkTokenKind of object;
76
77 const
78   MaxKey = 291;
79
80 type
81   TSynEIScriptSyn = class(TSynCustomHighlighter)
82   private
83     fLine: PChar;
84     fLineNumber: Integer;
85     fProcTable: array[#0..#255] of TProcTableProc;
86     fRange: TRangeState;
87     Run: LongInt;
88     fStringLen: Integer;
89     fToIdent: PChar;
90     fTokenPos: Integer;
91     fTokenID: TtkTokenKind;
92     fIdentFuncTable: array[0 .. MaxKey] of TIdentFuncTableFunc;
93     fCommentAttri: TSynHighlighterAttributes;
94     fDateTypesAttri: TSynHighlighterAttributes;
95     fFunctionsAttri: TSynHighlighterAttributes;
96     fIdentifierAttri: TSynHighlighterAttributes;
97     fKeyAttri: TSynHighlighterAttributes;
98     fNumberAttri: TSynHighlighterAttributes;
99     fSkobkiAttri: TSynHighlighterAttributes;
100     fStringValuesAttri: TSynHighlighterAttributes;
101     function KeyHash(ToHash: PChar): Integer;
102     function KeyComp(const aKey: string): Boolean;
103     function Func9: TtkTokenKind;
104     function Func15: TtkTokenKind;
105     function Func24: TtkTokenKind;
106     function Func26: TtkTokenKind;
107     function Func29: TtkTokenKind;
108     function Func30: TtkTokenKind;
109     function Func35: TtkTokenKind;
110     function Func39: TtkTokenKind;
111     function Func40: TtkTokenKind;
112     function Func42: TtkTokenKind;
113     function Func43: TtkTokenKind;
114     function Func46: TtkTokenKind;
115     function Func47: TtkTokenKind;
116     function Func49: TtkTokenKind;
117     function Func51: TtkTokenKind;
118     function Func53: TtkTokenKind;
119     function Func54: TtkTokenKind;
120     function Func55: TtkTokenKind;
121     function Func56: TtkTokenKind;
122     function Func57: TtkTokenKind;
123     function Func58: TtkTokenKind;
124     function Func59: TtkTokenKind;
125     function Func62: TtkTokenKind;
126     function Func63: TtkTokenKind;
127     function Func64: TtkTokenKind;
128     function Func65: TtkTokenKind;
129     function Func67: TtkTokenKind;
130     function Func69: TtkTokenKind;
131     function Func71: TtkTokenKind;
132     function Func73: TtkTokenKind;
133     function Func75: TtkTokenKind;
134     function Func76: TtkTokenKind;
135     function Func77: TtkTokenKind;
136     function Func78: TtkTokenKind;
137     function Func81: TtkTokenKind;
138     function Func82: TtkTokenKind;
139     function Func83: TtkTokenKind;
140     function Func84: TtkTokenKind;
141     function Func85: TtkTokenKind;
142     function Func86: TtkTokenKind;
143     function Func87: TtkTokenKind;
144     function Func88: TtkTokenKind;
145     function Func89: TtkTokenKind;
146     function Func90: TtkTokenKind;
147     function Func92: TtkTokenKind;
148     function Func93: TtkTokenKind;
149     function Func94: TtkTokenKind;
150     function Func95: TtkTokenKind;
151     function Func96: TtkTokenKind;
152     function Func99: TtkTokenKind;
153     function Func100: TtkTokenKind;
154     function Func101: TtkTokenKind;
155     function Func102: TtkTokenKind;
156     function Func104: TtkTokenKind;
157     function Func105: TtkTokenKind;
158     function Func106: TtkTokenKind;
159     function Func107: TtkTokenKind;
160     function Func108: TtkTokenKind;
161     function Func109: TtkTokenKind;
162     function Func110: TtkTokenKind;
163     function Func111: TtkTokenKind;
164     function Func114: TtkTokenKind;
165     function Func115: TtkTokenKind;
166     function Func116: TtkTokenKind;
167     function Func117: TtkTokenKind;
168     function Func118: TtkTokenKind;
169     function Func119: TtkTokenKind;
170     function Func120: TtkTokenKind;
171     function Func121: TtkTokenKind;
172     function Func123: TtkTokenKind;
173     function Func125: TtkTokenKind;
174     function Func126: TtkTokenKind;
175     function Func127: TtkTokenKind;
176     function Func128: TtkTokenKind;
177     function Func129: TtkTokenKind;
178     function Func130: TtkTokenKind;
179     function Func132: TtkTokenKind;
180     function Func133: TtkTokenKind;
181     function Func135: TtkTokenKind;
182     function Func136: TtkTokenKind;
183     function Func137: TtkTokenKind;
184     function Func138: TtkTokenKind;
185     function Func140: TtkTokenKind;
186     function Func141: TtkTokenKind;
187     function Func142: TtkTokenKind;
188     function Func143: TtkTokenKind;
189     function Func144: TtkTokenKind;
190     function Func145: TtkTokenKind;
191     function Func147: TtkTokenKind;
192     function Func148: TtkTokenKind;
193     function Func149: TtkTokenKind;
194     function Func150: TtkTokenKind;
195     function Func151: TtkTokenKind;
196     function Func152: TtkTokenKind;
197     function Func153: TtkTokenKind;
198     function Func154: TtkTokenKind;
199     function Func155: TtkTokenKind;
200     function Func156: TtkTokenKind;
201     function Func157: TtkTokenKind;
202     function Func158: TtkTokenKind;
203     function Func159: TtkTokenKind;
204     function Func162: TtkTokenKind;
205     function Func163: TtkTokenKind;
206     function Func164: TtkTokenKind;
207     function Func165: TtkTokenKind;
208     function Func167: TtkTokenKind;
209     function Func168: TtkTokenKind;
210     function Func170: TtkTokenKind;
211     function Func171: TtkTokenKind;
212     function Func172: TtkTokenKind;
213     function Func173: TtkTokenKind;
214     function Func174: TtkTokenKind;
215     function Func175: TtkTokenKind;
216     function Func177: TtkTokenKind;
217     function Func180: TtkTokenKind;
218     function Func181: TtkTokenKind;
219     function Func182: TtkTokenKind;
220     function Func185: TtkTokenKind;
221     function Func188: TtkTokenKind;
222     function Func189: TtkTokenKind;
223     function Func192: TtkTokenKind;
224     function Func194: TtkTokenKind;
225     function Func195: TtkTokenKind;
226     function Func199: TtkTokenKind;
227     function Func202: TtkTokenKind;
228     function Func203: TtkTokenKind;
229     function Func204: TtkTokenKind;
230     function Func207: TtkTokenKind;
231     function Func209: TtkTokenKind;
232     function Func213: TtkTokenKind;
233     function Func216: TtkTokenKind;
234     function Func217: TtkTokenKind;
235     function Func218: TtkTokenKind;
236     function Func220: TtkTokenKind;
237     function Func222: TtkTokenKind;
238     function Func223: TtkTokenKind;
239     function Func225: TtkTokenKind;
240     function Func231: TtkTokenKind;
241     function Func232: TtkTokenKind;
242     function Func233: TtkTokenKind;
243     function Func235: TtkTokenKind;
244     function Func236: TtkTokenKind;
245     function Func238: TtkTokenKind;
246     function Func252: TtkTokenKind;
247     function Func268: TtkTokenKind;
248     function Func272: TtkTokenKind;
249     function Func274: TtkTokenKind;
250     function Func281: TtkTokenKind;
251     function Func291: TtkTokenKind;
252     procedure IdentProc;
253     procedure NumberProc;
254     procedure SkobkiProc;
255     procedure UnknownProc;
256     function AltFunc: TtkTokenKind;
257     procedure InitIdent;
258     function IdentKind(MayBe: PChar): TtkTokenKind;
259     procedure MakeMethodTables;
260     procedure NullProc;
261     procedure CRProc;
262     procedure LFProc;
263     procedure CommentProcOpenProc;
264     procedure CommentProcProc;
265     procedure StringValuesProcOpenProc;
266     procedure StringValuesProcProc;
267   protected
268     function GetIdentChars: TSynIdentChars; override;
269     function GetSampleSource: string; override;
270     function IsFilterStored: Boolean; override;
271   public
272     constructor Create(AOwner: TComponent); override;
273     {$IFNDEF SYN_CPPB_1} class {$ENDIF}
274     function GetLanguageName: string; override;
275     function GetRange: Pointer; override;
276     procedure ResetRange; override;
277     procedure SetRange(Value: Pointer); override;
278     function GetDefaultAttribute(Index: integer): TSynHighlighterAttributes; override;
279     function GetEol: Boolean; override;
280     function GetKeyWords: string;
281     function GetTokenID: TtkTokenKind;
282     procedure SetLine(NewValue: String; LineNumber: Integer); override;
283     function GetToken: String; override;
284     function GetTokenAttribute: TSynHighlighterAttributes; override;
285     function GetTokenKind: integer; override;
286     function GetTokenPos: Integer; override;
287     procedure Next; override;
288   published
289     property CommentAttri: TSynHighlighterAttributes read fCommentAttri write fCommentAttri;
290     property DateTypesAttri: TSynHighlighterAttributes read fDateTypesAttri write fDateTypesAttri;
291     property FunctionsAttri: TSynHighlighterAttributes read fFunctionsAttri write fFunctionsAttri;
292     property IdentifierAttri: TSynHighlighterAttributes read fIdentifierAttri write fIdentifierAttri;
293     property KeyAttri: TSynHighlighterAttributes read fKeyAttri write fKeyAttri;
294     property NumberAttri: TSynHighlighterAttributes read fNumberAttri write fNumberAttri;
295     property SkobkiAttri: TSynHighlighterAttributes read fSkobkiAttri write fSkobkiAttri;
296     property StringValuesAttri: TSynHighlighterAttributes read fStringValuesAttri write fStringValuesAttri;
297   end;
298
299 implementation
300
301 uses
302   SynEditStrConst;
303
304 {$IFDEF SYN_COMPILER_3_UP}
305 resourcestring
306 {$ELSE}
307 const
308 {$ENDIF}
309   SYNS_FilterEvilIslandsscript = 'Mob files (*.mob)|*.mob';
310   SYNS_LangEvilIslandsscript = 'Evil Islands script';
311   SYNS_AttrDateTypes = 'DateTypes';
312   SYNS_AttrFunctions = 'Functions';
313   SYNS_AttrSkobki = 'Skobki';
314   SYNS_AttrStringValues = 'StringValues';
315
316 var
317   Identifiers: array[#0..#255] of ByteBool;
318   mHashTable : array[#0..#255] of Integer;
319
320 procedure MakeIdentTable;
321 var
322   I, J: Char;
323 begin
324   for I := #0 to #255 do
325   begin
326     case I of
327       '_', 'a'..'z', 'A'..'Z': Identifiers[I] := True;
328     else
329       Identifiers[I] := False;
330     end;
331     J := UpCase(I);
332     case I in ['_', 'A'..'Z', 'a'..'z'] of
333       True: mHashTable[I] := Ord(J) - 64
334     else
335       mHashTable[I] := 0;
336     end;
337   end;
338 end;
339
340 procedure TSynEIScriptSyn.InitIdent;
341 var
342   I: Integer;
343   pF: PIdentFuncTableFunc;
344 begin
345   pF := PIdentFuncTableFunc(@fIdentFuncTable);
346   for I := Low(fIdentFuncTable) to High(fIdentFuncTable) do
347   begin
348     pF^ := AltFunc;
349     Inc(pF);
350   end;
351   fIdentFuncTable[9] := Func9;
352   fIdentFuncTable[15] := Func15;
353   fIdentFuncTable[24] := Func24;
354   fIdentFuncTable[26] := Func26;
355   fIdentFuncTable[29] := Func29;
356   fIdentFuncTable[30] := Func30;
357   fIdentFuncTable[35] := Func35;
358   fIdentFuncTable[39] := Func39;
359   fIdentFuncTable[40] := Func40;
360   fIdentFuncTable[42] := Func42;
361   fIdentFuncTable[43] := Func43;
362   fIdentFuncTable[46] := Func46;
363   fIdentFuncTable[47] := Func47;
364   fIdentFuncTable[49] := Func49;
365   fIdentFuncTable[51] := Func51;
366   fIdentFuncTable[53] := Func53;
367   fIdentFuncTable[54] := Func54;
368   fIdentFuncTable[55] := Func55;
369   fIdentFuncTable[56] := Func56;
370   fIdentFuncTable[57] := Func57;
371   fIdentFuncTable[58] := Func58;
372   fIdentFuncTable[59] := Func59;
373   fIdentFuncTable[62] := Func62;
374   fIdentFuncTable[63] := Func63;
375   fIdentFuncTable[64] := Func64;
376   fIdentFuncTable[65] := Func65;
377   fIdentFuncTable[67] := Func67;
378   fIdentFuncTable[69] := Func69;
379   fIdentFuncTable[71] := Func71;
380   fIdentFuncTable[73] := Func73;
381   fIdentFuncTable[75] := Func75;
382   fIdentFuncTable[76] := Func76;
383   fIdentFuncTable[77] := Func77;
384   fIdentFuncTable[78] := Func78;
385   fIdentFuncTable[81] := Func81;
386   fIdentFuncTable[82] := Func82;
387   fIdentFuncTable[83] := Func83;
388   fIdentFuncTable[84] := Func84;
389   fIdentFuncTable[85] := Func85;
390   fIdentFuncTable[86] := Func86;
391   fIdentFuncTable[87] := Func87;
392   fIdentFuncTable[88] := Func88;
393   fIdentFuncTable[89] := Func89;
394   fIdentFuncTable[90] := Func90;
395   fIdentFuncTable[92] := Func92;
396   fIdentFuncTable[93] := Func93;
397   fIdentFuncTable[94] := Func94;
398   fIdentFuncTable[95] := Func95;
399   fIdentFuncTable[96] := Func96;
400   fIdentFuncTable[99] := Func99;
401   fIdentFuncTable[100] := Func100;
402   fIdentFuncTable[101] := Func101;
403   fIdentFuncTable[102] := Func102;
404   fIdentFuncTable[104] := Func104;
405   fIdentFuncTable[105] := Func105;
406   fIdentFuncTable[106] := Func106;
407   fIdentFuncTable[107] := Func107;
408   fIdentFuncTable[108] := Func108;
409   fIdentFuncTable[109] := Func109;
410   fIdentFuncTable[110] := Func110;
411   fIdentFuncTable[111] := Func111;
412   fIdentFuncTable[114] := Func114;
413   fIdentFuncTable[115] := Func115;
414   fIdentFuncTable[116] := Func116;
415   fIdentFuncTable[117] := Func117;
416   fIdentFuncTable[118] := Func118;
417   fIdentFuncTable[119] := Func119;
418   fIdentFuncTable[120] := Func120;
419   fIdentFuncTable[121] := Func121;
420   fIdentFuncTable[123] := Func123;
421   fIdentFuncTable[125] := Func125;
422   fIdentFuncTable[126] := Func126;
423   fIdentFuncTable[127] := Func127;
424   fIdentFuncTable[128] := Func128;
425   fIdentFuncTable[129] := Func129;
426   fIdentFuncTable[130] := Func130;
427   fIdentFuncTable[132] := Func132;
428   fIdentFuncTable[133] := Func133;
429   fIdentFuncTable[135] := Func135;
430   fIdentFuncTable[136] := Func136;
431   fIdentFuncTable[137] := Func137;
432   fIdentFuncTable[138] := Func138;
433   fIdentFuncTable[140] := Func140;
434   fIdentFuncTable[141] := Func141;
435   fIdentFuncTable[142] := Func142;
436   fIdentFuncTable[143] := Func143;
437   fIdentFuncTable[144] := Func144;
438   fIdentFuncTable[145] := Func145;
439   fIdentFuncTable[147] := Func147;
440   fIdentFuncTable[148] := Func148;
441   fIdentFuncTable[149] := Func149;
442   fIdentFuncTable[150] := Func150;
443   fIdentFuncTable[151] := Func151;
444   fIdentFuncTable[152] := Func152;
445   fIdentFuncTable[153] := Func153;
446   fIdentFuncTable[154] := Func154;
447   fIdentFuncTable[155] := Func155;
448   fIdentFuncTable[156] := Func156;
449   fIdentFuncTable[157] := Func157;
450   fIdentFuncTable[158] := Func158;
451   fIdentFuncTable[159] := Func159;
452   fIdentFuncTable[162] := Func162;
453   fIdentFuncTable[163] := Func163;
454   fIdentFuncTable[164] := Func164;
455   fIdentFuncTable[165] := Func165;
456   fIdentFuncTable[167] := Func167;
457   fIdentFuncTable[168] := Func168;
458   fIdentFuncTable[170] := Func170;
459   fIdentFuncTable[171] := Func171;
460   fIdentFuncTable[172] := Func172;
461   fIdentFuncTable[173] := Func173;
462   fIdentFuncTable[174] := Func174;
463   fIdentFuncTable[175] := Func175;
464   fIdentFuncTable[177] := Func177;
465   fIdentFuncTable[180] := Func180;
466   fIdentFuncTable[181] := Func181;
467   fIdentFuncTable[182] := Func182;
468   fIdentFuncTable[185] := Func185;
469   fIdentFuncTable[188] := Func188;
470   fIdentFuncTable[189] := Func189;
471   fIdentFuncTable[192] := Func192;
472   fIdentFuncTable[194] := Func194;
473   fIdentFuncTable[195] := Func195;
474   fIdentFuncTable[199] := Func199;
475   fIdentFuncTable[202] := Func202;
476   fIdentFuncTable[203] := Func203;
477   fIdentFuncTable[204] := Func204;
478   fIdentFuncTable[207] := Func207;
479   fIdentFuncTable[209] := Func209;
480   fIdentFuncTable[213] := Func213;
481   fIdentFuncTable[216] := Func216;
482   fIdentFuncTable[217] := Func217;
483   fIdentFuncTable[218] := Func218;
484   fIdentFuncTable[220] := Func220;
485   fIdentFuncTable[222] := Func222;
486   fIdentFuncTable[223] := Func223;
487   fIdentFuncTable[225] := Func225;
488   fIdentFuncTable[231] := Func231;
489   fIdentFuncTable[232] := Func232;
490   fIdentFuncTable[233] := Func233;
491   fIdentFuncTable[235] := Func235;
492   fIdentFuncTable[236] := Func236;
493   fIdentFuncTable[238] := Func238;
494   fIdentFuncTable[252] := Func252;
495   fIdentFuncTable[268] := Func268;
496   fIdentFuncTable[272] := Func272;
497   fIdentFuncTable[274] := Func274;
498   fIdentFuncTable[281] := Func281;
499   fIdentFuncTable[291] := Func291;
500 end;
501
502 function TSynEIScriptSyn.KeyHash(ToHash: PChar): Integer;
503 begin
504   Result := 0;
505   while ToHash^ in ['_', 'a'..'z', 'A'..'Z'] do
506   begin
507     inc(Result, mHashTable[ToHash^]);
508     inc(ToHash);
509   end;
510   fStringLen := ToHash - fToIdent;
511 end;
512
513 function TSynEIScriptSyn.KeyComp(const aKey: String): Boolean;
514 var
515   I: Integer;
516   Temp: PChar;
517 begin
518   Temp := fToIdent;
519   if Length(aKey) = fStringLen then
520   begin
521     Result := True;
522     for i := 1 to fStringLen do
523     begin
524       if mHashTable[Temp^] <> mHashTable[aKey[i]] then
525       begin
526         Result := False;
527         break;
528       end;
529       inc(Temp);
530     end;
531   end
532   else
533     Result := False;
534 end;
535
536 function TSynEIScriptSyn.Func9: TtkTokenKind;
537 begin
538   if KeyComp('Add') then Result := tkFunctions else Result := tkIdentifier;
539 end;
540
541 function TSynEIScriptSyn.Func15: TtkTokenKind;
542 begin
543   if KeyComp('if') then Result := tkKey else Result := tkIdentifier;
544 end;
545
546 function TSynEIScriptSyn.Func24: TtkTokenKind;
547 begin
548   if KeyComp('HP') then Result := tkFunctions else Result := tkIdentifier;
549 end;
550
551 function TSynEIScriptSyn.Func26: TtkTokenKind;
552 begin
553   if KeyComp('Lie') then Result := tkFunctions else Result := tkIdentifier;
554 end;
555
556 function TSynEIScriptSyn.Func29: TtkTokenKind;
557 begin
558   if KeyComp('Mana') then Result := tkFunctions else Result := tkIdentifier;
559 end;
560
561 function TSynEIScriptSyn.Func30: TtkTokenKind;
562 begin
563   if KeyComp('Idle') then Result := tkFunctions else Result := tkIdentifier;
564 end;
565
566 function TSynEIScriptSyn.Func35: TtkTokenKind;
567 begin
568   if KeyComp('Div') then Result := tkFunctions else Result := tkIdentifier;
569 end;
570
571 function TSynEIScriptSyn.Func39: TtkTokenKind;
572 begin
573   if KeyComp('For') then Result := tkKey else
574     if KeyComp('AddMob') then Result := tkFunctions else Result := tkIdentifier;
575 end;
576
577 function TSynEIScriptSyn.Func40: TtkTokenKind;
578 begin
579   if KeyComp('Any') then Result := tkFunctions else Result := tkIdentifier;
580 end;
581
582 function TSynEIScriptSyn.Func42: TtkTokenKind;
583 begin
584   if KeyComp('IsDead') then Result := tkFunctions else
585     if KeyComp('UMAg') then Result := tkFunctions else
586       if KeyComp('Sub') then Result := tkFunctions else Result := tkIdentifier;
587 end;
588
589 function TSynEIScriptSyn.Func43: TtkTokenKind;
590 begin
591   if KeyComp('Cast') then Result := tkFunctions else Result := tkIdentifier;
592 end;
593
594 function TSynEIScriptSyn.Func46: TtkTokenKind;
595 begin
596   if KeyComp('Mul') then Result := tkFunctions else Result := tkIdentifier;
597 end;
598
599 function TSynEIScriptSyn.Func47: TtkTokenKind;
600 begin
601   if KeyComp('then') then Result := tkKey else
602     if KeyComp('Walk') then Result := tkFunctions else Result := tkIdentifier;
603 end;
604
605 function TSynEIScriptSyn.Func49: TtkTokenKind;
606 begin
607   if KeyComp('Not') then Result := tkFunctions else Result := tkIdentifier;
608 end;
609
610 function TSynEIScriptSyn.Func51: TtkTokenKind;
611 begin
612   if KeyComp('Guard') then Result := tkFunctions else Result := tkIdentifier;
613 end;
614
615 function TSynEIScriptSyn.Func53: TtkTokenKind;
616 begin
617   if KeyComp('Run') then Result := tkFunctions else
618     if KeyComp('Sum') then Result := tkFunctions else Result := tkIdentifier;
619 end;
620
621 function TSynEIScriptSyn.Func54: TtkTokenKind;
622 begin
623   if KeyComp('float') then Result := tkDateTypes else Result := tkIdentifier;
624 end;
625
626 function TSynEIScriptSyn.Func55: TtkTokenKind;
627 begin
628   if KeyComp('object') then Result := tkDateTypes else Result := tkIdentifier;
629 end;
630
631 function TSynEIScriptSyn.Func56: TtkTokenKind;
632 begin
633   if KeyComp('Attack') then Result := tkFunctions else
634     if KeyComp('GetX') then Result := tkFunctions else Result := tkIdentifier;
635 end;
636
637 function TSynEIScriptSyn.Func57: TtkTokenKind;
638 begin
639   if KeyComp('Crawl') then Result := tkFunctions else
640     if KeyComp('GetY') then Result := tkFunctions else
641       if KeyComp('Sleep') then Result := tkFunctions else Result := tkIdentifier;
642 end;
643
644 function TSynEIScriptSyn.Func58: TtkTokenKind;
645 begin
646   if KeyComp('GetZ') then Result := tkFunctions else Result := tkIdentifier;
647 end;
648
649 function TSynEIScriptSyn.Func59: TtkTokenKind;
650 begin
651   if KeyComp('NULL') then Result := tkKey else Result := tkIdentifier;
652 end;
653
654 function TSynEIScriptSyn.Func62: TtkTokenKind;
655 begin
656   if KeyComp('MaxHP') then Result := tkFunctions else
657     if KeyComp('Rest') then Result := tkFunctions else Result := tkIdentifier;
658 end;
659
660 function TSynEIScriptSyn.Func63: TtkTokenKind;
661 begin
662   if KeyComp('SetCP') then Result := tkFunctions else
663     if KeyComp('GodMode') then Result := tkFunctions else Result := tkIdentifier;
664 end;
665
666 function TSynEIScriptSyn.Func64: TtkTokenKind;
667 begin
668   if KeyComp('UMFear') then Result := tkFunctions else
669     if KeyComp('AddObject') then Result := tkFunctions else Result := tkIdentifier;
670 end;
671
672 function TSynEIScriptSyn.Func65: TtkTokenKind;
673 begin
674   if KeyComp('Random') then Result := tkFunctions else Result := tkIdentifier;
675 end;
676
677 function TSynEIScriptSyn.Func67: TtkTokenKind;
678 begin
679   if KeyComp('MaxMana') then Result := tkFunctions else Result := tkIdentifier;
680 end;
681
682 function TSynEIScriptSyn.Func69: TtkTokenKind;
683 begin
684   if KeyComp('QObjArea') then Result := tkFunctions else Result := tkIdentifier;
685 end;
686
687 function TSynEIScriptSyn.Func71: TtkTokenKind;
688 begin
689   if KeyComp('AddLoot') then Result := tkFunctions else Result := tkIdentifier;
690 end;
691
692 function TSynEIScriptSyn.Func73: TtkTokenKind;
693 begin
694   if KeyComp('UMClear') then Result := tkFunctions else
695     if KeyComp('IsAlarm') then Result := tkFunctions else Result := tkIdentifier;
696 end;
697
698 function TSynEIScriptSyn.Func75: TtkTokenKind;
699 begin
700   if KeyComp('Every') then Result := tkFunctions else Result := tkIdentifier;
701 end;
702
703 function TSynEIScriptSyn.Func76: TtkTokenKind;
704 begin
705   if KeyComp('IsInArea') then Result := tkFunctions else
706     if KeyComp('DeleteArea') then Result := tkFunctions else Result := tkIdentifier;
707 end;
708
709 function TSynEIScriptSyn.Func77: TtkTokenKind;
710 begin
711   if KeyComp('IsAlive') then Result := tkFunctions else
712     if KeyComp('GetLeader') then Result := tkFunctions else
713       if KeyComp('group') then Result := tkDateTypes else Result := tkIdentifier;
714 end;
715
716 function TSynEIScriptSyn.Func78: TtkTokenKind;
717 begin
718   if KeyComp('Standt') then Result := tkFunctions else Result := tkIdentifier;
719 end;
720
721 function TSynEIScriptSyn.Func81: TtkTokenKind;
722 begin
723   if KeyComp('HideObject') then Result := tkFunctions else Result := tkIdentifier;
724 end;
725
726 function TSynEIScriptSyn.Func82: TtkTokenKind;
727 begin
728   if KeyComp('CreateFX') then Result := tkFunctions else
729     if KeyComp('Qfinish') then Result := tkFunctions else Result := tkIdentifier;
730 end;
731
732 function TSynEIScriptSyn.Func83: TtkTokenKind;
733 begin
734   if KeyComp('Follow') then Result := tkFunctions else
735     if KeyComp('HaveItem') then Result := tkFunctions else
736       if KeyComp('IsLess') then Result := tkFunctions else Result := tkIdentifier;
737 end;
738
739 function TSynEIScriptSyn.Func84: TtkTokenKind;
740 begin
741   if KeyComp('PlayFX') then Result := tkFunctions else
742     if KeyComp('IsEqual') then Result := tkFunctions else Result := tkIdentifier;
743 end;
744
745 function TSynEIScriptSyn.Func85: TtkTokenKind;
746 begin
747   if KeyComp('UMGuard') then Result := tkFunctions else
748     if KeyComp('Script') then Result := tkKey else Result := tkIdentifier;
749 end;
750
751 function TSynEIScriptSyn.Func86: TtkTokenKind;
752 begin
753   if KeyComp('GroupAdd') then Result := tkFunctions else
754     if KeyComp('IsNight') then Result := tkFunctions else Result := tkIdentifier;
755 end;
756
757 function TSynEIScriptSyn.Func87: TtkTokenKind;
758 begin
759   if KeyComp('GetObject') then Result := tkFunctions else
760     if KeyComp('string') then Result := tkDateTypes else Result := tkIdentifier;
761 end;
762
763 function TSynEIScriptSyn.Func88: TtkTokenKind;
764 begin
765   if KeyComp('GSDelVar') then Result := tkFunctions else Result := tkIdentifier;
766 end;
767
768 function TSynEIScriptSyn.Func89: TtkTokenKind;
769 begin
770   if KeyComp('QObjUse') then Result := tkFunctions else Result := tkIdentifier;
771 end;
772
773 function TSynEIScriptSyn.Func90: TtkTokenKind;
774 begin
775   if KeyComp('GiveItem') then Result := tkFunctions else
776     if KeyComp('IsEnemy') then Result := tkFunctions else Result := tkIdentifier;
777 end;
778
779 function TSynEIScriptSyn.Func92: TtkTokenKind;
780 begin
781   if KeyComp('AlarmTime') then Result := tkFunctions else Result := tkIdentifier;
782 end;
783
784 function TSynEIScriptSyn.Func93: TtkTokenKind;
785 begin
786   if KeyComp('UnitSee') then Result := tkFunctions else Result := tkIdentifier;
787 end;
788
789 function TSynEIScriptSyn.Func94: TtkTokenKind;
790 begin
791   if KeyComp('SetWind') then Result := tkFunctions else Result := tkIdentifier;
792 end;
793
794 function TSynEIScriptSyn.Func95: TtkTokenKind;
795 begin
796   if KeyComp('QStart') then Result := tkFunctions else
797     if KeyComp('PlayCamera') then Result := tkFunctions else Result := tkIdentifier;
798 end;
799
800 function TSynEIScriptSyn.Func96: TtkTokenKind;
801 begin
802   if KeyComp('GetAIClass') then Result := tkFunctions else Result := tkIdentifier;
803 end;
804
805 function TSynEIScriptSyn.Func99: TtkTokenKind;
806 begin
807   if KeyComp('GSGetVar') then Result := tkFunctions else Result := tkIdentifier;
808 end;
809
810 function TSynEIScriptSyn.Func100: TtkTokenKind;
811 begin
812   if KeyComp('GetObjectID') then Result := tkFunctions else Result := tkIdentifier;
813 end;
814
815 function TSynEIScriptSyn.Func101: TtkTokenKind;
816 begin
817   if KeyComp('Sentry') then Result := tkFunctions else
818     if KeyComp('EnableLever') then Result := tkFunctions else Result := tkIdentifier;
819 end;
820
821 function TSynEIScriptSyn.Func102: TtkTokenKind;
822 begin
823   if KeyComp('IsGreater') then Result := tkFunctions else
824     if KeyComp('SetScience') then Result := tkFunctions else Result := tkIdentifier;
825 end;
826
827 function TSynEIScriptSyn.Func104: TtkTokenKind;
828 begin
829   if KeyComp('InflictDamage') then Result := tkFunctions else
830     if KeyComp('GetMoney') then Result := tkFunctions else Result := tkIdentifier;
831 end;
832
833 function TSynEIScriptSyn.Func105: TtkTokenKind;
834 begin
835   if KeyComp('GroupHas') then Result := tkFunctions else
836     if KeyComp('FixItems') then Result := tkFunctions else Result := tkIdentifier;
837 end;
838
839 function TSynEIScriptSyn.Func106: TtkTokenKind;
840 begin
841   if KeyComp('GroupSee') then Result := tkFunctions else
842     if KeyComp('GiveSkill') then Result := tkFunctions else
843       if KeyComp('PlayerSee') then Result := tkFunctions else
844         if KeyComp('SetEnemy') then Result := tkFunctions else Result := tkIdentifier;
845 end;
846
847 function TSynEIScriptSyn.Func107: TtkTokenKind;
848 begin
849   if KeyComp('BlockUnit') then Result := tkFunctions else Result := tkIdentifier;
850 end;
851
852 function TSynEIScriptSyn.Func108: TtkTokenKind;
853 begin
854   if KeyComp('SendEvent') then Result := tkFunctions else
855     if KeyComp('KillUnit') then Result := tkFunctions else Result := tkIdentifier;
856 end;
857
858 function TSynEIScriptSyn.Func109: TtkTokenKind;
859 begin
860   if KeyComp('GetPlayer') then Result := tkFunctions else
861     if KeyComp('GlobalVars') then Result := tkKey else
862       if KeyComp('SetCPFast') then Result := tkFunctions else Result := tkIdentifier;
863 end;
864
865 function TSynEIScriptSyn.Func110: TtkTokenKind;
866 begin
867   if KeyComp('UMRevenge') then Result := tkFunctions else Result := tkIdentifier;
868 end;
869
870 function TSynEIScriptSyn.Func111: TtkTokenKind;
871 begin
872   if KeyComp('GSSetVar') then Result := tkFunctions else
873     if KeyComp('UMPlayer') then Result := tkFunctions else Result := tkIdentifier;
874 end;
875
876 function TSynEIScriptSyn.Func114: TtkTokenKind;
877 begin
878   if KeyComp('WasLooted') then Result := tkFunctions else
879     if KeyComp('RotateTo') then Result := tkFunctions else
880       if KeyComp('UMGuardEx') then Result := tkFunctions else Result := tkIdentifier;
881 end;
882
883 function TSynEIScriptSyn.Func115: TtkTokenKind;
884 begin
885   if KeyComp('AddRectToArea') then Result := tkFunctions else
886     if KeyComp('GiveMoney') then Result := tkFunctions else
887       if KeyComp('UMStandard') then Result := tkFunctions else Result := tkIdentifier;
888 end;
889
890 function TSynEIScriptSyn.Func116: TtkTokenKind;
891 begin
892   if KeyComp('UMPatrol') then Result := tkFunctions else Result := tkIdentifier;
893 end;
894
895 function TSynEIScriptSyn.Func117: TtkTokenKind;
896 begin
897   if KeyComp('UMFollow') then Result := tkFunctions else Result := tkIdentifier;
898 end;
899
900 function TSynEIScriptSyn.Func118: TtkTokenKind;
901 begin
902   if KeyComp('PlayMovie') then Result := tkFunctions else Result := tkIdentifier;
903 end;
904
905 function TSynEIScriptSyn.Func119: TtkTokenKind;
906 begin
907   if KeyComp('PlayMusic') then Result := tkFunctions else
908     if KeyComp('GetZValue') then Result := tkFunctions else
909       if KeyComp('AlarmPosX') then Result := tkFunctions else
910         if KeyComp('GroupSub') then Result := tkFunctions else Result := tkIdentifier;
911 end;
912
913 function TSynEIScriptSyn.Func120: TtkTokenKind;
914 begin
915   if KeyComp('AlarmPosY') then Result := tkFunctions else Result := tkIdentifier;
916 end;
917
918 function TSynEIScriptSyn.Func121: TtkTokenKind;
919 begin
920   if KeyComp('SetPlayer') then Result := tkFunctions else
921     if KeyComp('CopyLoot') then Result := tkFunctions else
922       if KeyComp('InvokeAlarm') then Result := tkFunctions else Result := tkIdentifier;
923 end;
924
925 function TSynEIScriptSyn.Func123: TtkTokenKind;
926 begin
927   if KeyComp('QObjGetItem') then Result := tkFunctions else Result := tkIdentifier;
928 end;
929
930 function TSynEIScriptSyn.Func125: TtkTokenKind;
931 begin
932   if KeyComp('CopyItems') then Result := tkFunctions else Result := tkIdentifier;
933 end;
934
935 function TSynEIScriptSyn.Func126: TtkTokenKind;
936 begin
937   if KeyComp('ShowBitmap') then Result := tkFunctions else Result := tkIdentifier;
938 end;
939
940 function TSynEIScriptSyn.Func127: TtkTokenKind;
941 begin
942   if KeyComp('GetObjectByID') then Result := tkFunctions else Result := tkIdentifier;
943 end;
944
945 function TSynEIScriptSyn.Func128: TtkTokenKind;
946 begin
947   if KeyComp('QObjSeeObject') then Result := tkFunctions else Result := tkIdentifier;
948 end;
949
950 function TSynEIScriptSyn.Func129: TtkTokenKind;
951 begin
952   if KeyComp('KillScript') then Result := tkFunctions else Result := tkIdentifier;
953 end;
954
955 function TSynEIScriptSyn.Func130: TtkTokenKind;
956 begin
957   if KeyComp('GetDiplomacy') then Result := tkFunctions else Result := tkIdentifier;
958 end;
959
960 function TSynEIScriptSyn.Func132: TtkTokenKind;
961 begin
962   if KeyComp('CreateParty') then Result := tkFunctions else
963     if KeyComp('IsInSquare') then Result := tkFunctions else Result := tkIdentifier;
964 end;
965
966 function TSynEIScriptSyn.Func133: TtkTokenKind;
967 begin
968   if KeyComp('RemoveObject') then Result := tkFunctions else
969     if KeyComp('DeclareScript') then Result := tkKey else
970       if KeyComp('SleepUntil') then Result := tkFunctions else Result := tkIdentifier;
971 end;
972
973 function TSynEIScriptSyn.Func135: TtkTokenKind;
974 begin
975   if KeyComp('UMSentry') then Result := tkFunctions else Result := tkIdentifier;
976 end;
977
978 function TSynEIScriptSyn.Func136: TtkTokenKind;
979 begin
980   if KeyComp('GroupSize') then Result := tkFunctions else
981     if KeyComp('ActivateTrap') then Result := tkFunctions else
982       if KeyComp('WaitSegment') then Result := tkFunctions else Result := tkIdentifier;
983 end;
984
985 function TSynEIScriptSyn.Func137: TtkTokenKind;
986 begin
987   if KeyComp('ConsoleFloat') then Result := tkFunctions else
988     if KeyComp('QObjSeeUnit') then Result := tkFunctions else Result := tkIdentifier;
989 end;
990
991 function TSynEIScriptSyn.Func138: TtkTokenKind;
992 begin
993   if KeyComp('ResetTarget') then Result := tkFunctions else
994     if KeyComp('CopyStats') then Result := tkFunctions else Result := tkIdentifier;
995 end;
996
997 function TSynEIScriptSyn.Func140: TtkTokenKind;
998 begin
999   if KeyComp('LeaveToZone') then Result := tkFunctions else
1000     if KeyComp('GetBSZValue') then Result := tkFunctions else Result := tkIdentifier;
1001 end;
1002
1003 function TSynEIScriptSyn.Func141: TtkTokenKind;
1004 begin
1005   if KeyComp('AddRoundToArea') then Result := tkFunctions else Result := tkIdentifier;
1006 end;
1007
1008 function TSynEIScriptSyn.Func142: TtkTokenKind;
1009 begin
1010   if KeyComp('SetDiplomacy') then Result := tkFunctions else Result := tkIdentifier;
1011 end;
1012
1013 function TSynEIScriptSyn.Func143: TtkTokenKind;
1014 begin
1015   if KeyComp('ShowCredits') then Result := tkFunctions else Result := tkIdentifier;
1016 end;
1017
1018 function TSynEIScriptSyn.Func144: TtkTokenKind;
1019 begin
1020   if KeyComp('IsUnitBlocked') then Result := tkFunctions else Result := tkIdentifier;
1021 end;
1022
1023 function TSynEIScriptSyn.Func145: TtkTokenKind;
1024 begin
1025   if KeyComp('MoveToObject') then Result := tkFunctions else Result := tkIdentifier;
1026 end;
1027
1028 function TSynEIScriptSyn.Func147: TtkTokenKind;
1029 begin
1030   if KeyComp('GetObjectByName') then Result := tkFunctions else
1031     if KeyComp('GetFutureX') then Result := tkFunctions else Result := tkIdentifier;
1032 end;
1033
1034 function TSynEIScriptSyn.Func148: TtkTokenKind;
1035 begin
1036   if KeyComp('GetFutureY') then Result := tkFunctions else
1037     if KeyComp('UMAggression') then Result := tkFunctions else Result := tkIdentifier;
1038 end;
1039
1040 function TSynEIScriptSyn.Func149: TtkTokenKind;
1041 begin
1042   if KeyComp('GSSetVarMax') then Result := tkFunctions else Result := tkIdentifier;
1043 end;
1044
1045 function TSynEIScriptSyn.Func150: TtkTokenKind;
1046 begin
1047   if KeyComp('PlayAnimation') then Result := tkFunctions else Result := tkIdentifier;
1048 end;
1049
1050 function TSynEIScriptSyn.Func151: TtkTokenKind;
1051 begin
1052   if KeyComp('GroupCross') then Result := tkFunctions else
1053     if KeyComp('GetWorldTime') then Result := tkFunctions else
1054       if KeyComp('DeleteLightning') then Result := tkFunctions else Result := tkIdentifier;
1055 end;
1056
1057 function TSynEIScriptSyn.Func152: TtkTokenKind;
1058 begin
1059   if KeyComp('QObjKillUnit') then Result := tkFunctions else
1060     if KeyComp('CreateLightning') then Result := tkFunctions else Result := tkIdentifier;
1061 end;
1062
1063 function TSynEIScriptSyn.Func153: TtkTokenKind;
1064 begin
1065   if KeyComp('IsCameraPlaying') then Result := tkFunctions else Result := tkIdentifier;
1066 end;
1067
1068 function TSynEIScriptSyn.Func154: TtkTokenKind;
1069 begin
1070   if KeyComp('GiveStrength') then Result := tkFunctions else
1071     if KeyComp('SetSunLight') then Result := tkFunctions else Result := tkIdentifier;
1072 end;
1073
1074 function TSynEIScriptSyn.Func155: TtkTokenKind;
1075 begin
1076   if KeyComp('UMPatrolClear') then Result := tkFunctions else Result := tkIdentifier;
1077 end;
1078
1079 function TSynEIScriptSyn.Func156: TtkTokenKind;
1080 begin
1081   if KeyComp('AttachParticles') then Result := tkFunctions else Result := tkIdentifier;
1082 end;
1083
1084 function TSynEIScriptSyn.Func157: TtkTokenKind;
1085 begin
1086   if KeyComp('WorldScript') then Result := tkKey else Result := tkIdentifier;
1087 end;
1088
1089 function TSynEIScriptSyn.Func158: TtkTokenKind;
1090 begin
1091   if KeyComp('RemoveParty') then Result := tkFunctions else
1092     if KeyComp('FixWorldTime') then Result := tkFunctions else
1093       if KeyComp('GiveIntelligence') then Result := tkFunctions else Result := tkIdentifier;
1094 end;
1095
1096 function TSynEIScriptSyn.Func159: TtkTokenKind;
1097 begin
1098   if KeyComp('GetLeverState') then Result := tkFunctions else Result := tkIdentifier;
1099 end;
1100
1101 function TSynEIScriptSyn.Func162: TtkTokenKind;
1102 begin
1103   if KeyComp('DeleteFXSource') then Result := tkFunctions else Result := tkIdentifier;
1104 end;
1105
1106 function TSynEIScriptSyn.Func163: TtkTokenKind;
1107 begin
1108   if KeyComp('CreateFXSource') then Result := tkFunctions else
1109     if KeyComp('GetMercsNumber') then Result := tkFunctions else
1110       if KeyComp('SleepUntilIdle') then Result := tkFunctions else Result := tkIdentifier;
1111 end;
1112
1113 function TSynEIScriptSyn.Func164: TtkTokenKind;
1114 begin
1115   if KeyComp('MoveToPoint') then Result := tkFunctions else Result := tkIdentifier;
1116 end;
1117
1118 function TSynEIScriptSyn.Func165: TtkTokenKind;
1119 begin
1120   if KeyComp('QObjKillGroup') then Result := tkFunctions else Result := tkIdentifier;
1121 end;
1122
1123 function TSynEIScriptSyn.Func167: TtkTokenKind;
1124 begin
1125   if KeyComp('SetWaterLevel') then Result := tkFunctions else Result := tkIdentifier;
1126 end;
1127
1128 function TSynEIScriptSyn.Func168: TtkTokenKind;
1129 begin
1130   if KeyComp('UnitInSquare') then Result := tkFunctions else Result := tkIdentifier;
1131 end;
1132
1133 function TSynEIScriptSyn.Func170: TtkTokenKind;
1134 begin
1135   if KeyComp('RecalcMercBriefings') then Result := tkFunctions else
1136     if KeyComp('IsUnitVisible') then Result := tkFunctions else
1137       if KeyComp('ConsoleString') then Result := tkFunctions else Result := tkIdentifier;
1138 end;
1139
1140 function TSynEIScriptSyn.Func171: TtkTokenKind;
1141 begin
1142   if KeyComp('CastSpellUnit') then Result := tkFunctions else
1143     if KeyComp('IsEqualString') then Result := tkFunctions else
1144       if KeyComp('QuestComplete') then Result := tkFunctions else
1145         if KeyComp('GiveUnitSpell') then Result := tkFunctions else Result := tkIdentifier;
1146 end;
1147
1148 function TSynEIScriptSyn.Func172: TtkTokenKind;
1149 begin
1150   if KeyComp('GiveQuestItem') then Result := tkFunctions else
1151     if KeyComp('RunWorldTime') then Result := tkFunctions else
1152       if KeyComp('WaitEndAnimation') then Result := tkFunctions else Result := tkIdentifier;
1153 end;
1154
1155 function TSynEIScriptSyn.Func173: TtkTokenKind;
1156 begin
1157   if KeyComp('GiveDexterity') then Result := tkFunctions else Result := tkIdentifier;
1158 end;
1159
1160 function TSynEIScriptSyn.Func174: TtkTokenKind;
1161 begin
1162   if KeyComp('StartAnimation') then Result := tkFunctions else Result := tkIdentifier;
1163 end;
1164
1165 function TSynEIScriptSyn.Func175: TtkTokenKind;
1166 begin
1167   if KeyComp('UMSuspection') then Result := tkFunctions else Result := tkIdentifier;
1168 end;
1169
1170 function TSynEIScriptSyn.Func177: TtkTokenKind;
1171 begin
1172   if KeyComp('EraseQuestItem') then Result := tkFunctions else
1173     if KeyComp('IsPlayerInDanger') then Result := tkFunctions else Result := tkIdentifier;
1174 end;
1175
1176 function TSynEIScriptSyn.Func180: TtkTokenKind;
1177 begin
1178   if KeyComp('RedeployParty') then Result := tkFunctions else Result := tkIdentifier;
1179 end;
1180
1181 function TSynEIScriptSyn.Func181: TtkTokenKind;
1182 begin
1183   if KeyComp('CastSpellPoint') then Result := tkFunctions else
1184     if KeyComp('DeletePointLight') then Result := tkFunctions else Result := tkIdentifier;
1185 end;
1186
1187 function TSynEIScriptSyn.Func182: TtkTokenKind;
1188 begin
1189   if KeyComp('CreatePointLight') then Result := tkFunctions else
1190     if KeyComp('IsUnitInWater') then Result := tkFunctions else Result := tkIdentifier;
1191 end;
1192
1193 function TSynEIScriptSyn.Func185: TtkTokenKind;
1194 begin
1195   if KeyComp('MovePointLight') then Result := tkFunctions else Result := tkIdentifier;
1196 end;
1197
1198 function TSynEIScriptSyn.Func188: TtkTokenKind;
1199 begin
1200   if KeyComp('AddUnitToParty') then Result := tkFunctions else
1201     if KeyComp('UMCorpseWatcher') then Result := tkFunctions else Result := tkIdentifier;
1202 end;
1203
1204 function TSynEIScriptSyn.Func189: TtkTokenKind;
1205 begin
1206   if KeyComp('SetBackgroudColor') then Result := tkFunctions else Result := tkIdentifier;
1207 end;
1208
1209 function TSynEIScriptSyn.Func192: TtkTokenKind;
1210 begin
1211   if KeyComp('GetPlayerUnits') then Result := tkFunctions else Result := tkIdentifier;
1212 end;
1213
1214 function TSynEIScriptSyn.Func194: TtkTokenKind;
1215 begin
1216   if KeyComp('GetUnitOfPlayer') then Result := tkFunctions else Result := tkIdentifier;
1217 end;
1218
1219 function TSynEIScriptSyn.Func195: TtkTokenKind;
1220 begin
1221   if KeyComp('AddUnitToServer') then Result := tkFunctions else
1222     if KeyComp('SendStringEvent') then Result := tkFunctions else Result := tkIdentifier;
1223 end;
1224
1225 function TSynEIScriptSyn.Func199: TtkTokenKind;
1226 begin
1227   if KeyComp('UMPatrolAddPoint') then Result := tkFunctions else Result := tkIdentifier;
1228 end;
1229
1230 function TSynEIScriptSyn.Func202: TtkTokenKind;
1231 begin
1232   if KeyComp('SetCameraPosition') then Result := tkFunctions else Result := tkIdentifier;
1233 end;
1234
1235 function TSynEIScriptSyn.Func203: TtkTokenKind;
1236 begin
1237   if KeyComp('DistanceUnitUnit') then Result := tkFunctions else Result := tkIdentifier;
1238 end;
1239
1240 function TSynEIScriptSyn.Func204: TtkTokenKind;
1241 begin
1242   if KeyComp('IsPlayerInSafety') then Result := tkFunctions else Result := tkIdentifier;
1243 end;
1244
1245 function TSynEIScriptSyn.Func207: TtkTokenKind;
1246 begin
1247   if KeyComp('RemoveQuestItem') then Result := tkFunctions else Result := tkIdentifier;
1248 end;
1249
1250 function TSynEIScriptSyn.Func209: TtkTokenKind;
1251 begin
1252   if KeyComp('SwitchLeverState') then Result := tkFunctions else Result := tkIdentifier;
1253 end;
1254
1255 function TSynEIScriptSyn.Func213: TtkTokenKind;
1256 begin
1257   if KeyComp('DistanceUnitPoint') then Result := tkFunctions else Result := tkIdentifier;
1258 end;
1259
1260 function TSynEIScriptSyn.Func216: TtkTokenKind;
1261 begin
1262   if KeyComp('DeleteParticleSource') then Result := tkFunctions else Result := tkIdentifier;
1263 end;
1264
1265 function TSynEIScriptSyn.Func217: TtkTokenKind;
1266 begin
1267   if KeyComp('CreateParticleSource') then Result := tkFunctions else Result := tkIdentifier;
1268 end;
1269
1270 function TSynEIScriptSyn.Func218: TtkTokenKind;
1271 begin
1272   if KeyComp('AttachParticleSource') then Result := tkFunctions else Result := tkIdentifier;
1273 end;
1274
1275 function TSynEIScriptSyn.Func220: TtkTokenKind;
1276 begin
1277   if KeyComp('MoveParticleSource') then Result := tkFunctions else Result := tkIdentifier;
1278 end;
1279
1280 function TSynEIScriptSyn.Func222: TtkTokenKind;
1281 begin
1282   if KeyComp('SetSpellAggression') then Result := tkFunctions else Result := tkIdentifier;
1283 end;
1284
1285 function TSynEIScriptSyn.Func223: TtkTokenKind;
1286 begin
1287   if KeyComp('SetCurrentParty') then Result := tkFunctions else Result := tkIdentifier;
1288 end;
1289
1290 function TSynEIScriptSyn.Func225: TtkTokenKind;
1291 begin
1292   if KeyComp('SetCameraOrientation') then Result := tkFunctions else Result := tkIdentifier;