home *** CD-ROM | disk | FTP | other *** search
Unknown | 2000-03-30 | 9.8 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 00 00 00 00 00 00 00 | 77 9b 01 2f 2f 3d 3d 3d |........|w..//===|
|00000010| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000020| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000030| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000040| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000050| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0a 2f 2f 20 57 |========|==..// W|
|00000060| 69 6e 64 6f 77 43 6f 6e | 73 6f 6c 65 20 2d 20 63 |indowCon|sole - c|
|00000070| 6f 6e 73 6f 6c 65 20 72 | 65 70 6c 61 63 65 72 20 |onsole r|eplacer |
|00000080| 74 6f 20 69 6d 70 6c 65 | 6d 65 6e 74 20 55 57 69 |to imple|ment UWi|
|00000090| 6e 64 6f 77 20 55 49 20 | 53 79 73 74 65 6d 0d 0a |ndow UI |System..|
|000000a0| 2f 2f 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |//======|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|000000f0| 0a 63 6c 61 73 73 20 57 | 69 6e 64 6f 77 43 6f 6e |.class W|indowCon|
|00000100| 73 6f 6c 65 20 65 78 74 | 65 6e 64 73 20 43 6f 6e |sole ext|ends Con|
|00000110| 73 6f 6c 65 3b 0d 0a 0d | 0a 76 61 72 20 55 57 69 |sole;...|.var UWi|
|00000120| 6e 64 6f 77 52 6f 6f 74 | 57 69 6e 64 6f 77 09 52 |ndowRoot|Window.R|
|00000130| 6f 6f 74 3b 0d 0a 76 61 | 72 28 29 20 63 6f 6e 66 |oot;..va|r() conf|
|00000140| 69 67 20 73 74 72 69 6e | 67 09 09 52 6f 6f 74 57 |ig strin|g..RootW|
|00000150| 69 6e 64 6f 77 3b 0d 0a | 0d 0a 76 61 72 20 66 6c |indow;..|..var fl|
|00000160| 6f 61 74 09 09 09 09 4f | 6c 64 43 6c 69 70 58 3b |oat....O|ldClipX;|
|00000170| 0d 0a 76 61 72 20 66 6c | 6f 61 74 09 09 09 09 4f |..var fl|oat....O|
|00000180| 6c 64 43 6c 69 70 59 3b | 0d 0a 76 61 72 20 62 6f |ldClipY;|..var bo|
|00000190| 6f 6c 09 09 09 09 62 43 | 72 65 61 74 65 64 52 6f |ol....bC|reatedRo|
|000001a0| 6f 74 3b 0d 0a 76 61 72 | 20 66 6c 6f 61 74 09 09 |ot;..var| float..|
|000001b0| 09 09 4d 6f 75 73 65 58 | 3b 0d 0a 76 61 72 20 66 |..MouseX|;..var f|
|000001c0| 6c 6f 61 74 09 09 09 09 | 4d 6f 75 73 65 59 3b 0d |loat....|MouseY;.|
|000001d0| 0a 0d 0a 76 61 72 20 63 | 6c 61 73 73 3c 55 57 69 |...var c|lass<UWi|
|000001e0| 6e 64 6f 77 43 6f 6e 73 | 6f 6c 65 57 69 6e 64 6f |ndowCons|oleWindo|
|000001f0| 77 3e 20 43 6f 6e 73 6f | 6c 65 43 6c 61 73 73 3b |w> Conso|leClass;|
|00000200| 0d 0a 76 61 72 20 63 6f | 6e 66 69 67 20 66 6c 6f |..var co|nfig flo|
|00000210| 61 74 09 09 4d 6f 75 73 | 65 53 63 61 6c 65 3b 0d |at..Mous|eScale;.|
|00000220| 0a 76 61 72 20 63 6f 6e | 66 69 67 20 62 6f 6f 6c |.var con|fig bool|
|00000230| 09 09 09 53 68 6f 77 44 | 65 73 6b 74 6f 70 3b 0d |...ShowD|esktop;.|
|00000240| 0a 76 61 72 20 63 6f 6e | 66 69 67 20 62 6f 6f 6c |.var con|fig bool|
|00000250| 09 09 09 62 53 68 6f 77 | 43 6f 6e 73 6f 6c 65 3b |...bShow|Console;|
|00000260| 0d 0a 76 61 72 20 62 6f | 6f 6c 09 09 09 09 62 42 |..var bo|ol....bB|
|00000270| 6c 61 63 6b 6f 75 74 3b | 0d 0a 76 61 72 20 62 6f |lackout;|..var bo|
|00000280| 6f 6c 09 09 09 09 62 55 | 57 69 6e 64 6f 77 54 79 |ol....bU|WindowTy|
|00000290| 70 65 3b 0d 0a 0d 0a 76 | 61 72 20 62 6f 6f 6c 09 |pe;....v|ar bool.|
|000002a0| 09 09 09 62 55 57 69 6e | 64 6f 77 41 63 74 69 76 |...bUWin|dowActiv|
|000002b0| 65 3b 0d 0a 76 61 72 20 | 62 6f 6f 6c 09 09 09 09 |e;..var |bool....|
|000002c0| 62 51 75 69 63 6b 4b 65 | 79 45 6e 61 62 6c 65 3b |bQuickKe|yEnable;|
|000002d0| 0d 0a 76 61 72 20 62 6f | 6f 6c 09 09 09 09 62 4c |..var bo|ol....bL|
|000002e0| 6f 63 6b 65 64 3b 0d 0a | 76 61 72 20 62 6f 6f 6c |ocked;..|var bool|
|000002f0| 09 09 09 09 62 4c 65 76 | 65 6c 43 68 61 6e 67 65 |....bLev|elChange|
|00000300| 3b 0d 0a 76 61 72 20 73 | 74 72 69 6e 67 09 09 09 |;..var s|tring...|
|00000310| 09 4f 6c 64 4c 65 76 65 | 6c 3b 0d 0a 76 61 72 20 |.OldLeve|l;..var |
|00000320| 67 6c 6f 62 61 6c 63 6f | 6e 66 69 67 20 62 79 74 |globalco|nfig byt|
|00000330| 65 09 43 6f 6e 73 6f 6c | 65 4b 65 79 3b 0d 0a 0d |e.Consol|eKey;...|
|00000340| 0a 76 61 72 20 63 6f 6e | 66 69 67 20 45 49 6e 70 |.var con|fig EInp|
|00000350| 75 74 4b 65 79 09 55 57 | 69 6e 64 6f 77 4b 65 79 |utKey.UW|indowKey|
|00000360| 3b 0d 0a 0d 0a 76 61 72 | 20 55 57 69 6e 64 6f 77 |;....var| UWindow|
|00000370| 43 6f 6e 73 6f 6c 65 57 | 69 6e 64 6f 77 20 43 6f |ConsoleW|indow Co|
|00000380| 6e 73 6f 6c 65 57 69 6e | 64 6f 77 3b 0d 0a 0d 0a |nsoleWin|dow;....|
|00000390| 66 75 6e 63 74 69 6f 6e | 20 52 65 73 65 74 55 57 |function| ResetUW|
|000003a0| 69 6e 64 6f 77 28 29 0d | 0a 7b 0d 0a 09 69 66 28 |indow().|.{...if(|
|000003b0| 52 6f 6f 74 20 21 3d 20 | 4e 6f 6e 65 29 0d 0a 09 |Root != |None)...|
|000003c0| 09 52 6f 6f 74 2e 43 6c | 6f 73 65 28 29 3b 0d 0a |.Root.Cl|ose();..|
|000003d0| 09 52 6f 6f 74 20 3d 20 | 4e 6f 6e 65 3b 0d 0a 09 |.Root = |None;...|
|000003e0| 62 43 72 65 61 74 65 64 | 52 6f 6f 74 20 3d 20 46 |bCreated|Root = F|
|000003f0| 61 6c 73 65 3b 0d 0a 09 | 43 6f 6e 73 6f 6c 65 57 |alse;...|ConsoleW|
|00000400| 69 6e 64 6f 77 20 3d 20 | 4e 6f 6e 65 3b 0d 0a 09 |indow = |None;...|
|00000410| 62 53 68 6f 77 43 6f 6e | 73 6f 6c 65 20 3d 20 46 |bShowCon|sole = F|
|00000420| 61 6c 73 65 3b 0d 0a 09 | 43 6c 6f 73 65 55 57 69 |alse;...|CloseUWi|
|00000430| 6e 64 6f 77 28 29 3b 0d | 0a 7d 0d 0a 0d 0a 65 76 |ndow();.|.}....ev|
|00000440| 65 6e 74 20 62 6f 6f 6c | 20 4b 65 79 45 76 65 6e |ent bool| KeyEven|
|00000450| 74 28 20 45 49 6e 70 75 | 74 4b 65 79 20 4b 65 79 |t( EInpu|tKey Key|
|00000460| 2c 20 45 49 6e 70 75 74 | 41 63 74 69 6f 6e 20 41 |, EInput|Action A|
|00000470| 63 74 69 6f 6e 2c 20 46 | 4c 4f 41 54 20 44 65 6c |ction, F|LOAT Del|
|00000480| 74 61 20 29 0d 0a 7b 0d | 0a 09 6c 6f 63 61 6c 20 |ta )..{.|..local |
|00000490| 62 79 74 65 20 6b 3b 0d | 0a 09 6b 20 3d 20 4b 65 |byte k;.|..k = Ke|
|000004a0| 79 3b 0d 0a 09 73 77 69 | 74 63 68 28 41 63 74 69 |y;...swi|tch(Acti|
|000004b0| 6f 6e 29 0d 0a 09 7b 0d | 0a 09 63 61 73 65 20 49 |on)...{.|..case I|
|000004c0| 53 54 5f 50 72 65 73 73 | 3a 0d 0a 09 09 73 77 69 |ST_Press|:....swi|
|000004d0| 74 63 68 28 6b 29 0d 0a | 09 09 7b 0d 0a 09 09 63 |tch(k)..|..{....c|
|000004e0| 61 73 65 20 45 49 6e 70 | 75 74 4b 65 79 2e 49 4b |ase EInp|utKey.IK|
|000004f0| 5f 45 73 63 61 70 65 3a | 0d 0a 09 09 09 69 66 20 |_Escape:|.....if |
|00000500| 28 62 4c 6f 63 6b 65 64 | 29 0d 0a 09 09 09 09 72 |(bLocked|)......r|
|00000510| 65 74 75 72 6e 20 74 72 | 75 65 3b 0d 0a 0d 0a 09 |eturn tr|ue;.....|
|00000520| 09 09 62 51 75 69 63 6b | 4b 65 79 45 6e 61 62 6c |..bQuick|KeyEnabl|
|00000530| 65 20 3d 20 46 61 6c 73 | 65 3b 0d 0a 09 09 09 4c |e = Fals|e;.....L|
|00000540| 61 75 6e 63 68 55 57 69 | 6e 64 6f 77 28 29 3b 0d |aunchUWi|ndow();.|
|00000550| 0a 09 09 09 72 65 74 75 | 72 6e 20 74 72 75 65 3b |....retu|rn true;|
|00000560| 0d 0a 09 09 63 61 73 65 | 20 43 6f 6e 73 6f 6c 65 |....case| Console|
|00000570| 4b 65 79 3a 0d 0a 09 09 | 09 69 66 20 28 62 4c 6f |Key:....|.if (bLo|
|00000580| 63 6b 65 64 29 0d 0a 09 | 09 09 09 72 65 74 75 72 |cked)...|...retur|
|00000590| 6e 20 74 72 75 65 3b 0d | 0a 0d 0a 09 09 09 62 51 |n true;.|......bQ|
|000005a0| 75 69 63 6b 4b 65 79 45 | 6e 61 62 6c 65 20 3d 20 |uickKeyE|nable = |
|000005b0| 54 72 75 65 3b 0d 0a 09 | 09 09 4c 61 75 6e 63 68 |True;...|..Launch|
|000005c0| 55 57 69 6e 64 6f 77 28 | 29 3b 0d 0a 09 09 09 69 |UWindow(|);.....i|
|000005d0| 66 28 21 62 53 68 6f 77 | 43 6f 6e 73 6f 6c 65 29 |f(!bShow|Console)|
|000005e0| 0d 0a 09 09 09 09 53 68 | 6f 77 43 6f 6e 73 6f 6c |......Sh|owConsol|
|000005f0| 65 28 29 3b 0d 0a 09 09 | 09 72 65 74 75 72 6e 20 |e();....|.return |
|00000600| 74 72 75 65 3b 0d 0a 09 | 09 7d 0d 0a 09 09 62 72 |true;...|.}....br|
|00000610| 65 61 6b 3b 0d 0a 09 7d | 0d 0a 0d 0a 09 72 65 74 |eak;...}|.....ret|
|00000620| 75 72 6e 20 46 61 6c 73 | 65 3b 20 0d 0a 09 2f 2f |urn Fals|e; ...//|
|00000630| 21 21 20 62 65 63 61 75 | 73 65 20 6f 66 20 43 6f |!! becau|se of Co|
|00000640| 6e 73 6f 6c 65 4b 65 79 | 0d 0a 09 2f 2f 21 21 20 |nsoleKey|...//!! |
|00000650| 72 65 74 75 72 6e 20 53 | 75 70 65 72 2e 4b 65 79 |return S|uper.Key|
|00000660| 45 76 65 6e 74 28 4b 65 | 79 2c 20 41 63 74 69 6f |Event(Ke|y, Actio|
|00000670| 6e 2c 20 44 65 6c 74 61 | 29 3b 0d 0a 7d 0d 0a 0d |n, Delta|);..}...|
|00000680| 0a 66 75 6e 63 74 69 6f | 6e 20 53 68 6f 77 43 6f |.functio|n ShowCo|
|00000690| 6e 73 6f 6c 65 28 29 0d | 0a 7b 0d 0a 09 62 53 68 |nsole().|.{...bSh|
|000006a0| 6f 77 43 6f 6e 73 6f 6c | 65 20 3d 20 74 72 75 65 |owConsol|e = true|
|000006b0| 3b 0d 0a 09 69 66 28 62 | 43 72 65 61 74 65 64 52 |;...if(b|CreatedR|
|000006c0| 6f 6f 74 29 0d 0a 09 09 | 43 6f 6e 73 6f 6c 65 57 |oot)....|ConsoleW|
|000006d0| 69 6e 64 6f 77 2e 53 68 | 6f 77 57 69 6e 64 6f 77 |indow.Sh|owWindow|
|000006e0| 28 29 3b 0d 0a 7d 0d 0a | 0d 0a 66 75 6e 63 74 69 |();..}..|..functi|
|000006f0| 6f 6e 20 48 69 64 65 43 | 6f 6e 73 6f 6c 65 28 29 |on HideC|onsole()|
|00000700| 0d 0a 7b 0d 0a 09 43 6f | 6e 73 6f 6c 65 4c 69 6e |..{...Co|nsoleLin|
|00000710| 65 73 20 3d 20 30 3b 0d | 0a 09 62 53 68 6f 77 43 |es = 0;.|..bShowC|
|00000720| 6f 6e 73 6f 6c 65 20 3d | 20 66 61 6c 73 65 3b 0d |onsole =| false;.|
|00000730| 0a 09 69 66 20 28 43 6f | 6e 73 6f 6c 65 57 69 6e |..if (Co|nsoleWin|
|00000740| 64 6f 77 20 21 3d 20 4e | 6f 6e 65 29 0d 0a 09 09 |dow != N|one)....|
|00000750| 43 6f 6e 73 6f 6c 65 57 | 69 6e 64 6f 77 2e 48 69 |ConsoleW|indow.Hi|
|00000760| 64 65 57 69 6e 64 6f 77 | 28 29 3b 0d 0a 7d 0d 0a |deWindow|();..}..|
|00000770| 0d 0a 65 76 65 6e 74 20 | 54 69 63 6b 28 20 66 6c |..event |Tick( fl|
|00000780| 6f 61 74 20 44 65 6c 74 | 61 20 29 0d 0a 7b 0d 0a |oat Delt|a )..{..|
|00000790| 09 53 75 70 65 72 2e 54 | 69 63 6b 28 44 65 6c 74 |.Super.T|ick(Delt|
|000007a0| 61 29 3b 0d 0a 0d 0a 09 | 69 66 28 62 4c 65 76 65 |a);.....|if(bLeve|
|000007b0| 6c 43 68 61 6e 67 65 20 | 26 26 20 52 6f 6f 74 20 |lChange |&& Root |
|000007c0| 21 3d 20 4e 6f 6e 65 20 | 26 26 20 73 74 72 69 6e |!= None |&& strin|
|000007d0| 67 28 56 69 65 77 70 6f | 72 74 2e 41 63 74 6f 72 |g(Viewpo|rt.Actor|
|000007e0| 2e 4c 65 76 65 6c 29 20 | 21 3d 20 4f 6c 64 4c 65 |.Level) |!= OldLe|
|000007f0| 76 65 6c 29 0d 0a 09 7b | 0d 0a 09 09 4f 6c 64 4c |vel)...{|....OldL|
|00000800| 65 76 65 6c 20 3d 20 73 | 74 72 69 6e 67 28 56 69 |evel = s|tring(Vi|
|00000810| 65 77 70 6f 72 74 2e 41 | 63 74 6f 72 2e 4c 65 76 |ewport.A|ctor.Lev|
|00000820| 65 6c 29 3b 0d 0a 09 09 | 2f 2f 20 69 66 20 74 68 |el);....|// if th|
|00000830| 69 73 20 69 73 20 45 6e | 74 72 79 2c 20 77 65 20 |is is En|try, we |
|00000840| 63 6f 75 6c 64 20 62 65 | 20 66 61 6c 6c 69 6e 67 |could be| falling|
|00000850| 20 74 68 72 6f 75 67 68 | 20 74 6f 20 61 6e 6f 74 | through| to anot|
|00000860| 68 65 72 20 6c 65 76 65 | 6c 2e 2e 2e 0d 0a 09 09 |her leve|l.......|
|00000870| 69 66 28 56 69 65 77 70 | 6f 72 74 2e 41 63 74 6f |if(Viewp|ort.Acto|
|00000880| 72 2e 4c 65 76 65 6c 20 | 21 3d 20 56 69 65 77 70 |r.Level |!= Viewp|
|00000890| 6f 72 74 2e 41 63 74 6f | 72 2e 47 65 74 45 6e 74 |ort.Acto|r.GetEnt|
|000008a0| 72 79 4c 65 76 65 6c 28 | 29 29 0d 0a 09 09 09 62 |ryLevel(|)).....b|
|000008b0| 4c 65 76 65 6c 43 68 61 | 6e 67 65 20 3d 20 46 61 |LevelCha|nge = Fa|
|000008c0| 6c 73 65 3b 0d 0a 09 09 | 52 6f 6f 74 2e 4e 6f 74 |lse;....|Root.Not|
|000008d0| 69 66 79 41 66 74 65 72 | 4c 65 76 65 6c 43 68 61 |ifyAfter|LevelCha|
|000008e0| 6e 67 65 28 29 3b 0d 0a | 09 7d 0d 0a 7d 0d 0a 0d |nge();..|.}..}...|
|000008f0| 0a 73 74 61 74 65 20 55 | 57 69 6e 64 6f 77 0d 0a |.state U|Window..|
|00000900| 7b 0d 0a 09 65 76 65 6e | 74 20 54 69 63 6b 28 20 |{...even|t Tick( |
|00000910| 66 6c 6f 61 74 20 44 65 | 6c 74 61 20 29 0d 0a 09 |float De|lta )...|
|00000920| 7b 0d 0a 09 09 47 6c 6f | 62 61 6c 2e 54 69 63 6b |{....Glo|bal.Tick|
|00000930| 28 44 65 6c 74 61 29 3b | 0d 0a 09 09 69 66 28 52 |(Delta);|....if(R|
|00000940| 6f 6f 74 20 21 3d 20 4e | 6f 6e 65 29 0d 0a 09 09 |oot != N|one)....|
|00000950| 09 52 6f 6f 74 2e 44 6f | 54 69 63 6b 28 44 65 6c |.Root.Do|Tick(Del|
|00000960| 74 61 29 3b 0d 0a 09 7d | 0d 0a 0d 0a 09 65 76 65 |ta);...}|.....eve|
|00000970| 6e 74 20 50 6f 73 74 52 | 65 6e 64 65 72 28 20 63 |nt PostR|ender( c|
|00000980| 61 6e 76 61 73 20 43 61 | 6e 76 61 73 20 29 0d 0a |anvas Ca|nvas )..|
|00000990| 09 7b 0d 0a 09 09 69 66 | 28 20 62 54 69 6d 65 44 |.{....if|( bTimeD|
|000009a0| 65 6d 6f 20 29 0d 0a 09 | 09 7b 09 0d 0a 09 09 09 |emo )...|.{......|
|000009b0| 54 69 6d 65 44 65 6d 6f | 43 61 6c 63 28 29 3b 0d |TimeDemo|Calc();.|
|000009c0| 0a 09 09 09 54 69 6d 65 | 44 65 6d 6f 52 65 6e 64 |....Time|DemoRend|
|000009d0| 65 72 28 20 43 61 6e 76 | 61 73 20 29 3b 0d 0a 09 |er( Canv|as );...|
|000009e0| 09 7d 0d 0a 0d 0a 09 09 | 69 66 28 52 6f 6f 74 20 |.}......|if(Root |
|000009f0| 21 3d 20 4e 6f 6e 65 29 | 0d 0a 09 09 09 52 6f 6f |!= None)|.....Roo|
|00000a00| 74 2e 62 55 57 69 6e 64 | 6f 77 41 63 74 69 76 65 |t.bUWind|owActive|
|00000a10| 20 3d 20 54 72 75 65 3b | 0d 0a 09 09 52 65 6e 64 | = True;|....Rend|
|00000a20| 65 72 55 57 69 6e 64 6f | 77 28 20 43 61 6e 76 61 |erUWindo|w( Canva|
|00000a30| 73 20 29 3b 0d 0a 09 7d | 0d 0a 0d 0a 09 65 76 65 |s );...}|.....eve|
|00000a40| 6e 74 20 62 6f 6f 6c 20 | 4b 65 79 54 79 70 65 28 |nt bool |KeyType(|
|00000a50| 20 45 49 6e 70 75 74 4b | 65 79 20 4b 65 79 20 29 | EInputK|ey Key )|
|00000a60| 0d 0a 09 7b 0d 0a 09 09 | 69 66 20 28 52 6f 6f 74 |...{....|if (Root|
|00000a70| 20 21 3d 20 4e 6f 6e 65 | 29 0d 0a 09 09 09 52 6f | != None|).....Ro|
|00000a80| 6f 74 2e 57 69 6e 64 6f | 77 45 76 65 6e 74 28 57 |ot.Windo|wEvent(W|
|00000a90| 4d 5f 4b 65 79 54 79 70 | 65 2c 20 4e 6f 6e 65 2c |M_KeyTyp|e, None,|
|00000aa0| 20 4d 6f 75 73 65 58 2c | 20 4d 6f 75 73 65 59 2c | MouseX,| MouseY,|
|00000ab0| 20 4b 65 79 29 3b 0d 0a | 09 09 72 65 74 75 72 6e | Key);..|..return|
|00000ac0| 20 54 72 75 65 3b 0d 0a | 09 7d 0d 0a 0d 0a 09 65 | True;..|.}.....e|
|00000ad0| 76 65 6e 74 20 62 6f 6f | 6c 20 4b 65 79 45 76 65 |vent boo|l KeyEve|
|00000ae0| 6e 74 28 20 45 49 6e 70 | 75 74 4b 65 79 20 4b 65 |nt( EInp|utKey Ke|
|00000af0| 79 2c 20 45 49 6e 70 75 | 74 41 63 74 69 6f 6e 20 |y, EInpu|tAction |
|00000b00| 41 63 74 69 6f 6e 2c 20 | 46 4c 4f 41 54 20 44 65 |Action, |FLOAT De|
|00000b10| 6c 74 61 20 29 0d 0a 09 | 7b 0d 0a 09 09 6c 6f 63 |lta )...|{....loc|
|00000b20| 61 6c 20 62 79 74 65 20 | 6b 3b 0d 0a 09 09 6b 20 |al byte |k;....k |
|00000b30| 3d 20 4b 65 79 3b 0d 0a | 0d 0a 09 09 73 77 69 74 |= Key;..|....swit|
|00000b40| 63 68 20 28 41 63 74 69 | 6f 6e 29 0d 0a 09 09 7b |ch (Acti|on)....{|
|00000b50| 0d 0a 09 09 63 61 73 65 | 20 49 53 54 5f 52 65 6c |....case| IST_Rel|
|00000b60| 65 61 73 65 3a 0d 0a 09 | 09 09 73 77 69 74 63 68 |ease:...|..switch|
|00000b70| 20 28 6b 29 0d 0a 09 09 | 09 7b 0d 0a 09 09 09 63 | (k)....|.{.....c|
|00000b80| 61 73 65 20 45 49 6e 70 | 75 74 4b 65 79 2e 49 4b |ase EInp|utKey.IK|
|00000b90| 5f 4c 65 66 74 4d 6f 75 | 73 65 3a 0d 0a 09 09 09 |_LeftMou|se:.....|
|00000ba0| 09 69 66 28 52 6f 6f 74 | 20 21 3d 20 4e 6f 6e 65 |.if(Root| != None|
|00000bb0| 29 20 0d 0a 09 09 09 09 | 09 52 6f 6f 74 2e 57 69 |) ......|.Root.Wi|
|00000bc0| 6e 64 6f 77 45 76 65 6e | 74 28 57 4d 5f 4c 4d 6f |ndowEven|t(WM_LMo|
|00000bd0| 75 73 65 55 70 2c 20 4e | 6f 6e 65 2c 20 4d 6f 75 |useUp, N|one, Mou|
|00000be0| 73 65 58 2c 20 4d 6f 75 | 73 65 59 2c 20 6b 29 3b |seX, Mou|seY, k);|
|00000bf0| 0d 0a 09 09 09 09 62 72 | 65 61 6b 3b 0d 0a 09 09 |......br|eak;....|
|00000c00| 09 63 61 73 65 20 45 49 | 6e 70 75 74 4b 65 79 2e |.case EI|nputKey.|
|00000c10| 49 4b 5f 52 69 67 68 74 | 4d 6f 75 73 65 3a 0d 0a |IK_Right|Mouse:..|
|00000c20| 09 09 09 09 69 66 28 52 | 6f 6f 74 20 21 3d 20 4e |....if(R|oot != N|
|00000c30| 6f 6e 65 29 0d 0a 09 09 | 09 09 09 52 6f 6f 74 2e |one)....|...Root.|
|00000c40| 57 69 6e 64 6f 77 45 76 | 65 6e 74 28 57 4d 5f 52 |WindowEv|ent(WM_R|
|00000c50| 4d 6f 75 73 65 55 70 2c | 20 4e 6f 6e 65 2c 20 4d |MouseUp,| None, M|
|00000c60| 6f 75 73 65 58 2c 20 4d | 6f 75 73 65 59 2c 20 6b |ouseX, M|ouseY, k|
|00000c70| 29 3b 0d 0a 09 09 09 09 | 62 72 65 61 6b 3b 0d 0a |);......|break;..|
|00000c80| 09 09 09 63 61 73 65 20 | 45 49 6e 70 75 74 4b 65 |...case |EInputKe|
|00000c90| 79 2e 49 4b 5f 4d 69 64 | 64 6c 65 4d 6f 75 73 65 |y.IK_Mid|dleMouse|
|00000ca0| 3a 0d 0a 09 09 09 09 69 | 66 28 52 6f 6f 74 20 21 |:......i|f(Root !|
|00000cb0| 3d 20 4e 6f 6e 65 29 0d | 0a 09 09 09 09 09 52 6f |= None).|......Ro|
|00000cc0| 6f 74 2e 57 69 6e 64 6f | 77 45 76 65 6e 74 28 57 |ot.Windo|wEvent(W|
|00000cd0| 4d 5f 4d 4d 6f 75 73 65 | 55 70 2c 20 4e 6f 6e 65 |M_MMouse|Up, None|
|00000ce0| 2c 20 4d 6f 75 73 65 58 | 2c 20 4d 6f 75 73 65 59 |, MouseX|, MouseY|
|00000cf0| 2c 20 6b 29 3b 0d 0a 09 | 09 09 09 62 72 65 61 6b |, k);...|...break|
|00000d00| 3b 0d 0a 09 09 09 64 65 | 66 61 75 6c 74 3a 0d 0a |;.....de|fault:..|
|00000d10| 09 09 09 09 69 66 28 52 | 6f 6f 74 20 21 3d 20 4e |....if(R|oot != N|
|00000d20| 6f 6e 65 29 0d 0a 09 09 | 09 09 09 52 6f 6f 74 2e |one)....|...Root.|
|00000d30| 57 69 6e 64 6f 77 45 76 | 65 6e 74 28 57 4d 5f 4b |WindowEv|ent(WM_K|
|00000d40| 65 79 55 70 2c 20 4e 6f | 6e 65 2c 20 4d 6f 75 73 |eyUp, No|ne, Mous|
|00000d50| 65 58 2c 20 4d 6f 75 73 | 65 59 2c 20 6b 29 3b 0d |eX, Mous|eY, k);.|
|00000d60| 0a 09 09 09 09 62 72 65 | 61 6b 3b 0d 0a 09 09 09 |.....bre|ak;.....|
|00000d70| 7d 0d 0a 09 09 09 62 72 | 65 61 6b 3b 0d 0a 0d 0a |}.....br|eak;....|
|00000d80| 09 09 63 61 73 65 20 49 | 53 54 5f 50 72 65 73 73 |..case I|ST_Press|
|00000d90| 3a 0d 0a 09 09 09 73 77 | 69 74 63 68 20 28 6b 29 |:.....sw|itch (k)|
|00000da0| 0d 0a 09 09 09 7b 0d 0a | 09 09 09 63 61 73 65 20 |.....{..|...case |
|00000db0| 45 49 6e 70 75 74 4b 65 | 79 2e 49 4b 5f 46 39 3a |EInputKe|y.IK_F9:|
|00000dc0| 09 2f 2f 20 53 63 72 65 | 65 6e 73 68 6f 74 0d 0a |.// Scre|enshot..|
|00000dd0| 09 09 09 09 72 65 74 75 | 72 6e 20 47 6c 6f 62 61 |....retu|rn Globa|
|00000de0| 6c 2e 4b 65 79 45 76 65 | 6e 74 28 4b 65 79 2c 20 |l.KeyEve|nt(Key, |
|00000df0| 41 63 74 69 6f 6e 2c 20 | 44 65 6c 74 61 29 3b 0d |Action, |Delta);.|
|00000e00| 0a 09 09 09 09 62 72 65 | 61 6b 3b 0d 0a 09 09 09 |.....bre|ak;.....|
|00000e10| 63 61 73 65 20 43 6f 6e | 73 6f 6c 65 4b 65 79 3a |case Con|soleKey:|
|00000e20| 0d 0a 09 09 09 09 69 66 | 20 28 62 53 68 6f 77 43 |......if| (bShowC|
|00000e30| 6f 6e 73 6f 6c 65 29 0d | 0a 09 09 09 09 7b 0d 0a |onsole).|.....{..|
|00000e40| 09 09 09 09 09 48 69 64 | 65 43 6f 6e 73 6f 6c 65 |.....Hid|eConsole|
|00000e50| 28 29 3b 0d 0a 09 09 09 | 09 09 69 66 28 62 51 75 |();.....|..if(bQu|
|00000e60| 69 63 6b 4b 65 79 45 6e | 61 62 6c 65 29 0d 0a 09 |ickKeyEn|able)...|
|00000e70| 09 09 09 09 09 43 6c 6f | 73 65 55 57 69 6e 64 6f |.....Clo|seUWindo|
|00000e80| 77 28 29 3b 0d 0a 09 09 | 09 09 7d 0d 0a 09 09 09 |w();....|..}.....|
|00000e90| 09 65 6c 73 65 0d 0a 09 | 09 09 09 7b 0d 0a 09 09 |.else...|...{....|
|00000ea0| 09 09 09 69 66 28 52 6f | 6f 74 2e 62 41 6c 6c 6f |...if(Ro|ot.bAllo|
|00000eb0| 77 43 6f 6e 73 6f 6c 65 | 29 0d 0a 09 09 09 09 09 |wConsole|).......|
|00000ec0| 09 53 68 6f 77 43 6f 6e | 73 6f 6c 65 28 29 3b 0d |.ShowCon|sole();.|
|00000ed0| 0a 09 09 09 09 09 65 6c | 73 65 0d 0a 09 09 09 09 |......el|se......|
|00000ee0| 09 09 52 6f 6f 74 2e 57 | 69 6e 64 6f 77 45 76 65 |..Root.W|indowEve|
|00000ef0| 6e 74 28 57 4d 5f 4b 65 | 79 44 6f 77 6e 2c 20 4e |nt(WM_Ke|yDown, N|
|00000f00| 6f 6e 65 2c 20 4d 6f 75 | 73 65 58 2c 20 4d 6f 75 |one, Mou|seX, Mou|
|00000f10| 73 65 59 2c 20 6b 29 3b | 0d 0a 09 09 09 09 7d 0d |seY, k);|......}.|
|00000f20| 0a 09 09 09 09 62 72 65 | 61 6b 3b 0d 0a 09 09 09 |.....bre|ak;.....|
|00000f30| 63 61 73 65 20 45 49 6e | 70 75 74 4b 65 79 2e 49 |case EIn|putKey.I|
|00000f40| 4b 5f 45 73 63 61 70 65 | 3a 0d 0a 09 09 09 09 69 |K_Escape|:......i|
|00000f50| 66 28 52 6f 6f 74 20 21 | 3d 20 4e 6f 6e 65 29 0d |f(Root !|= None).|
|00000f60| 0a 09 09 09 09 09 52 6f | 6f 74 2e 43 6c 6f 73 65 |......Ro|ot.Close|
|00000f70| 41 63 74 69 76 65 57 69 | 6e 64 6f 77 28 29 3b 0d |ActiveWi|ndow();.|
|00000f80| 0a 09 09 09 09 62 72 65 | 61 6b 3b 0d 0a 09 09 09 |.....bre|ak;.....|
|00000f90| 63 61 73 65 20 45 49 6e | 70 75 74 4b 65 79 2e 49 |case EIn|putKey.I|
|00000fa0| 4b 5f 4c 65 66 74 4d 6f | 75 73 65 3a 0d 0a 09 09 |K_LeftMo|use:....|
|00000fb0| 09 09 69 66 28 52 6f 6f | 74 20 21 3d 20 4e 6f 6e |..if(Roo|t != Non|
|00000fc0| 65 29 0d 0a 09 09 09 09 | 09 52 6f 6f 74 2e 57 69 |e)......|.Root.Wi|
|00000fd0| 6e 64 6f 77 45 76 65 6e | 74 28 57 4d 5f 4c 4d 6f |ndowEven|t(WM_LMo|
|00000fe0| 75 73 65 44 6f 77 6e 2c | 20 4e 6f 6e 65 2c 20 4d |useDown,| None, M|
|00000ff0| 6f 75 73 65 58 2c 20 4d | 6f 75 73 65 59 2c 20 6b |ouseX, M|ouseY, k|
|00001000| 29 3b 0d 0a 09 09 09 09 | 62 72 65 61 6b 3b 0d 0a |);......|break;..|
|00001010| 09 09 09 63 61 73 65 20 | 45 49 6e 70 75 74 4b 65 |...case |EInputKe|
|00001020| 79 2e 49 4b 5f 52 69 67 | 68 74 4d 6f 75 73 65 3a |y.IK_Rig|htMouse:|
|00001030| 0d 0a 09 09 09 09 69 66 | 28 52 6f 6f 74 20 21 3d |......if|(Root !=|
|00001040| 20 4e 6f 6e 65 29 0d 0a | 09 09 09 09 09 52 6f 6f | None)..|.....Roo|
|00001050| 74 2e 57 69 6e 64 6f 77 | 45 76 65 6e 74 28 57 4d |t.Window|Event(WM|
|00001060| 5f 52 4d 6f 75 73 65 44 | 6f 77 6e 2c 20 4e 6f 6e |_RMouseD|own, Non|
|00001070| 65 2c 20 4d 6f 75 73 65 | 58 2c 20 4d 6f 75 73 65 |e, Mouse|X, Mouse|
|00001080| 59 2c 20 6b 29 3b 0d 0a | 09 09 09 09 62 72 65 61 |Y, k);..|....brea|
|00001090| 6b 3b 0d 0a 09 09 09 63 | 61 73 65 20 45 49 6e 70 |k;.....c|ase EInp|
|000010a0| 75 74 4b 65 79 2e 49 4b | 5f 4d 69 64 64 6c 65 4d |utKey.IK|_MiddleM|
|000010b0| 6f 75 73 65 3a 0d 0a 09 | 09 09 09 69 66 28 52 6f |ouse:...|...if(Ro|
|000010c0| 6f 74 20 21 3d 20 4e 6f | 6e 65 29 0d 0a 09 09 09 |ot != No|ne).....|
|000010d0| 09 09 52 6f 6f 74 2e 57 | 69 6e 64 6f 77 45 76 65 |..Root.W|indowEve|
|000010e0| 6e 74 28 57 4d 5f 4d 4d | 6f 75 73 65 44 6f 77 6e |nt(WM_MM|ouseDown|
|000010f0| 2c 20 4e 6f 6e 65 2c 20 | 4d 6f 75 73 65 58 2c 20 |, None, |MouseX, |
|00001100| 4d 6f 75 73 65 59 2c 20 | 6b 29 3b 0d 0a 09 09 09 |MouseY, |k);.....|
|00001110| 09 62 72 65 61 6b 3b 0d | 0a 09 09 09 64 65 66 61 |.break;.|....defa|
|00001120| 75 6c 74 3a 0d 0a 09 09 | 09 09 69 66 28 52 6f 6f |ult:....|..if(Roo|
|00001130| 74 20 21 3d 20 4e 6f 6e | 65 29 0d 0a 09 09 09 09 |t != Non|e)......|
|00001140| 09 52 6f 6f 74 2e 57 69 | 6e 64 6f 77 45 76 65 6e |.Root.Wi|ndowEven|
|00001150| 74 28 57 4d 5f 4b 65 79 | 44 6f 77 6e 2c 20 4e 6f |t(WM_Key|Down, No|
|00001160| 6e 65 2c 20 4d 6f 75 73 | 65 58 2c 20 4d 6f 75 73 |ne, Mous|eX, Mous|
|00001170| 65 59 2c 20 6b 29 3b 0d | 0a 09 09 09 09 62 72 65 |eY, k);.|.....bre|
|00001180| 61 6b 3b 0d 0a 09 09 09 | 7d 0d 0a 09 09 09 62 72 |ak;.....|}.....br|
|00001190| 65 61 6b 3b 0d 0a 09 09 | 63 61 73 65 20 49 53 54 |eak;....|case IST|
|000011a0| 5f 41 78 69 73 3a 0d 0a | 09 09 09 73 77 69 74 63 |_Axis:..|...switc|
|000011b0| 68 20 28 4b 65 79 29 0d | 0a 09 09 09 7b 0d 0a 09 |h (Key).|....{...|
|000011c0| 09 09 63 61 73 65 20 49 | 4b 5f 4d 6f 75 73 65 58 |..case I|K_MouseX|
|000011d0| 3a 0d 0a 09 09 09 09 4d | 6f 75 73 65 58 20 3d 20 |:......M|ouseX = |
|000011e0| 4d 6f 75 73 65 58 20 2b | 20 28 4d 6f 75 73 65 53 |MouseX +| (MouseS|
|000011f0| 63 61 6c 65 20 2a 20 44 | 65 6c 74 61 29 3b 0d 0a |cale * D|elta);..|
|00001200| 09 09 09 09 62 72 65 61 | 6b 3b 0d 0a 09 09 09 63 |....brea|k;.....c|
|00001210| 61 73 65 20 49 4b 5f 4d | 6f 75 73 65 59 3a 0d 0a |ase IK_M|ouseY:..|
|00001220| 09 09 09 09 4d 6f 75 73 | 65 59 20 3d 20 4d 6f 75 |....Mous|eY = Mou|
|00001230| 73 65 59 20 2d 20 28 4d | 6f 75 73 65 53 63 61 6c |seY - (M|ouseScal|
|00001240| 65 20 2a 20 44 65 6c 74 | 61 29 3b 0d 0a 09 09 09 |e * Delt|a);.....|
|00001250| 09 62 72 65 61 6b 3b 09 | 09 09 09 09 0d 0a 09 09 |.break;.|........|
|00001260| 09 7d 0d 0a 09 09 64 65 | 66 61 75 6c 74 3a 0d 0a |.}....de|fault:..|
|00001270| 09 09 09 62 72 65 61 6b | 3b 0d 0a 09 09 7d 0d 0a |...break|;....}..|
|00001280| 0d 0a 09 09 72 65 74 75 | 72 6e 20 74 72 75 65 3b |....retu|rn true;|
|00001290| 0d 0a 09 7d 0d 0a 0d 0a | 42 65 67 69 6e 3a 0d 0a |...}....|Begin:..|
|000012a0| 7d 0d 0a 0d 0a 66 75 6e | 63 74 69 6f 6e 20 54 6f |}....fun|ction To|
|000012b0| 67 67 6c 65 55 57 69 6e | 64 6f 77 28 29 0d 0a 7b |ggleUWin|dow()..{|
|000012c0| 0d 0a 7d 0d 0a 0d 0a 66 | 75 6e 63 74 69 6f 6e 20 |..}....f|unction |
|000012d0| 4c 61 75 6e 63 68 55 57 | 69 6e 64 6f 77 28 29 0d |LaunchUW|indow().|
|000012e0| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 69 6e 74 20 69 |.{...loc|al int i|
|000012f0| 3b 0d 0a 0d 0a 09 56 69 | 65 77 70 6f 72 74 2e 62 |;.....Vi|ewport.b|
|00001300| 53 75 73 70 65 6e 64 50 | 72 65 63 61 63 68 69 6e |SuspendP|recachin|
|00001310| 67 20 3d 20 54 72 75 65 | 3b 0d 0a 09 62 55 57 69 |g = True|;...bUWi|
|00001320| 6e 64 6f 77 41 63 74 69 | 76 65 20 3d 20 21 62 51 |ndowActi|ve = !bQ|
|00001330| 75 69 63 6b 4b 65 79 45 | 6e 61 62 6c 65 3b 0d 0a |uickKeyE|nable;..|
|00001340| 09 56 69 65 77 70 6f 72 | 74 2e 62 53 68 6f 77 57 |.Viewpor|t.bShowW|
|00001350| 69 6e 64 6f 77 73 4d 6f | 75 73 65 20 3d 20 54 72 |indowsMo|use = Tr|
|00001360| 75 65 3b 0d 0a 0d 0a 09 | 69 66 28 62 51 75 69 63 |ue;.....|if(bQuic|
|00001370| 6b 4b 65 79 45 6e 61 62 | 6c 65 29 0d 0a 09 09 62 |kKeyEnab|le)....b|
|00001380| 4e 6f 44 72 61 77 57 6f | 72 6c 64 20 3d 20 46 61 |NoDrawWo|rld = Fa|
|00001390| 6c 73 65 3b 0d 0a 09 65 | 6c 73 65 0d 0a 09 7b 0d |lse;...e|lse...{.|
|000013a0| 0a 09 09 69 66 28 56 69 | 65 77 70 6f 72 74 2e 41 |...if(Vi|ewport.A|
|000013b0| 63 74 6f 72 2e 4c 65 76 | 65 6c 2e 4e 65 74 4d 6f |ctor.Lev|el.NetMo|
|000013c0| 64 65 20 3d 3d 20 4e 4d | 5f 53 74 61 6e 64 61 6c |de == NM|_Standal|
|000013d0| 6f 6e 65 29 0d 0a 09 09 | 09 56 69 65 77 70 6f 72 |one)....|.Viewpor|
|000013e0| 74 2e 41 63 74 6f 72 2e | 53 65 74 50 61 75 73 65 |t.Actor.|SetPause|
|000013f0| 28 20 54 72 75 65 20 29 | 3b 0d 0a 09 09 62 4e 6f |( True )|;....bNo|
|00001400| 44 72 61 77 57 6f 72 6c | 64 20 3d 20 53 68 6f 77 |DrawWorl|d = Show|
|00001410| 44 65 73 6b 74 6f 70 3b | 0d 0a 09 7d 0d 0a 09 69 |Desktop;|...}...i|
|00001420| 66 28 52 6f 6f 74 20 21 | 3d 20 4e 6f 6e 65 29 0d |f(Root !|= None).|
|00001430| 0a 09 09 52 6f 6f 74 2e | 62 57 69 6e 64 6f 77 56 |...Root.|bWindowV|
|00001440| 69 73 69 62 6c 65 20 3d | 20 54 72 75 65 3b 0d 0a |isible =| True;..|
|00001450| 0d 0a 09 47 6f 74 6f 53 | 74 61 74 65 28 27 55 57 |...GotoS|tate('UW|
|00001460| 69 6e 64 6f 77 27 29 3b | 0d 0a 7d 0d 0a 0d 0a 66 |indow');|..}....f|
|00001470| 75 6e 63 74 69 6f 6e 20 | 43 6c 6f 73 65 55 57 69 |unction |CloseUWi|
|00001480| 6e 64 6f 77 28 29 0d 0a | 7b 0d 0a 09 69 66 28 21 |ndow()..|{...if(!|
|00001490| 62 51 75 69 63 6b 4b 65 | 79 45 6e 61 62 6c 65 29 |bQuickKe|yEnable)|
|000014a0| 0d 0a 09 09 56 69 65 77 | 70 6f 72 74 2e 41 63 74 |....View|port.Act|
|000014b0| 6f 72 2e 53 65 74 50 61 | 75 73 65 28 20 46 61 6c |or.SetPa|use( Fal|
|000014c0| 73 65 20 29 3b 0d 0a 0d | 0a 09 62 4e 6f 44 72 61 |se );...|..bNoDra|
|000014d0| 77 57 6f 72 6c 64 20 3d | 20 46 61 6c 73 65 3b 0d |wWorld =| False;.|
|000014e0| 0a 09 62 51 75 69 63 6b | 4b 65 79 45 6e 61 62 6c |..bQuick|KeyEnabl|
|000014f0| 65 20 3d 20 46 61 6c 73 | 65 3b 0d 0a 09 62 55 57 |e = Fals|e;...bUW|
|00001500| 69 6e 64 6f 77 41 63 74 | 69 76 65 20 3d 20 46 61 |indowAct|ive = Fa|
|00001510| 6c 73 65 3b 0d 0a 09 56 | 69 65 77 70 6f 72 74 2e |lse;...V|iewport.|
|00001520| 62 53 68 6f 77 57 69 6e | 64 6f 77 73 4d 6f 75 73 |bShowWin|dowsMous|
|00001530| 65 20 3d 20 46 61 6c 73 | 65 3b 0d 0a 0d 0a 09 69 |e = Fals|e;.....i|
|00001540| 66 28 52 6f 6f 74 20 21 | 3d 20 4e 6f 6e 65 29 0d |f(Root !|= None).|
|00001550| 0a 09 09 52 6f 6f 74 2e | 62 57 69 6e 64 6f 77 56 |...Root.|bWindowV|
|00001560| 69 73 69 62 6c 65 20 3d | 20 46 61 6c 73 65 3b 0d |isible =| False;.|
|00001570| 0a 09 47 6f 74 6f 53 74 | 61 74 65 28 27 27 29 3b |..GotoSt|ate('');|
|00001580| 0d 0a 09 56 69 65 77 70 | 6f 72 74 2e 62 53 75 73 |...Viewp|ort.bSus|
|00001590| 70 65 6e 64 50 72 65 63 | 61 63 68 69 6e 67 20 3d |pendPrec|aching =|
|000015a0| 20 46 61 6c 73 65 3b 0d | 0a 7d 0d 0a 0d 0a 66 75 | False;.|.}....fu|
|000015b0| 6e 63 74 69 6f 6e 20 43 | 72 65 61 74 65 52 6f 6f |nction C|reateRoo|
|000015c0| 74 57 69 6e 64 6f 77 28 | 43 61 6e 76 61 73 20 43 |tWindow(|Canvas C|
|000015d0| 61 6e 76 61 73 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |anvas)..|{...loca|
|000015e0| 6c 20 69 6e 74 20 69 3b | 0d 0a 0d 0a 09 69 66 28 |l int i;|.....if(|
|000015f0| 43 61 6e 76 61 73 20 21 | 3d 20 4e 6f 6e 65 29 0d |Canvas !|= None).|
|00001600| 0a 09 7b 0d 0a 09 09 4f | 6c 64 43 6c 69 70 58 20 |..{....O|ldClipX |
|00001610| 3d 20 43 61 6e 76 61 73 | 2e 43 6c 69 70 58 3b 0d |= Canvas|.ClipX;.|
|00001620| 0a 09 09 4f 6c 64 43 6c | 69 70 59 20 3d 20 43 61 |...OldCl|ipY = Ca|
|00001630| 6e 76 61 73 2e 43 6c 69 | 70 59 3b 0d 0a 09 7d 0d |nvas.Cli|pY;...}.|
|00001640| 0a 09 65 6c 73 65 0d 0a | 09 7b 0d 0a 09 09 4f 6c |..else..|.{....Ol|
|00001650| 64 43 6c 69 70 58 20 3d | 20 30 3b 0d 0a 09 09 4f |dClipX =| 0;....O|
|00001660| 6c 64 43 6c 69 70 59 20 | 3d 20 30 3b 0d 0a 09 7d |ldClipY |= 0;...}|
|00001670| 0d 0a 09 0d 0a 09 4c 6f | 67 28 22 43 72 65 61 74 |......Lo|g("Creat|
|00001680| 69 6e 67 20 72 6f 6f 74 | 20 77 69 6e 64 6f 77 3a |ing root| window:|
|00001690| 20 22 24 52 6f 6f 74 57 | 69 6e 64 6f 77 29 3b 0d | "$RootW|indow);.|
|000016a0| 0a 09 0d 0a 09 52 6f 6f | 74 20 3d 20 4e 65 77 28 |.....Roo|t = New(|
|000016b0| 4e 6f 6e 65 29 20 63 6c | 61 73 73 3c 55 57 69 6e |None) cl|ass<UWin|
|000016c0| 64 6f 77 52 6f 6f 74 57 | 69 6e 64 6f 77 3e 28 44 |dowRootW|indow>(D|
|000016d0| 79 6e 61 6d 69 63 4c 6f | 61 64 4f 62 6a 65 63 74 |ynamicLo|adObject|
|000016e0| 28 52 6f 6f 74 57 69 6e | 64 6f 77 2c 20 63 6c 61 |(RootWin|dow, cla|
|000016f0| 73 73 27 43 6c 61 73 73 | 27 29 29 3b 0d 0a 0d 0a |ss'Class|'));....|
|00001700| 09 52 6f 6f 74 2e 42 65 | 67 69 6e 50 6c 61 79 28 |.Root.Be|ginPlay(|
|00001710| 29 3b 0d 0a 09 52 6f 6f | 74 2e 57 69 6e 54 6f 70 |);...Roo|t.WinTop|
|00001720| 20 3d 20 30 3b 0d 0a 09 | 52 6f 6f 74 2e 57 69 6e | = 0;...|Root.Win|
|00001730| 4c 65 66 74 20 3d 20 30 | 3b 0d 0a 0d 0a 09 69 66 |Left = 0|;.....if|
|00001740| 28 43 61 6e 76 61 73 20 | 21 3d 20 4e 6f 6e 65 29 |(Canvas |!= None)|
|00001750| 0d 0a 09 7b 0d 0a 09 09 | 52 6f 6f 74 2e 57 69 6e |...{....|Root.Win|
|00001760| 57 69 64 74 68 20 3d 20 | 43 61 6e 76 61 73 2e 43 |Width = |Canvas.C|
|00001770| 6c 69 70 58 20 2f 20 52 | 6f 6f 74 2e 47 55 49 53 |lipX / R|oot.GUIS|
|00001780| 63 61 6c 65 3b 0d 0a 09 | 09 52 6f 6f 74 2e 57 69 |cale;...|.Root.Wi|
|00001790| 6e 48 65 69 67 68 74 20 | 3d 20 43 61 6e 76 61 73 |nHeight |= Canvas|
|000017a0| 2e 43 6c 69 70 59 20 2f | 20 52 6f 6f 74 2e 47 55 |.ClipY /| Root.GU|
|000017b0| 49 53 63 61 6c 65 3b 0d | 0a 09 09 52 6f 6f 74 2e |IScale;.|...Root.|
|000017c0| 52 65 61 6c 57 69 64 74 | 68 20 3d 20 43 61 6e 76 |RealWidt|h = Canv|
|000017d0| 61 73 2e 43 6c 69 70 58 | 3b 0d 0a 09 09 52 6f 6f |as.ClipX|;....Roo|
|000017e0| 74 2e 52 65 61 6c 48 65 | 69 67 68 74 20 3d 20 43 |t.RealHe|ight = C|
|000017f0| 61 6e 76 61 73 2e 43 6c | 69 70 59 3b 0d 0a 09 7d |anvas.Cl|ipY;...}|
|00001800| 0d 0a 09 65 6c 73 65 0d | 0a 09 7b 0d 0a 09 09 52 |...else.|..{....R|
|00001810| 6f 6f 74 2e 57 69 6e 57 | 69 64 74 68 20 3d 20 30 |oot.WinW|idth = 0|
|00001820| 3b 0d 0a 09 09 52 6f 6f | 74 2e 57 69 6e 48 65 69 |;....Roo|t.WinHei|
|00001830| 67 68 74 20 3d 20 30 3b | 0d 0a 09 09 52 6f 6f 74 |ght = 0;|....Root|
|00001840| 2e 52 65 61 6c 57 69 64 | 74 68 20 3d 20 30 3b 0d |.RealWid|th = 0;.|
|00001850| 0a 09 09 52 6f 6f 74 2e | 52 65 61 6c 48 65 69 67 |...Root.|RealHeig|
|00001860| 68 74 20 3d 20 30 3b 0d | 0a 09 7d 0d 0a 0d 0a 09 |ht = 0;.|..}.....|
|00001870| 52 6f 6f 74 2e 43 6c 69 | 70 70 69 6e 67 52 65 67 |Root.Cli|ppingReg|
|00001880| 69 6f 6e 2e 58 20 3d 20 | 30 3b 0d 0a 09 52 6f 6f |ion.X = |0;...Roo|
|00001890| 74 2e 43 6c 69 70 70 69 | 6e 67 52 65 67 69 6f 6e |t.Clippi|ngRegion|
|000018a0| 2e 59 20 3d 20 30 3b 0d | 0a 09 52 6f 6f 74 2e 43 |.Y = 0;.|..Root.C|
|000018b0| 6c 69 70 70 69 6e 67 52 | 65 67 69 6f 6e 2e 57 20 |lippingR|egion.W |
|000018c0| 3d 20 52 6f 6f 74 2e 57 | 69 6e 57 69 64 74 68 3b |= Root.W|inWidth;|
|000018d0| 0d 0a 09 52 6f 6f 74 2e | 43 6c 69 70 70 69 6e 67 |...Root.|Clipping|
|000018e0| 52 65 67 69 6f 6e 2e 48 | 20 3d 20 52 6f 6f 74 2e |Region.H| = Root.|
|000018f0| 57 69 6e 48 65 69 67 68 | 74 3b 0d 0a 0d 0a 09 52 |WinHeigh|t;.....R|
|00001900| 6f 6f 74 2e 43 6f 6e 73 | 6f 6c 65 20 3d 20 53 65 |oot.Cons|ole = Se|
|00001910| 6c 66 3b 0d 0a 0d 0a 09 | 52 6f 6f 74 2e 62 55 57 |lf;.....|Root.bUW|
|00001920| 69 6e 64 6f 77 41 63 74 | 69 76 65 20 3d 20 62 55 |indowAct|ive = bU|
|00001930| 57 69 6e 64 6f 77 41 63 | 74 69 76 65 3b 0d 0a 0d |WindowAc|tive;...|
|00001940| 0a 09 52 6f 6f 74 2e 43 | 72 65 61 74 65 64 28 29 |..Root.C|reated()|
|00001950| 3b 0d 0a 09 62 43 72 65 | 61 74 65 64 52 6f 6f 74 |;...bCre|atedRoot|
|00001960| 20 3d 20 54 72 75 65 3b | 0d 0a 0d 0a 09 2f 2f 20 | = True;|.....// |
|00001970| 43 72 65 61 74 65 20 74 | 68 65 20 63 6f 6e 73 6f |Create t|he conso|
|00001980| 6c 65 20 77 69 6e 64 6f | 77 2e 0d 0a 09 43 6f 6e |le windo|w....Con|
|00001990| 73 6f 6c 65 57 69 6e 64 | 6f 77 20 3d 20 55 57 69 |soleWind|ow = UWi|
|000019a0| 6e 64 6f 77 43 6f 6e 73 | 6f 6c 65 57 69 6e 64 6f |ndowCons|oleWindo|
|000019b0| 77 28 52 6f 6f 74 2e 43 | 72 65 61 74 65 57 69 6e |w(Root.C|reateWin|
|000019c0| 64 6f 77 28 43 6f 6e 73 | 6f 6c 65 43 6c 61 73 73 |dow(Cons|oleClass|
|000019d0| 2c 20 31 30 30 2c 20 31 | 30 30 2c 20 32 30 30 2c |, 100, 1|00, 200,|
|000019e0| 20 32 30 30 29 29 3b 0d | 0a 09 69 66 28 21 62 53 | 200));.|..if(!bS|
|000019f0| 68 6f 77 43 6f 6e 73 6f | 6c 65 29 0d 0a 09 09 48 |howConso|le)....H|
|00001a00| 69 64 65 43 6f 6e 73 6f | 6c 65 28 29 3b 0d 0a 0d |ideConso|le();...|
|00001a10| 0a 09 55 57 69 6e 64 6f | 77 43 6f 6e 73 6f 6c 65 |..UWindo|wConsole|
|00001a20| 43 6c 69 65 6e 74 57 69 | 6e 64 6f 77 28 43 6f 6e |ClientWi|ndow(Con|
|00001a30| 73 6f 6c 65 57 69 6e 64 | 6f 77 2e 43 6c 69 65 6e |soleWind|ow.Clien|
|00001a40| 74 41 72 65 61 29 2e 54 | 65 78 74 41 72 65 61 2e |tArea).T|extArea.|
|00001a50| 41 64 64 54 65 78 74 28 | 22 20 22 29 3b 0d 0a 09 |AddText(|" ");...|
|00001a60| 66 6f 72 20 28 49 3d 30 | 3b 20 49 3c 34 3b 20 49 |for (I=0|; I<4; I|
|00001a70| 2b 2b 29 0d 0a 09 09 55 | 57 69 6e 64 6f 77 43 6f |++)....U|WindowCo|
|00001a80| 6e 73 6f 6c 65 43 6c 69 | 65 6e 74 57 69 6e 64 6f |nsoleCli|entWindo|
|00001a90| 77 28 43 6f 6e 73 6f 6c | 65 57 69 6e 64 6f 77 2e |w(Consol|eWindow.|
|00001aa0| 43 6c 69 65 6e 74 41 72 | 65 61 29 2e 54 65 78 74 |ClientAr|ea).Text|
|00001ab0| 41 72 65 61 2e 41 64 64 | 54 65 78 74 28 4d 73 67 |Area.Add|Text(Msg|
|00001ac0| 54 65 78 74 5b 49 5d 29 | 3b 0d 0a 7d 0d 0a 0d 0a |Text[I])|;..}....|
|00001ad0| 66 75 6e 63 74 69 6f 6e | 20 52 65 6e 64 65 72 55 |function| RenderU|
|00001ae0| 57 69 6e 64 6f 77 28 20 | 63 61 6e 76 61 73 20 43 |Window( |canvas C|
|00001af0| 61 6e 76 61 73 20 29 0d | 0a 7b 0d 0a 09 6c 6f 63 |anvas ).|.{...loc|
|00001b00| 61 6c 20 55 57 69 6e 64 | 6f 77 57 69 6e 64 6f 77 |al UWind|owWindow|
|00001b10| 20 4e 65 77 46 6f 63 75 | 73 57 69 6e 64 6f 77 3b | NewFocu|sWindow;|
|00001b20| 0d 0a 0d 0a 09 43 61 6e | 76 61 73 2e 62 4e 6f 53 |.....Can|vas.bNoS|
|00001b30| 6d 6f 6f 74 68 20 3d 20 | 54 72 75 65 3b 0d 0a 09 |mooth = |True;...|
|00001b40| 43 61 6e 76 61 73 2e 5a | 20 3d 20 31 3b 0d 0a 09 |Canvas.Z| = 1;...|
|00001b50| 43 61 6e 76 61 73 2e 53 | 74 79 6c 65 20 3d 20 31 |Canvas.S|tyle = 1|
|00001b60| 3b 0d 0a 09 43 61 6e 76 | 61 73 2e 44 72 61 77 43 |;...Canv|as.DrawC|
|00001b70| 6f 6c 6f 72 2e 72 20 3d | 20 32 35 35 3b 0d 0a 09 |olor.r =| 255;...|
|00001b80| 43 61 6e 76 61 73 2e 44 | 72 61 77 43 6f 6c 6f 72 |Canvas.D|rawColor|
|00001b90| 2e 67 20 3d 20 32 35 35 | 3b 0d 0a 09 43 61 6e 76 |.g = 255|;...Canv|
|00001ba0| 61 73 2e 44 72 61 77 43 | 6f 6c 6f 72 2e 62 20 3d |as.DrawC|olor.b =|
|00001bb0| 20 32 35 35 3b 0d 0a 0d | 0a 09 69 66 28 56 69 65 | 255;...|..if(Vie|
|00001bc0| 77 70 6f 72 74 2e 62 57 | 69 6e 64 6f 77 73 4d 6f |wport.bW|indowsMo|
|00001bd0| 75 73 65 41 76 61 69 6c | 61 62 6c 65 20 26 26 20 |useAvail|able && |
|00001be0| 52 6f 6f 74 20 21 3d 20 | 4e 6f 6e 65 29 0d 0a 09 |Root != |None)...|
|00001bf0| 7b 0d 0a 09 09 4d 6f 75 | 73 65 58 20 3d 20 56 69 |{....Mou|seX = Vi|
|00001c00| 65 77 70 6f 72 74 2e 57 | 69 6e 64 6f 77 73 4d 6f |ewport.W|indowsMo|
|00001c10| 75 73 65 58 2f 52 6f 6f | 74 2e 47 55 49 53 63 61 |useX/Roo|t.GUISca|
|00001c20| 6c 65 3b 0d 0a 09 09 4d | 6f 75 73 65 59 20 3d 20 |le;....M|ouseY = |
|00001c30| 56 69 65 77 70 6f 72 74 | 2e 57 69 6e 64 6f 77 73 |Viewport|.Windows|
|00001c40| 4d 6f 75 73 65 59 2f 52 | 6f 6f 74 2e 47 55 49 53 |MouseY/R|oot.GUIS|
|00001c50| 63 61 6c 65 3b 0d 0a 09 | 7d 0d 0a 0d 0a 09 69 66 |cale;...|}.....if|
|00001c60| 28 21 62 43 72 65 61 74 | 65 64 52 6f 6f 74 29 20 |(!bCreat|edRoot) |
|00001c70| 0d 0a 09 09 43 72 65 61 | 74 65 52 6f 6f 74 57 69 |....Crea|teRootWi|
|00001c80| 6e 64 6f 77 28 43 61 6e | 76 61 73 29 3b 0d 0a 0d |ndow(Can|vas);...|
|00001c90| 0a 09 52 6f 6f 74 2e 62 | 57 69 6e 64 6f 77 56 69 |..Root.b|WindowVi|
|00001ca0| 73 69 62 6c 65 20 3d 20 | 54 72 75 65 3b 0d 0a 09 |sible = |True;...|
|00001cb0| 52 6f 6f 74 2e 62 55 57 | 69 6e 64 6f 77 41 63 74 |Root.bUW|indowAct|
|00001cc0| 69 76 65 20 3d 20 62 55 | 57 69 6e 64 6f 77 41 63 |ive = bU|WindowAc|
|00001cd0| 74 69 76 65 3b 0d 0a 09 | 52 6f 6f 74 2e 62 51 75 |tive;...|Root.bQu|
|00001ce0| 69 63 6b 4b 65 79 45 6e | 61 62 6c 65 20 3d 20 62 |ickKeyEn|able = b|
|00001cf0| 51 75 69 63 6b 4b 65 79 | 45 6e 61 62 6c 65 3b 0d |QuickKey|Enable;.|
|00001d00| 0a 0d 0a 09 69 66 28 43 | 61 6e 76 61 73 2e 43 6c |....if(C|anvas.Cl|
|00001d10| 69 70 58 20 21 3d 20 4f | 6c 64 43 6c 69 70 58 20 |ipX != O|ldClipX |
|00001d20| 7c 7c 20 43 61 6e 76 61 | 73 2e 43 6c 69 70 59 20 ||| Canva|s.ClipY |
|00001d30| 21 3d 20 4f 6c 64 43 6c | 69 70 59 29 0d 0a 09 7b |!= OldCl|ipY)...{|
|00001d40| 0d 0a 09 09 4f 6c 64 43 | 6c 69 70 58 20 3d 20 43 |....OldC|lipX = C|
|00001d50| 61 6e 76 61 73 2e 43 6c | 69 70 58 3b 0d 0a 09 09 |anvas.Cl|ipX;....|
|00001d60| 4f 6c 64 43 6c 69 70 59 | 20 3d 20 43 61 6e 76 61 |OldClipY| = Canva|
|00001d70| 73 2e 43 6c 69 70 59 3b | 0d 0a 09 09 0d 0a 09 09 |s.ClipY;|........|
|00001d80| 52 6f 6f 74 2e 57 69 6e | 54 6f 70 20 3d 20 30 3b |Root.Win|Top = 0;|
|00001d90| 0d 0a 09 09 52 6f 6f 74 | 2e 57 69 6e 4c 65 66 74 |....Root|.WinLeft|
|00001da0| 20 3d 20 30 3b 0d 0a 09 | 09 52 6f 6f 74 2e 57 69 | = 0;...|.Root.Wi|
|00001db0| 6e 57 69 64 74 68 20 3d | 20 43 61 6e 76 61 73 2e |nWidth =| Canvas.|
|00001dc0| 43 6c 69 70 58 20 2f 20 | 52 6f 6f 74 2e 47 55 49 |ClipX / |Root.GUI|
|00001dd0| 53 63 61 6c 65 3b 0d 0a | 09 09 52 6f 6f 74 2e 57 |Scale;..|..Root.W|
|00001de0| 69 6e 48 65 69 67 68 74 | 20 3d 20 43 61 6e 76 61 |inHeight| = Canva|
|00001df0| 73 2e 43 6c 69 70 59 20 | 2f 20 52 6f 6f 74 2e 47 |s.ClipY |/ Root.G|
|00001e00| 55 49 53 63 61 6c 65 3b | 0d 0a 0d 0a 09 09 52 6f |UIScale;|......Ro|
|00001e10| 6f 74 2e 52 65 61 6c 57 | 69 64 74 68 20 3d 20 43 |ot.RealW|idth = C|
|00001e20| 61 6e 76 61 73 2e 43 6c | 69 70 58 3b 0d 0a 09 09 |anvas.Cl|ipX;....|
|00001e30| 52 6f 6f 74 2e 52 65 61 | 6c 48 65 69 67 68 74 20 |Root.Rea|lHeight |
|00001e40| 3d 20 43 61 6e 76 61 73 | 2e 43 6c 69 70 59 3b 0d |= Canvas|.ClipY;.|
|00001e50| 0a 0d 0a 09 09 52 6f 6f | 74 2e 43 6c 69 70 70 69 |.....Roo|t.Clippi|
|00001e60| 6e 67 52 65 67 69 6f 6e | 2e 58 20 3d 20 30 3b 0d |ngRegion|.X = 0;.|
|00001e70| 0a 09 09 52 6f 6f 74 2e | 43 6c 69 70 70 69 6e 67 |...Root.|Clipping|
|00001e80| 52 65 67 69 6f 6e 2e 59 | 20 3d 20 30 3b 0d 0a 09 |Region.Y| = 0;...|
|00001e90| 09 52 6f 6f 74 2e 43 6c | 69 70 70 69 6e 67 52 65 |.Root.Cl|ippingRe|
|00001ea0| 67 69 6f 6e 2e 57 20 3d | 20 52 6f 6f 74 2e 57 69 |gion.W =| Root.Wi|
|00001eb0| 6e 57 69 64 74 68 3b 0d | 0a 09 09 52 6f 6f 74 2e |nWidth;.|...Root.|
|00001ec0| 43 6c 69 70 70 69 6e 67 | 52 65 67 69 6f 6e 2e 48 |Clipping|Region.H|
|00001ed0| 20 3d 20 52 6f 6f 74 2e | 57 69 6e 48 65 69 67 68 | = Root.|WinHeigh|
|00001ee0| 74 3b 0d 0a 0d 0a 09 09 | 52 6f 6f 74 2e 52 65 73 |t;......|Root.Res|
|00001ef0| 69 7a 65 64 28 29 3b 0d | 0a 09 7d 0d 0a 0d 0a 09 |ized();.|..}.....|
|00001f00| 69 66 28 4d 6f 75 73 65 | 58 20 3e 20 52 6f 6f 74 |if(Mouse|X > Root|
|00001f10| 2e 57 69 6e 57 69 64 74 | 68 29 20 4d 6f 75 73 65 |.WinWidt|h) Mouse|
|00001f20| 58 20 3d 20 52 6f 6f 74 | 2e 57 69 6e 57 69 64 74 |X = Root|.WinWidt|
|00001f30| 68 3b 0d 0a 09 69 66 28 | 4d 6f 75 73 65 59 20 3e |h;...if(|MouseY >|
|00001f40| 20 52 6f 6f 74 2e 57 69 | 6e 48 65 69 67 68 74 29 | Root.Wi|nHeight)|
|00001f50| 20 4d 6f 75 73 65 59 20 | 3d 20 52 6f 6f 74 2e 57 | MouseY |= Root.W|
|00001f60| 69 6e 48 65 69 67 68 74 | 3b 0d 0a 09 69 66 28 4d |inHeight|;...if(M|
|00001f70| 6f 75 73 65 58 20 3c 20 | 30 29 20 4d 6f 75 73 65 |ouseX < |0) Mouse|
|00001f80| 58 20 3d 20 30 3b 0d 0a | 09 69 66 28 4d 6f 75 73 |X = 0;..|.if(Mous|
|00001f90| 65 59 20 3c 20 30 29 20 | 4d 6f 75 73 65 59 20 3d |eY < 0) |MouseY =|
|00001fa0| 20 30 3b 0d 0a 0d 0a 0d | 0a 09 2f 2f 20 43 68 65 | 0;.....|..// Che|
|00001fb0| 63 6b 20 66 6f 72 20 6b | 65 79 62 6f 61 72 64 20 |ck for k|eyboard |
|00001fc0| 66 6f 63 75 73 0d 0a 09 | 4e 65 77 46 6f 63 75 73 |focus...|NewFocus|
|00001fd0| 57 69 6e 64 6f 77 20 3d | 20 52 6f 6f 74 2e 43 68 |Window =| Root.Ch|
|00001fe0| 65 63 6b 4b 65 79 46 6f | 63 75 73 57 69 6e 64 6f |eckKeyFo|cusWindo|
|00001ff0| 77 28 29 3b 0d 0a 0d 0a | 09 69 66 28 4e 65 77 46 |w();....|.if(NewF|
|00002000| 6f 63 75 73 57 69 6e 64 | 6f 77 20 21 3d 20 52 6f |ocusWind|ow != Ro|
|00002010| 6f 74 2e 4b 65 79 46 6f | 63 75 73 57 69 6e 64 6f |ot.KeyFo|cusWindo|
|00002020| 77 29 0d 0a 09 7b 0d 0a | 09 09 52 6f 6f 74 2e 4b |w)...{..|..Root.K|
|00002030| 65 79 46 6f 63 75 73 57 | 69 6e 64 6f 77 2e 4b 65 |eyFocusW|indow.Ke|
|00002040| 79 46 6f 63 75 73 45 78 | 69 74 28 29 3b 09 09 0d |yFocusEx|it();...|
|00002050| 0a 09 09 52 6f 6f 74 2e | 4b 65 79 46 6f 63 75 73 |...Root.|KeyFocus|
|00002060| 57 69 6e 64 6f 77 20 3d | 20 4e 65 77 46 6f 63 75 |Window =| NewFocu|
|00002070| 73 57 69 6e 64 6f 77 3b | 0d 0a 09 09 52 6f 6f 74 |sWindow;|....Root|
|00002080| 2e 4b 65 79 46 6f 63 75 | 73 57 69 6e 64 6f 77 2e |.KeyFocu|sWindow.|
|00002090| 4b 65 79 46 6f 63 75 73 | 45 6e 74 65 72 28 29 3b |KeyFocus|Enter();|
|000020a0| 0d 0a 09 7d 0d 0a 0d 0a | 0d 0a 09 52 6f 6f 74 2e |...}....|...Root.|
|000020b0| 4d 6f 76 65 4d 6f 75 73 | 65 28 4d 6f 75 73 65 58 |MoveMous|e(MouseX|
|000020c0| 2c 20 4d 6f 75 73 65 59 | 29 3b 0d 0a 09 52 6f 6f |, MouseY|);...Roo|
|000020d0| 74 2e 57 69 6e 64 6f 77 | 45 76 65 6e 74 28 57 4d |t.Window|Event(WM|
|000020e0| 5f 50 61 69 6e 74 2c 20 | 43 61 6e 76 61 73 2c 20 |_Paint, |Canvas, |
|000020f0| 4d 6f 75 73 65 58 2c 20 | 4d 6f 75 73 65 59 2c 20 |MouseX, |MouseY, |
|00002100| 30 29 3b 0d 0a 09 69 66 | 28 62 55 57 69 6e 64 6f |0);...if|(bUWindo|
|00002110| 77 41 63 74 69 76 65 20 | 7c 7c 20 62 51 75 69 63 |wActive ||| bQuic|
|00002120| 6b 4b 65 79 45 6e 61 62 | 6c 65 29 20 0d 0a 09 09 |kKeyEnab|le) ....|
|00002130| 52 6f 6f 74 2e 44 72 61 | 77 4d 6f 75 73 65 28 43 |Root.Dra|wMouse(C|
|00002140| 61 6e 76 61 73 29 3b 0d | 0a 7d 0d 0a 0d 0a 65 76 |anvas);.|.}....ev|
|00002150| 65 6e 74 20 4d 65 73 73 | 61 67 65 28 20 50 6c 61 |ent Mess|age( Pla|
|00002160| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|00002170| 66 6f 20 50 52 49 2c 20 | 63 6f 65 72 63 65 20 73 |fo PRI, |coerce s|
|00002180| 74 72 69 6e 67 20 4d 73 | 67 2c 20 6e 61 6d 65 20 |tring Ms|g, name |
|00002190| 4e 20 29 0d 0a 7b 0d 0a | 09 6c 6f 63 61 6c 20 73 |N )..{..|.local s|
|000021a0| 74 72 69 6e 67 20 4f 75 | 74 54 65 78 74 3b 0d 0a |tring Ou|tText;..|
|000021b0| 0d 0a 09 53 75 70 65 72 | 2e 4d 65 73 73 61 67 65 |...Super|.Message|
|000021c0| 28 20 50 52 49 2c 20 4d | 73 67 2c 20 4e 20 29 3b |( PRI, M|sg, N );|
|000021d0| 0d 0a 0d 0a 09 69 66 20 | 28 20 56 69 65 77 70 6f |.....if |( Viewpo|
|000021e0| 72 74 2e 41 63 74 6f 72 | 20 3d 3d 20 4e 6f 6e 65 |rt.Actor| == None|
|000021f0| 20 29 0d 0a 09 09 72 65 | 74 75 72 6e 3b 0d 0a 0d | )....re|turn;...|
|00002200| 0a 09 69 66 28 20 4d 73 | 67 21 3d 22 22 20 29 0d |..if( Ms|g!="" ).|
|00002210| 0a 09 7b 0d 0a 09 09 69 | 66 20 28 28 20 4d 73 67 |..{....i|f (( Msg|
|00002220| 54 79 70 65 5b 54 6f 70 | 4c 69 6e 65 5d 20 3d 3d |Type[Top|Line] ==|
|00002230| 20 27 53 61 79 27 20 29 | 20 7c 7c 20 28 20 4d 73 | 'Say' )| || ( Ms|
|00002240| 67 54 79 70 65 5b 54 6f | 70 4c 69 6e 65 5d 20 3d |gType[To|pLine] =|
|00002250| 3d 20 27 54 65 61 6d 53 | 61 79 27 20 29 29 0d 0a |= 'TeamS|ay' ))..|
|00002260| 09 09 09 4f 75 74 54 65 | 78 74 20 3d 20 4d 73 67 |...OutTe|xt = Msg|
|00002270| 50 6c 61 79 65 72 5b 54 | 6f 70 4c 69 6e 65 5d 2e |Player[T|opLine].|
|00002280| 50 6c 61 79 65 72 4e 61 | 6d 65 24 22 3a 20 22 24 |PlayerNa|me$": "$|
|00002290| 4d 73 67 54 65 78 74 5b | 54 6f 70 4c 69 6e 65 5d |MsgText[|TopLine]|
|000022a0| 3b 0d 0a 09 09 65 6c 73 | 65 0d 0a 09 09 09 4f 75 |;....els|e.....Ou|
|000022b0| 74 54 65 78 74 20 3d 20 | 4d 73 67 54 65 78 74 5b |tText = |MsgText[|
|000022c0| 54 6f 70 4c 69 6e 65 5d | 3b 0d 0a 09 09 69 66 20 |TopLine]|;....if |
|000022d0| 28 43 6f 6e 73 6f 6c 65 | 57 69 6e 64 6f 77 20 21 |(Console|Window !|
|000022e0| 3d 20 4e 6f 6e 65 29 0d | 0a 09 09 09 55 57 69 6e |= None).|....UWin|
|000022f0| 64 6f 77 43 6f 6e 73 6f | 6c 65 43 6c 69 65 6e 74 |dowConso|leClient|
|00002300| 57 69 6e 64 6f 77 28 43 | 6f 6e 73 6f 6c 65 57 69 |Window(C|onsoleWi|
|00002310| 6e 64 6f 77 2e 43 6c 69 | 65 6e 74 41 72 65 61 29 |ndow.Cli|entArea)|
|00002320| 2e 54 65 78 74 41 72 65 | 61 2e 41 64 64 54 65 78 |.TextAre|a.AddTex|
|00002330| 74 28 4f 75 74 54 65 78 | 74 29 3b 0d 0a 09 7d 0d |t(OutTex|t);...}.|
|00002340| 0a 7d 0d 0a 0d 0a 65 76 | 65 6e 74 20 41 64 64 53 |.}....ev|ent AddS|
|00002350| 74 72 69 6e 67 28 20 63 | 6f 65 72 63 65 20 73 74 |tring( c|oerce st|
|00002360| 72 69 6e 67 20 4d 73 67 | 20 29 0d 0a 7b 0d 0a 09 |ring Msg| )..{...|
|00002370| 53 75 70 65 72 2e 41 64 | 64 53 74 72 69 6e 67 28 |Super.Ad|dString(|
|00002380| 20 4d 73 67 20 29 3b 0d | 0a 0d 0a 09 69 66 28 20 | Msg );.|....if( |
|00002390| 4d 73 67 21 3d 22 22 20 | 29 0d 0a 09 7b 0d 0a 09 |Msg!="" |)...{...|
|000023a0| 09 69 66 20 28 43 6f 6e | 73 6f 6c 65 57 69 6e 64 |.if (Con|soleWind|
|000023b0| 6f 77 20 21 3d 20 4e 6f | 6e 65 29 0d 0a 09 09 09 |ow != No|ne).....|
|000023c0| 55 57 69 6e 64 6f 77 43 | 6f 6e 73 6f 6c 65 43 6c |UWindowC|onsoleCl|
|000023d0| 69 65 6e 74 57 69 6e 64 | 6f 77 28 43 6f 6e 73 6f |ientWind|ow(Conso|
|000023e0| 6c 65 57 69 6e 64 6f 77 | 2e 43 6c 69 65 6e 74 41 |leWindow|.ClientA|
|000023f0| 72 65 61 29 2e 54 65 78 | 74 41 72 65 61 2e 41 64 |rea).Tex|tArea.Ad|
|00002400| 64 54 65 78 74 28 4d 73 | 67 29 3b 0d 0a 09 7d 0d |dText(Ms|g);...}.|
|00002410| 0a 7d 0d 0a 0d 0a 66 75 | 6e 63 74 69 6f 6e 20 55 |.}....fu|nction U|
|00002420| 70 64 61 74 65 48 69 73 | 74 6f 72 79 28 29 0d 0a |pdateHis|tory()..|
|00002430| 7b 0d 0a 09 2f 2f 20 55 | 70 64 61 74 65 20 68 69 |{...// U|pdate hi|
|00002440| 73 74 6f 72 79 20 62 75 | 66 66 65 72 2e 0d 0a 09 |story bu|ffer....|
|00002450| 48 69 73 74 6f 72 79 5b | 48 69 73 74 6f 72 79 43 |History[|HistoryC|
|00002460| 75 72 2b 2b 20 25 20 4d | 61 78 48 69 73 74 6f 72 |ur++ % M|axHistor|
|00002470| 79 5d 20 3d 20 54 79 70 | 65 64 53 74 72 3b 0d 0a |y] = Typ|edStr;..|
|00002480| 09 69 66 28 20 48 69 73 | 74 6f 72 79 43 75 72 20 |.if( His|toryCur |
|00002490| 3e 20 48 69 73 74 6f 72 | 79 42 6f 74 20 29 0d 0a |> Histor|yBot )..|
|000024a0| 09 09 48 69 73 74 6f 72 | 79 42 6f 74 2b 2b 3b 0d |..Histor|yBot++;.|
|000024b0| 0a 09 69 66 28 20 48 69 | 73 74 6f 72 79 43 75 72 |..if( Hi|storyCur|
|000024c0| 20 2d 20 48 69 73 74 6f | 72 79 54 6f 70 20 3e 3d | - Histo|ryTop >=|
|000024d0| 20 4d 61 78 48 69 73 74 | 6f 72 79 20 29 0d 0a 09 | MaxHist|ory )...|
|000024e0| 09 48 69 73 74 6f 72 79 | 54 6f 70 20 3d 20 48 69 |.History|Top = Hi|
|000024f0| 73 74 6f 72 79 43 75 72 | 20 2d 20 4d 61 78 48 69 |storyCur| - MaxHi|
|00002500| 73 74 6f 72 79 20 2b 20 | 31 3b 0d 0a 7d 0d 0a 0d |story + |1;..}...|
|00002510| 0a 66 75 6e 63 74 69 6f | 6e 20 48 69 73 74 6f 72 |.functio|n Histor|
|00002520| 79 55 70 28 29 0d 0a 7b | 0d 0a 09 69 66 28 20 48 |yUp()..{|...if( H|
|00002530| 69 73 74 6f 72 79 43 75 | 72 20 3e 20 48 69 73 74 |istoryCu|r > Hist|
|00002540| 6f 72 79 54 6f 70 20 29 | 0d 0a 09 7b 0d 0a 09 09 |oryTop )|...{....|
|00002550| 48 69 73 74 6f 72 79 5b | 48 69 73 74 6f 72 79 43 |History[|HistoryC|
|00002560| 75 72 20 25 20 4d 61 78 | 48 69 73 74 6f 72 79 5d |ur % Max|History]|
|00002570| 20 3d 20 54 79 70 65 64 | 53 74 72 3b 0d 0a 09 09 | = Typed|Str;....|
|00002580| 54 79 70 65 64 53 74 72 | 20 3d 20 48 69 73 74 6f |TypedStr| = Histo|
|00002590| 72 79 5b 2d 2d 48 69 73 | 74 6f 72 79 43 75 72 20 |ry[--His|toryCur |
|000025a0| 25 20 4d 61 78 48 69 73 | 74 6f 72 79 5d 3b 0d 0a |% MaxHis|tory];..|
|000025b0| 09 7d 0d 0a 7d 0d 0a 0d | 0a 66 75 6e 63 74 69 6f |.}..}...|.functio|
|000025c0| 6e 20 48 69 73 74 6f 72 | 79 44 6f 77 6e 28 29 0d |n Histor|yDown().|
|000025d0| 0a 7b 0d 0a 09 48 69 73 | 74 6f 72 79 5b 48 69 73 |.{...His|tory[His|
|000025e0| 74 6f 72 79 43 75 72 20 | 25 20 4d 61 78 48 69 73 |toryCur |% MaxHis|
|000025f0| 74 6f 72 79 5d 20 3d 20 | 54 79 70 65 64 53 74 72 |tory] = |TypedStr|
|00002600| 3b 0d 0a 09 69 66 28 20 | 48 69 73 74 6f 72 79 43 |;...if( |HistoryC|
|00002610| 75 72 20 3c 20 48 69 73 | 74 6f 72 79 42 6f 74 20 |ur < His|toryBot |
|00002620| 29 0d 0a 09 09 54 79 70 | 65 64 53 74 72 20 3d 20 |)....Typ|edStr = |
|00002630| 48 69 73 74 6f 72 79 5b | 2b 2b 48 69 73 74 6f 72 |History[|++Histor|
|00002640| 79 43 75 72 20 25 20 4d | 61 78 48 69 73 74 6f 72 |yCur % M|axHistor|
|00002650| 79 5d 3b 0d 0a 09 65 6c | 73 65 0d 0a 09 09 54 79 |y];...el|se....Ty|
|00002660| 70 65 64 53 74 72 3d 22 | 22 3b 0d 0a 7d 0d 0a 0d |pedStr="|";..}...|
|00002670| 0a 66 75 6e 63 74 69 6f | 6e 20 4e 6f 74 69 66 79 |.functio|n Notify|
|00002680| 4c 65 76 65 6c 43 68 61 | 6e 67 65 28 29 0d 0a 7b |LevelCha|nge()..{|
|00002690| 0d 0a 09 53 75 70 65 72 | 2e 4e 6f 74 69 66 79 4c |...Super|.NotifyL|
|000026a0| 65 76 65 6c 43 68 61 6e | 67 65 28 29 3b 0d 0a 09 |evelChan|ge();...|
|000026b0| 62 4c 65 76 65 6c 43 68 | 61 6e 67 65 20 3d 20 54 |bLevelCh|ange = T|
|000026c0| 72 75 65 3b 0d 0a 09 69 | 66 28 52 6f 6f 74 20 21 |rue;...i|f(Root !|
|000026d0| 3d 20 4e 6f 6e 65 29 0d | 0a 09 09 52 6f 6f 74 2e |= None).|...Root.|
|000026e0| 4e 6f 74 69 66 79 42 65 | 66 6f 72 65 4c 65 76 65 |NotifyBe|foreLeve|
|000026f0| 6c 43 68 61 6e 67 65 28 | 29 3b 0d 0a 7d 0d 0a 0d |lChange(|);..}...|
|00002700| 0a 00 | |.. | |
+--------+-------------------------+-------------------------+--------+--------+