home *** CD-ROM | disk | FTP | other *** search
/ The Games Machine 2 (DVD) / XENIADVD2.iso / Demo / Devastation / data1.cab / App_Executables / System / UWindow.u / UWindowWindow_WindowConsole_ScriptText.TextBuffer < prev    next >
Unknown  |  2003-02-28  |  10.1 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.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 00 00 00 00 00 00 00 | 4e a1 01 2f 2f 3d 3d 3d |........|N..//===|
|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 0d 0a 09 6e | 61 74 69 76 65 3b 0d 0a |sole...n|ative;..|
|00000120| 0d 0a 2f 2f 20 46 49 58 | 4d 45 3a 20 43 6c 65 61 |..// FIX|ME: Clea|
|00000130| 6e 20 6d 65 20 75 70 21 | 0d 0a 0d 0a 76 61 72 20 |n me up!|....var |
|00000140| 55 57 69 6e 64 6f 77 52 | 6f 6f 74 57 69 6e 64 6f |UWindowR|ootWindo|
|00000150| 77 09 52 6f 6f 74 3b 0d | 0a 76 61 72 28 29 20 63 |w.Root;.|.var() c|
|00000160| 6f 6e 66 69 67 20 73 74 | 72 69 6e 67 09 09 52 6f |onfig st|ring..Ro|
|00000170| 6f 74 57 69 6e 64 6f 77 | 3b 0d 0a 0d 0a 76 61 72 |otWindow|;....var|
|00000180| 20 66 6c 6f 61 74 09 09 | 09 09 4f 6c 64 43 6c 69 | float..|..OldCli|
|00000190| 70 58 3b 0d 0a 76 61 72 | 20 66 6c 6f 61 74 09 09 |pX;..var| float..|
|000001a0| 09 09 4f 6c 64 43 6c 69 | 70 59 3b 0d 0a 76 61 72 |..OldCli|pY;..var|
|000001b0| 20 62 6f 6f 6c 09 09 09 | 09 62 43 72 65 61 74 65 | bool...|.bCreate|
|000001c0| 64 52 6f 6f 74 3b 0d 0a | 76 61 72 20 66 6c 6f 61 |dRoot;..|var floa|
|000001d0| 74 09 09 09 09 4d 6f 75 | 73 65 58 3b 0d 0a 76 61 |t....Mou|seX;..va|
|000001e0| 72 20 66 6c 6f 61 74 09 | 09 09 09 4d 6f 75 73 65 |r float.|...Mouse|
|000001f0| 59 3b 0d 0a 0d 0a 76 61 | 72 20 63 6c 61 73 73 3c |Y;....va|r class<|
|00000200| 55 57 69 6e 64 6f 77 43 | 6f 6e 73 6f 6c 65 57 69 |UWindowC|onsoleWi|
|00000210| 6e 64 6f 77 3e 20 43 6f | 6e 73 6f 6c 65 43 6c 61 |ndow> Co|nsoleCla|
|00000220| 73 73 3b 0d 0a 76 61 72 | 20 63 6f 6e 66 69 67 20 |ss;..var| config |
|00000230| 66 6c 6f 61 74 09 09 4d | 6f 75 73 65 53 63 61 6c |float..M|ouseScal|
|00000240| 65 3b 0d 0a 76 61 72 20 | 63 6f 6e 66 69 67 20 62 |e;..var |config b|
|00000250| 6f 6f 6c 09 09 09 53 68 | 6f 77 44 65 73 6b 74 6f |ool...Sh|owDeskto|
|00000260| 70 3b 0d 0a 76 61 72 20 | 63 6f 6e 66 69 67 20 62 |p;..var |config b|
|00000270| 6f 6f 6c 09 09 09 62 53 | 68 6f 77 43 6f 6e 73 6f |ool...bS|howConso|
|00000280| 6c 65 3b 0d 0a 76 61 72 | 20 62 6f 6f 6c 09 09 09 |le;..var| bool...|
|00000290| 09 62 42 6c 61 63 6b 6f | 75 74 3b 0d 0a 76 61 72 |.bBlacko|ut;..var|
|000002a0| 20 62 6f 6f 6c 09 09 09 | 09 62 55 57 69 6e 64 6f | bool...|.bUWindo|
|000002b0| 77 54 79 70 65 3b 0d 0a | 0d 0a 76 61 72 20 62 6f |wType;..|..var bo|
|000002c0| 6f 6c 09 09 09 09 62 55 | 57 69 6e 64 6f 77 41 63 |ol....bU|WindowAc|
|000002d0| 74 69 76 65 3b 0d 0a 76 | 61 72 20 62 6f 6f 6c 09 |tive;..v|ar bool.|
|000002e0| 09 09 09 62 51 75 69 63 | 6b 4b 65 79 45 6e 61 62 |...bQuic|kKeyEnab|
|000002f0| 6c 65 3b 0d 0a 76 61 72 | 20 62 6f 6f 6c 09 09 09 |le;..var| bool...|
|00000300| 09 62 4c 6f 63 6b 65 64 | 3b 0d 0a 76 61 72 20 62 |.bLocked|;..var b|
|00000310| 6f 6f 6c 09 09 09 09 62 | 4c 65 76 65 6c 43 68 61 |ool....b|LevelCha|
|00000320| 6e 67 65 3b 0d 0a 76 61 | 72 20 73 74 72 69 6e 67 |nge;..va|r string|
|00000330| 09 09 09 09 4f 6c 64 4c | 65 76 65 6c 3b 0d 0a 0d |....OldL|evel;...|
|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 2f 2f |ndow();.|.}....//|
|00000440| 20 53 6f 20 44 42 61 73 | 65 57 69 6e 64 6f 77 48 | So DBas|eWindowH|
|00000450| 61 6e 64 6c 65 72 20 63 | 61 6e 20 63 6f 6d 70 69 |andler c|an compi|
|00000460| 6c 65 0d 0a 66 75 6e 63 | 74 69 6f 6e 20 62 6f 6f |le..func|tion boo|
|00000470| 6c 20 4b 65 79 54 79 70 | 65 28 20 45 49 6e 70 75 |l KeyTyp|e( EInpu|
|00000480| 74 4b 65 79 20 4b 65 79 | 2c 20 6f 70 74 69 6f 6e |tKey Key|, option|
|00000490| 61 6c 20 73 74 72 69 6e | 67 20 55 6e 69 63 6f 64 |al strin|g Unicod|
|000004a0| 65 20 29 3b 0d 0a 0d 0a | 66 75 6e 63 74 69 6f 6e |e );....|function|
|000004b0| 20 62 6f 6f 6c 20 4b 65 | 79 45 76 65 6e 74 28 20 | bool Ke|yEvent( |
|000004c0| 45 49 6e 70 75 74 4b 65 | 79 20 4b 65 79 2c 20 45 |EInputKe|y Key, E|
|000004d0| 49 6e 70 75 74 41 63 74 | 69 6f 6e 20 41 63 74 69 |InputAct|ion Acti|
|000004e0| 6f 6e 2c 20 46 4c 4f 41 | 54 20 44 65 6c 74 61 20 |on, FLOA|T Delta |
|000004f0| 29 0d 0a 7b 0d 0a 09 6c | 6f 63 61 6c 20 62 79 74 |)..{...l|ocal byt|
|00000500| 65 20 6b 3b 0d 0a 09 6b | 20 3d 20 4b 65 79 3b 0d |e k;...k| = Key;.|
|00000510| 0a 09 73 77 69 74 63 68 | 28 41 63 74 69 6f 6e 29 |..switch|(Action)|
|00000520| 0d 0a 09 7b 0d 0a 09 63 | 61 73 65 20 49 53 54 5f |...{...c|ase IST_|
|00000530| 50 72 65 73 73 3a 0d 0a | 09 09 73 77 69 74 63 68 |Press:..|..switch|
|00000540| 28 6b 29 0d 0a 09 09 7b | 0d 0a 09 09 63 61 73 65 |(k)....{|....case|
|00000550| 20 45 49 6e 70 75 74 4b | 65 79 2e 49 4b 5f 45 73 | EInputK|ey.IK_Es|
|00000560| 63 61 70 65 3a 0d 0a 09 | 09 09 69 66 20 28 62 4c |cape:...|..if (bL|
|00000570| 6f 63 6b 65 64 29 0d 0a | 09 09 09 09 72 65 74 75 |ocked)..|....retu|
|00000580| 72 6e 20 74 72 75 65 3b | 0d 0a 0d 0a 09 09 09 62 |rn true;|.......b|
|00000590| 51 75 69 63 6b 4b 65 79 | 45 6e 61 62 6c 65 20 3d |QuickKey|Enable =|
|000005a0| 20 46 61 6c 73 65 3b 0d | 0a 09 09 09 4c 61 75 6e | False;.|....Laun|
|000005b0| 63 68 55 57 69 6e 64 6f | 77 28 29 3b 0d 0a 09 09 |chUWindo|w();....|
|000005c0| 09 72 65 74 75 72 6e 20 | 74 72 75 65 3b 0d 0a 09 |.return |true;...|
|000005d0| 09 63 61 73 65 20 43 6f | 6e 73 6f 6c 65 4b 65 79 |.case Co|nsoleKey|
|000005e0| 3a 20 2f 2f 20 45 49 6e | 70 75 74 4b 65 79 2e 49 |: // EIn|putKey.I|
|000005f0| 4b 5f 54 69 6c 64 65 0d | 0a 09 09 09 69 66 20 28 |K_Tilde.|....if (|
|00000600| 20 62 54 79 70 69 6e 67 | 20 29 0d 0a 09 09 09 09 | bTyping| )......|
|00000610| 72 65 74 75 72 6e 20 66 | 61 6c 73 65 3b 0d 0a 09 |return f|alse;...|
|00000620| 09 09 69 66 20 28 62 4c | 6f 63 6b 65 64 29 0d 0a |..if (bL|ocked)..|
|00000630| 09 09 09 09 72 65 74 75 | 72 6e 20 74 72 75 65 3b |....retu|rn true;|
|00000640| 0d 0a 0d 0a 09 09 09 62 | 51 75 69 63 6b 4b 65 79 |.......b|QuickKey|
|00000650| 45 6e 61 62 6c 65 20 3d | 20 54 72 75 65 3b 0d 0a |Enable =| True;..|
|00000660| 09 09 09 4c 61 75 6e 63 | 68 55 57 69 6e 64 6f 77 |...Launc|hUWindow|
|00000670| 28 29 3b 0d 0a 09 09 09 | 69 66 28 21 62 53 68 6f |();.....|if(!bSho|
|00000680| 77 43 6f 6e 73 6f 6c 65 | 29 0d 0a 09 09 09 09 53 |wConsole|)......S|
|00000690| 68 6f 77 43 6f 6e 73 6f | 6c 65 28 29 3b 0d 0a 09 |howConso|le();...|
|000006a0| 09 09 72 65 74 75 72 6e | 20 74 72 75 65 3b 0d 0a |..return| true;..|
|000006b0| 09 09 7d 0d 0a 09 09 62 | 72 65 61 6b 3b 0d 0a 09 |..}....b|reak;...|
|000006c0| 7d 0d 0a 0d 0a 09 72 65 | 74 75 72 6e 20 46 61 6c |}.....re|turn Fal|
|000006d0| 73 65 3b 0d 0a 09 2f 2f | 21 21 20 62 65 63 61 75 |se;...//|!! becau|
|000006e0| 73 65 20 6f 66 20 43 6f | 6e 73 6f 6c 65 4b 65 79 |se of Co|nsoleKey|
|000006f0| 0d 0a 09 2f 2f 21 21 20 | 72 65 74 75 72 6e 20 53 |...//!! |return S|
|00000700| 75 70 65 72 2e 4b 65 79 | 45 76 65 6e 74 28 4b 65 |uper.Key|Event(Ke|
|00000710| 79 2c 20 41 63 74 69 6f | 6e 2c 20 44 65 6c 74 61 |y, Actio|n, Delta|
|00000720| 29 3b 0d 0a 7d 0d 0a 0d | 0a 66 75 6e 63 74 69 6f |);..}...|.functio|
|00000730| 6e 20 53 68 6f 77 43 6f | 6e 73 6f 6c 65 28 29 0d |n ShowCo|nsole().|
|00000740| 0a 7b 0d 0a 09 62 53 68 | 6f 77 43 6f 6e 73 6f 6c |.{...bSh|owConsol|
|00000750| 65 20 3d 20 74 72 75 65 | 3b 0d 0a 09 69 66 28 62 |e = true|;...if(b|
|00000760| 43 72 65 61 74 65 64 52 | 6f 6f 74 29 0d 0a 09 09 |CreatedR|oot)....|
|00000770| 43 6f 6e 73 6f 6c 65 57 | 69 6e 64 6f 77 2e 53 68 |ConsoleW|indow.Sh|
|00000780| 6f 77 57 69 6e 64 6f 77 | 28 29 3b 0d 0a 7d 0d 0a |owWindow|();..}..|
|00000790| 0d 0a 66 75 6e 63 74 69 | 6f 6e 20 48 69 64 65 43 |..functi|on HideC|
|000007a0| 6f 6e 73 6f 6c 65 28 29 | 0d 0a 7b 0d 0a 09 43 6f |onsole()|..{...Co|
|000007b0| 6e 73 6f 6c 65 4c 69 6e | 65 73 20 3d 20 30 3b 0d |nsoleLin|es = 0;.|
|000007c0| 0a 09 62 53 68 6f 77 43 | 6f 6e 73 6f 6c 65 20 3d |..bShowC|onsole =|
|000007d0| 20 66 61 6c 73 65 3b 0d | 0a 09 69 66 20 28 43 6f | false;.|..if (Co|
|000007e0| 6e 73 6f 6c 65 57 69 6e | 64 6f 77 20 21 3d 20 4e |nsoleWin|dow != N|
|000007f0| 6f 6e 65 29 0d 0a 09 09 | 43 6f 6e 73 6f 6c 65 57 |one)....|ConsoleW|
|00000800| 69 6e 64 6f 77 2e 48 69 | 64 65 57 69 6e 64 6f 77 |indow.Hi|deWindow|
|00000810| 28 29 3b 0d 0a 7d 0d 0a | 0d 0a 65 76 65 6e 74 20 |();..}..|..event |
|00000820| 54 69 63 6b 28 20 66 6c | 6f 61 74 20 44 65 6c 74 |Tick( fl|oat Delt|
|00000830| 61 20 29 0d 0a 7b 0d 0a | 09 53 75 70 65 72 2e 54 |a )..{..|.Super.T|
|00000840| 69 63 6b 28 44 65 6c 74 | 61 29 3b 0d 0a 0d 0a 09 |ick(Delt|a);.....|
|00000850| 69 66 28 62 4c 65 76 65 | 6c 43 68 61 6e 67 65 20 |if(bLeve|lChange |
|00000860| 26 26 20 52 6f 6f 74 20 | 21 3d 20 4e 6f 6e 65 20 |&& Root |!= None |
|00000870| 26 26 20 73 74 72 69 6e | 67 28 56 69 65 77 70 6f |&& strin|g(Viewpo|
|00000880| 72 74 2e 41 63 74 6f 72 | 2e 4c 65 76 65 6c 29 20 |rt.Actor|.Level) |
|00000890| 21 3d 20 4f 6c 64 4c 65 | 76 65 6c 29 0d 0a 09 7b |!= OldLe|vel)...{|
|000008a0| 0d 0a 09 09 4f 6c 64 4c | 65 76 65 6c 20 3d 20 73 |....OldL|evel = s|
|000008b0| 74 72 69 6e 67 28 56 69 | 65 77 70 6f 72 74 2e 41 |tring(Vi|ewport.A|
|000008c0| 63 74 6f 72 2e 4c 65 76 | 65 6c 29 3b 0d 0a 09 09 |ctor.Lev|el);....|
|000008d0| 2f 2f 20 69 66 20 74 68 | 69 73 20 69 73 20 45 6e |// if th|is is En|
|000008e0| 74 72 79 2c 20 77 65 20 | 63 6f 75 6c 64 20 62 65 |try, we |could be|
|000008f0| 20 66 61 6c 6c 69 6e 67 | 20 74 68 72 6f 75 67 68 | falling| through|
|00000900| 20 74 6f 20 61 6e 6f 74 | 68 65 72 20 6c 65 76 65 | to anot|her leve|
|00000910| 6c 2e 2e 2e 0d 0a 09 09 | 69 66 28 56 69 65 77 70 |l.......|if(Viewp|
|00000920| 6f 72 74 2e 41 63 74 6f | 72 2e 4c 65 76 65 6c 20 |ort.Acto|r.Level |
|00000930| 21 3d 20 56 69 65 77 70 | 6f 72 74 2e 41 63 74 6f |!= Viewp|ort.Acto|
|00000940| 72 2e 47 65 74 45 6e 74 | 72 79 4c 65 76 65 6c 28 |r.GetEnt|ryLevel(|
|00000950| 29 29 0d 0a 09 09 09 62 | 4c 65 76 65 6c 43 68 61 |)).....b|LevelCha|
|00000960| 6e 67 65 20 3d 20 46 61 | 6c 73 65 3b 0d 0a 09 09 |nge = Fa|lse;....|
|00000970| 52 6f 6f 74 2e 4e 6f 74 | 69 66 79 41 66 74 65 72 |Root.Not|ifyAfter|
|00000980| 4c 65 76 65 6c 43 68 61 | 6e 67 65 28 29 3b 0d 0a |LevelCha|nge();..|
|00000990| 09 7d 0d 0a 7d 0d 0a 0d | 0a 73 74 61 74 65 20 55 |.}..}...|.state U|
|000009a0| 57 69 6e 64 6f 77 0d 0a | 7b 0d 0a 09 65 76 65 6e |Window..|{...even|
|000009b0| 74 20 54 69 63 6b 28 20 | 66 6c 6f 61 74 20 44 65 |t Tick( |float De|
|000009c0| 6c 74 61 20 29 0d 0a 09 | 7b 0d 0a 09 09 47 6c 6f |lta )...|{....Glo|
|000009d0| 62 61 6c 2e 54 69 63 6b | 28 44 65 6c 74 61 29 3b |bal.Tick|(Delta);|
|000009e0| 0d 0a 09 09 69 66 28 52 | 6f 6f 74 20 21 3d 20 4e |....if(R|oot != N|
|000009f0| 6f 6e 65 29 0d 0a 09 09 | 09 52 6f 6f 74 2e 44 6f |one)....|.Root.Do|
|00000a00| 54 69 63 6b 28 44 65 6c | 74 61 29 3b 0d 0a 09 7d |Tick(Del|ta);...}|
|00000a10| 0d 0a 0d 0a 09 65 76 65 | 6e 74 20 50 6f 73 74 52 |.....eve|nt PostR|
|00000a20| 65 6e 64 65 72 28 20 63 | 61 6e 76 61 73 20 43 61 |ender( c|anvas Ca|
|00000a30| 6e 76 61 73 20 29 0d 0a | 09 7b 0d 0a 20 20 20 20 |nvas )..|.{.. |
|00000a40| 20 20 20 20 53 75 70 65 | 72 2e 50 6f 73 74 52 65 | Supe|r.PostRe|
|00000a50| 6e 64 65 72 28 20 43 61 | 6e 76 61 73 20 29 3b 0d |nder( Ca|nvas );.|
|00000a60| 0a 0d 0a 09 09 69 66 28 | 20 62 54 69 6d 65 44 65 |.....if(| bTimeDe|
|00000a70| 6d 6f 20 29 0d 0a 09 09 | 7b 0d 0a 09 09 09 54 69 |mo )....|{.....Ti|
|00000a80| 6d 65 44 65 6d 6f 43 61 | 6c 63 28 29 3b 0d 0a 09 |meDemoCa|lc();...|
|00000a90| 09 09 54 69 6d 65 44 65 | 6d 6f 52 65 6e 64 65 72 |..TimeDe|moRender|
|00000aa0| 28 20 43 61 6e 76 61 73 | 20 29 3b 0d 0a 09 09 7d |( Canvas| );....}|
|00000ab0| 0d 0a 0d 0a 09 09 69 66 | 28 52 6f 6f 74 20 21 3d |......if|(Root !=|
|00000ac0| 20 4e 6f 6e 65 29 0d 0a | 09 09 09 52 6f 6f 74 2e | None)..|...Root.|
|00000ad0| 62 55 57 69 6e 64 6f 77 | 41 63 74 69 76 65 20 3d |bUWindow|Active =|
|00000ae0| 20 54 72 75 65 3b 0d 0a | 0d 0a 09 09 43 61 6e 76 | True;..|....Canv|
|00000af0| 61 73 2e 53 65 74 41 6c | 70 68 61 53 63 61 6c 65 |as.SetAl|phaScale|
|00000b00| 28 31 2e 66 29 3b 0d 0a | 09 09 52 65 6e 64 65 72 |(1.f);..|..Render|
|00000b10| 55 57 69 6e 64 6f 77 28 | 20 43 61 6e 76 61 73 20 |UWindow(| Canvas |
|00000b20| 29 3b 0d 0a 09 7d 0d 0a | 0d 0a 09 65 76 65 6e 74 |);...}..|...event|
|00000b30| 20 62 6f 6f 6c 20 4b 65 | 79 54 79 70 65 28 20 45 | bool Ke|yType( E|
|00000b40| 49 6e 70 75 74 4b 65 79 | 20 4b 65 79 2c 20 6f 70 |InputKey| Key, op|
|00000b50| 74 69 6f 6e 61 6c 20 73 | 74 72 69 6e 67 20 55 6e |tional s|tring Un|
|00000b60| 69 63 6f 64 65 20 29 0d | 0a 09 7b 0d 0a 09 09 69 |icode ).|..{....i|
|00000b70| 66 20 28 52 6f 6f 74 20 | 21 3d 20 4e 6f 6e 65 29 |f (Root |!= None)|
|00000b80| 0d 0a 09 09 09 52 6f 6f | 74 2e 57 69 6e 64 6f 77 |.....Roo|t.Window|
|00000b90| 45 76 65 6e 74 28 57 4d | 5f 4b 65 79 54 79 70 65 |Event(WM|_KeyType|
|00000ba0| 2c 20 4e 6f 6e 65 2c 20 | 4d 6f 75 73 65 58 2c 20 |, None, |MouseX, |
|00000bb0| 4d 6f 75 73 65 59 2c 20 | 4b 65 79 29 3b 0d 0a 09 |MouseY, |Key);...|
|00000bc0| 09 72 65 74 75 72 6e 20 | 54 72 75 65 3b 0d 0a 09 |.return |True;...|
|00000bd0| 7d 0d 0a 0d 0a 09 65 76 | 65 6e 74 20 62 6f 6f 6c |}.....ev|ent bool|
|00000be0| 20 4b 65 79 45 76 65 6e | 74 28 20 45 49 6e 70 75 | KeyEven|t( EInpu|
|00000bf0| 74 4b 65 79 20 4b 65 79 | 2c 20 45 49 6e 70 75 74 |tKey Key|, EInput|
|00000c00| 41 63 74 69 6f 6e 20 41 | 63 74 69 6f 6e 2c 20 46 |Action A|ction, F|
|00000c10| 4c 4f 41 54 20 44 65 6c | 74 61 20 29 0d 0a 09 7b |LOAT Del|ta )...{|
|00000c20| 0d 0a 09 09 6c 6f 63 61 | 6c 20 62 79 74 65 20 6b |....loca|l byte k|
|00000c30| 3b 0d 0a 09 09 6b 20 3d | 20 4b 65 79 3b 0d 0a 09 |;....k =| Key;...|
|00000c40| 09 73 77 69 74 63 68 20 | 28 41 63 74 69 6f 6e 29 |.switch |(Action)|
|00000c50| 0d 0a 09 09 7b 0d 0a 09 | 09 63 61 73 65 20 49 53 |....{...|.case IS|
|00000c60| 54 5f 52 65 6c 65 61 73 | 65 3a 0d 0a 09 09 09 73 |T_Releas|e:.....s|
|00000c70| 77 69 74 63 68 20 28 6b | 29 0d 0a 09 09 09 7b 0d |witch (k|).....{.|
|00000c80| 0a 09 09 09 63 61 73 65 | 20 45 49 6e 70 75 74 4b |....case| EInputK|
|00000c90| 65 79 2e 49 4b 5f 4c 65 | 66 74 4d 6f 75 73 65 3a |ey.IK_Le|ftMouse:|
|00000ca0| 0d 0a 09 09 09 09 69 66 | 28 52 6f 6f 74 20 21 3d |......if|(Root !=|
|00000cb0| 20 4e 6f 6e 65 29 0d 0a | 09 09 09 09 09 52 6f 6f | None)..|.....Roo|
|00000cc0| 74 2e 57 69 6e 64 6f 77 | 45 76 65 6e 74 28 57 4d |t.Window|Event(WM|
|00000cd0| 5f 4c 4d 6f 75 73 65 55 | 70 2c 20 4e 6f 6e 65 2c |_LMouseU|p, None,|
|00000ce0| 20 4d 6f 75 73 65 58 2c | 20 4d 6f 75 73 65 59 2c | MouseX,| MouseY,|
|00000cf0| 20 4b 65 79 29 3b 0d 0a | 09 09 09 09 62 72 65 61 | Key);..|....brea|
|00000d00| 6b 3b 0d 0a 09 09 09 63 | 61 73 65 20 45 49 6e 70 |k;.....c|ase EInp|
|00000d10| 75 74 4b 65 79 2e 49 4b | 5f 52 69 67 68 74 4d 6f |utKey.IK|_RightMo|
|00000d20| 75 73 65 3a 0d 0a 09 09 | 09 09 69 66 28 52 6f 6f |use:....|..if(Roo|
|00000d30| 74 20 21 3d 20 4e 6f 6e | 65 29 0d 0a 09 09 09 09 |t != Non|e)......|
|00000d40| 09 52 6f 6f 74 2e 57 69 | 6e 64 6f 77 45 76 65 6e |.Root.Wi|ndowEven|
|00000d50| 74 28 57 4d 5f 52 4d 6f | 75 73 65 55 70 2c 20 4e |t(WM_RMo|useUp, N|
|00000d60| 6f 6e 65 2c 20 4d 6f 75 | 73 65 58 2c 20 4d 6f 75 |one, Mou|seX, Mou|
|00000d70| 73 65 59 2c 20 4b 65 79 | 29 3b 0d 0a 09 09 09 09 |seY, Key|);......|
|00000d80| 62 72 65 61 6b 3b 0d 0a | 09 09 09 63 61 73 65 20 |break;..|...case |
|00000d90| 45 49 6e 70 75 74 4b 65 | 79 2e 49 4b 5f 4d 69 64 |EInputKe|y.IK_Mid|
|00000da0| 64 6c 65 4d 6f 75 73 65 | 3a 0d 0a 09 09 09 09 69 |dleMouse|:......i|
|00000db0| 66 28 52 6f 6f 74 20 21 | 3d 20 4e 6f 6e 65 29 0d |f(Root !|= None).|
|00000dc0| 0a 09 09 09 09 09 52 6f | 6f 74 2e 57 69 6e 64 6f |......Ro|ot.Windo|
|00000dd0| 77 45 76 65 6e 74 28 57 | 4d 5f 4d 4d 6f 75 73 65 |wEvent(W|M_MMouse|
|00000de0| 55 70 2c 20 4e 6f 6e 65 | 2c 20 4d 6f 75 73 65 58 |Up, None|, MouseX|
|00000df0| 2c 20 4d 6f 75 73 65 59 | 2c 20 4b 65 79 29 3b 0d |, MouseY|, Key);.|
|00000e00| 0a 09 09 09 09 62 72 65 | 61 6b 3b 0d 0a 09 09 09 |.....bre|ak;.....|
|00000e10| 64 65 66 61 75 6c 74 3a | 0d 0a 09 09 09 09 69 66 |default:|......if|
|00000e20| 28 52 6f 6f 74 20 21 3d | 20 4e 6f 6e 65 29 0d 0a |(Root !=| None)..|
|00000e30| 09 09 09 09 09 52 6f 6f | 74 2e 57 69 6e 64 6f 77 |.....Roo|t.Window|
|00000e40| 45 76 65 6e 74 28 57 4d | 5f 4b 65 79 55 70 2c 20 |Event(WM|_KeyUp, |
|00000e50| 4e 6f 6e 65 2c 20 4d 6f | 75 73 65 58 2c 20 4d 6f |None, Mo|useX, Mo|
|00000e60| 75 73 65 59 2c 20 4b 65 | 79 29 3b 0d 0a 09 09 09 |useY, Ke|y);.....|
|00000e70| 09 62 72 65 61 6b 3b 0d | 0a 09 09 09 7d 0d 0a 09 |.break;.|....}...|
|00000e80| 09 09 62 72 65 61 6b 3b | 0d 0a 0d 0a 09 09 63 61 |..break;|......ca|
|00000e90| 73 65 20 49 53 54 5f 50 | 72 65 73 73 3a 0d 0a 09 |se IST_P|ress:...|
|00000ea0| 09 09 73 77 69 74 63 68 | 20 28 6b 29 0d 0a 09 09 |..switch| (k)....|
|00000eb0| 09 7b 0d 0a 09 09 09 63 | 61 73 65 20 45 49 6e 70 |.{.....c|ase EInp|
|00000ec0| 75 74 4b 65 79 2e 49 4b | 5f 46 39 3a 09 2f 2f 20 |utKey.IK|_F9:.// |
|00000ed0| 53 63 72 65 65 6e 73 68 | 6f 74 0d 0a 09 09 09 09 |Screensh|ot......|
|00000ee0| 72 65 74 75 72 6e 20 47 | 6c 6f 62 61 6c 2e 4b 65 |return G|lobal.Ke|
|00000ef0| 79 45 76 65 6e 74 28 4b | 65 79 2c 20 41 63 74 69 |yEvent(K|ey, Acti|
|00000f00| 6f 6e 2c 20 44 65 6c 74 | 61 29 3b 0d 0a 09 09 09 |on, Delt|a);.....|
|00000f10| 09 62 72 65 61 6b 3b 0d | 0a 09 09 09 63 61 73 65 |.break;.|....case|
|00000f20| 20 43 6f 6e 73 6f 6c 65 | 4b 65 79 3a 20 2f 2f 49 | Console|Key: //I|
|00000f30| 4b 5f 54 69 6c 64 65 3a | 0d 0a 09 09 09 09 69 66 |K_Tilde:|......if|
|00000f40| 20 28 20 62 4c 6f 63 6b | 65 64 20 29 0d 0a 09 09 | ( bLock|ed )....|
|00000f50| 09 09 09 72 65 74 75 72 | 6e 20 54 52 55 45 3b 0d |...retur|n TRUE;.|
|00000f60| 0a 0d 0a 09 09 09 09 69 | 66 20 28 62 53 68 6f 77 |.......i|f (bShow|
|00000f70| 43 6f 6e 73 6f 6c 65 29 | 0d 0a 09 09 09 09 7b 0d |Console)|......{.|
|00000f80| 0a 09 09 09 09 09 48 69 | 64 65 43 6f 6e 73 6f 6c |......Hi|deConsol|
|00000f90| 65 28 29 3b 0d 0a 09 09 | 09 09 09 69 66 28 62 51 |e();....|...if(bQ|
|00000fa0| 75 69 63 6b 4b 65 79 45 | 6e 61 62 6c 65 29 0d 0a |uickKeyE|nable)..|
|00000fb0| 09 09 09 09 09 09 43 6c | 6f 73 65 55 57 69 6e 64 |......Cl|oseUWind|
|00000fc0| 6f 77 28 29 3b 0d 0a 09 | 09 09 09 7d 0d 0a 09 09 |ow();...|...}....|
|00000fd0| 09 09 65 6c 73 65 0d 0a | 09 09 09 09 7b 0d 0a 09 |..else..|....{...|
|00000fe0| 09 09 09 09 69 66 28 52 | 6f 6f 74 2e 62 41 6c 6c |....if(R|oot.bAll|
|00000ff0| 6f 77 43 6f 6e 73 6f 6c | 65 29 0d 0a 09 09 09 09 |owConsol|e)......|
|00001000| 09 09 53 68 6f 77 43 6f | 6e 73 6f 6c 65 28 29 3b |..ShowCo|nsole();|
|00001010| 0d 0a 09 09 09 09 09 65 | 6c 73 65 0d 0a 09 09 09 |.......e|lse.....|
|00001020| 09 09 09 52 6f 6f 74 2e | 57 69 6e 64 6f 77 45 76 |...Root.|WindowEv|
|00001030| 65 6e 74 28 57 4d 5f 4b | 65 79 44 6f 77 6e 2c 20 |ent(WM_K|eyDown, |
|00001040| 4e 6f 6e 65 2c 20 4d 6f | 75 73 65 58 2c 20 4d 6f |None, Mo|useX, Mo|
|00001050| 75 73 65 59 2c 20 4b 65 | 79 29 3b 0d 0a 09 09 09 |useY, Ke|y);.....|
|00001060| 09 7d 0d 0a 09 09 09 09 | 62 72 65 61 6b 3b 0d 0a |.}......|break;..|
|00001070| 09 09 09 63 61 73 65 20 | 45 49 6e 70 75 74 4b 65 |...case |EInputKe|
|00001080| 79 2e 49 4b 5f 45 73 63 | 61 70 65 3a 0d 0a 09 09 |y.IK_Esc|ape:....|
|00001090| 09 09 69 66 28 52 6f 6f | 74 20 21 3d 20 4e 6f 6e |..if(Roo|t != Non|
|000010a0| 65 29 0d 0a 09 09 09 09 | 09 52 6f 6f 74 2e 43 6c |e)......|.Root.Cl|
|000010b0| 6f 73 65 41 63 74 69 76 | 65 57 69 6e 64 6f 77 28 |oseActiv|eWindow(|
|000010c0| 29 3b 0d 0a 09 09 09 09 | 62 72 65 61 6b 3b 0d 0a |);......|break;..|
|000010d0| 09 09 09 63 61 73 65 20 | 45 49 6e 70 75 74 4b 65 |...case |EInputKe|
|000010e0| 79 2e 49 4b 5f 4c 65 66 | 74 4d 6f 75 73 65 3a 0d |y.IK_Lef|tMouse:.|
|000010f0| 0a 09 09 09 09 69 66 28 | 52 6f 6f 74 20 21 3d 20 |.....if(|Root != |
|00001100| 4e 6f 6e 65 29 0d 0a 09 | 09 09 09 09 52 6f 6f 74 |None)...|....Root|
|00001110| 2e 57 69 6e 64 6f 77 45 | 76 65 6e 74 28 57 4d 5f |.WindowE|vent(WM_|
|00001120| 4c 4d 6f 75 73 65 44 6f | 77 6e 2c 20 4e 6f 6e 65 |LMouseDo|wn, None|
|00001130| 2c 20 4d 6f 75 73 65 58 | 2c 20 4d 6f 75 73 65 59 |, MouseX|, MouseY|
|00001140| 2c 20 4b 65 79 29 3b 0d | 0a 09 09 09 09 62 72 65 |, Key);.|.....bre|
|00001150| 61 6b 3b 0d 0a 09 09 09 | 63 61 73 65 20 45 49 6e |ak;.....|case EIn|
|00001160| 70 75 74 4b 65 79 2e 49 | 4b 5f 52 69 67 68 74 4d |putKey.I|K_RightM|
|00001170| 6f 75 73 65 3a 0d 0a 09 | 09 09 09 69 66 28 52 6f |ouse:...|...if(Ro|
|00001180| 6f 74 20 21 3d 20 4e 6f | 6e 65 29 0d 0a 09 09 09 |ot != No|ne).....|
|00001190| 09 09 52 6f 6f 74 2e 57 | 69 6e 64 6f 77 45 76 65 |..Root.W|indowEve|
|000011a0| 6e 74 28 57 4d 5f 52 4d | 6f 75 73 65 44 6f 77 6e |nt(WM_RM|ouseDown|
|000011b0| 2c 20 4e 6f 6e 65 2c 20 | 4d 6f 75 73 65 58 2c 20 |, None, |MouseX, |
|000011c0| 4d 6f 75 73 65 59 2c 20 | 4b 65 79 29 3b 0d 0a 09 |MouseY, |Key);...|
|000011d0| 09 09 09 62 72 65 61 6b | 3b 0d 0a 09 09 09 63 61 |...break|;.....ca|
|000011e0| 73 65 20 45 49 6e 70 75 | 74 4b 65 79 2e 49 4b 5f |se EInpu|tKey.IK_|
|000011f0| 4d 69 64 64 6c 65 4d 6f | 75 73 65 3a 0d 0a 09 09 |MiddleMo|use:....|
|00001200| 09 09 69 66 28 52 6f 6f | 74 20 21 3d 20 4e 6f 6e |..if(Roo|t != Non|
|00001210| 65 29 0d 0a 09 09 09 09 | 09 52 6f 6f 74 2e 57 69 |e)......|.Root.Wi|
|00001220| 6e 64 6f 77 45 76 65 6e | 74 28 57 4d 5f 4d 4d 6f |ndowEven|t(WM_MMo|
|00001230| 75 73 65 44 6f 77 6e 2c | 20 4e 6f 6e 65 2c 20 4d |useDown,| None, M|
|00001240| 6f 75 73 65 58 2c 20 4d | 6f 75 73 65 59 2c 20 4b |ouseX, M|ouseY, K|
|00001250| 65 79 29 3b 0d 0a 09 09 | 09 09 62 72 65 61 6b 3b |ey);....|..break;|
|00001260| 0d 0a 09 09 09 64 65 66 | 61 75 6c 74 3a 0d 0a 09 |.....def|ault:...|
|00001270| 09 09 09 69 66 28 52 6f | 6f 74 20 21 3d 20 4e 6f |...if(Ro|ot != No|
|00001280| 6e 65 29 0d 0a 09 09 09 | 09 09 52 6f 6f 74 2e 57 |ne).....|..Root.W|
|00001290| 69 6e 64 6f 77 45 76 65 | 6e 74 28 57 4d 5f 4b 65 |indowEve|nt(WM_Ke|
|000012a0| 79 44 6f 77 6e 2c 20 4e | 6f 6e 65 2c 20 4d 6f 75 |yDown, N|one, Mou|
|000012b0| 73 65 58 2c 20 4d 6f 75 | 73 65 59 2c 20 4b 65 79 |seX, Mou|seY, Key|
|000012c0| 29 3b 0d 0a 09 09 09 09 | 62 72 65 61 6b 3b 0d 0a |);......|break;..|
|000012d0| 09 09 09 7d 0d 0a 09 09 | 09 62 72 65 61 6b 3b 0d |...}....|.break;.|
|000012e0| 0a 09 09 63 61 73 65 20 | 49 53 54 5f 41 78 69 73 |...case |IST_Axis|
|000012f0| 3a 0d 0a 09 09 09 73 77 | 69 74 63 68 20 28 4b 65 |:.....sw|itch (Ke|
|00001300| 79 29 0d 0a 09 09 09 7b | 0d 0a 09 09 09 63 61 73 |y).....{|.....cas|
|00001310| 65 20 49 4b 5f 4d 6f 75 | 73 65 58 3a 0d 0a 09 09 |e IK_Mou|seX:....|
|00001320| 09 09 69 66 20 28 20 21 | 52 6f 6f 74 2e 62 48 69 |..if ( !|Root.bHi|
|00001330| 64 65 4d 6f 75 73 65 20 | 29 0d 0a 09 09 09 09 09 |deMouse |).......|
|00001340| 4d 6f 75 73 65 58 20 3d | 20 4d 6f 75 73 65 58 20 |MouseX =| MouseX |
|00001350| 2b 20 28 4d 6f 75 73 65 | 53 63 61 6c 65 20 2a 20 |+ (Mouse|Scale * |
|00001360| 44 65 6c 74 61 29 3b 0d | 0a 09 09 09 09 62 72 65 |Delta);.|.....bre|
|00001370| 61 6b 3b 0d 0a 09 09 09 | 63 61 73 65 20 49 4b 5f |ak;.....|case IK_|
|00001380| 4d 6f 75 73 65 59 3a 0d | 0a 09 09 09 09 69 66 20 |MouseY:.|.....if |
|00001390| 28 20 21 52 6f 6f 74 2e | 62 48 69 64 65 4d 6f 75 |( !Root.|bHideMou|
|000013a0| 73 65 20 29 0d 0a 09 09 | 09 09 09 4d 6f 75 73 65 |se )....|...Mouse|
|000013b0| 59 20 3d 20 4d 6f 75 73 | 65 59 20 2d 20 28 4d 6f |Y = Mous|eY - (Mo|
|000013c0| 75 73 65 53 63 61 6c 65 | 20 2a 20 44 65 6c 74 61 |useScale| * Delta|
|000013d0| 29 3b 0d 0a 09 09 09 09 | 62 72 65 61 6b 3b 0d 0a |);......|break;..|
|000013e0| 09 09 09 7d 0d 0a 09 09 | 64 65 66 61 75 6c 74 3a |...}....|default:|
|000013f0| 0d 0a 09 09 09 62 72 65 | 61 6b 3b 0d 0a 09 09 7d |.....bre|ak;....}|
|00001400| 0d 0a 0d 0a 09 09 72 65 | 74 75 72 6e 20 74 72 75 |......re|turn tru|
|00001410| 65 3b 0d 0a 09 7d 0d 0a | 0d 0a 42 65 67 69 6e 3a |e;...}..|..Begin:|
|00001420| 0d 0a 7d 0d 0a 0d 0a 66 | 75 6e 63 74 69 6f 6e 20 |..}....f|unction |
|00001430| 54 6f 67 67 6c 65 55 57 | 69 6e 64 6f 77 28 29 0d |ToggleUW|indow().|
|00001440| 0a 7b 0d 0a 7d 0d 0a 0d | 0a 66 75 6e 63 74 69 6f |.{..}...|.functio|
|00001450| 6e 20 4c 61 75 6e 63 68 | 55 57 69 6e 64 6f 77 28 |n Launch|UWindow(|
|00001460| 29 0d 0a 7b 0d 0a 09 56 | 69 65 77 70 6f 72 74 2e |)..{...V|iewport.|
|00001470| 62 53 75 73 70 65 6e 64 | 50 72 65 63 61 63 68 69 |bSuspend|Precachi|
|00001480| 6e 67 20 3d 20 54 72 75 | 65 3b 0d 0a 09 62 55 57 |ng = Tru|e;...bUW|
|00001490| 69 6e 64 6f 77 41 63 74 | 69 76 65 20 3d 20 21 62 |indowAct|ive = !b|
|000014a0| 51 75 69 63 6b 4b 65 79 | 45 6e 61 62 6c 65 3b 0d |QuickKey|Enable;.|
|000014b0| 0a 09 56 69 65 77 70 6f | 72 74 2e 62 53 68 6f 77 |..Viewpo|rt.bShow|
|000014c0| 57 69 6e 64 6f 77 73 4d | 6f 75 73 65 20 3d 20 46 |WindowsM|ouse = F|
|000014d0| 61 6c 73 65 3b 0d 0a 0d | 0a 09 69 66 28 62 51 75 |alse;...|..if(bQu|
|000014e0| 69 63 6b 4b 65 79 45 6e | 61 62 6c 65 29 0d 0a 09 |ickKeyEn|able)...|
|000014f0| 09 62 4e 6f 44 72 61 77 | 57 6f 72 6c 64 20 3d 20 |.bNoDraw|World = |
|00001500| 46 61 6c 73 65 3b 0d 0a | 09 65 6c 73 65 0d 0a 09 |False;..|.else...|
|00001510| 7b 0d 0a 09 09 69 66 28 | 56 69 65 77 70 6f 72 74 |{....if(|Viewport|
|00001520| 2e 41 63 74 6f 72 2e 4c | 65 76 65 6c 2e 4e 65 74 |.Actor.L|evel.Net|
|00001530| 4d 6f 64 65 20 3d 3d 20 | 4e 4d 5f 53 74 61 6e 64 |Mode == |NM_Stand|
|00001540| 61 6c 6f 6e 65 29 0d 0a | 09 09 09 56 69 65 77 70 |alone)..|...Viewp|
|00001550| 6f 72 74 2e 41 63 74 6f | 72 2e 53 65 74 50 61 75 |ort.Acto|r.SetPau|
|00001560| 73 65 28 20 54 72 75 65 | 20 29 3b 0d 0a 09 09 62 |se( True| );....b|
|00001570| 4e 6f 44 72 61 77 57 6f | 72 6c 64 20 3d 20 53 68 |NoDrawWo|rld = Sh|
|00001580| 6f 77 44 65 73 6b 74 6f | 70 3b 0d 0a 09 7d 0d 0a |owDeskto|p;...}..|
|00001590| 09 69 66 28 52 6f 6f 74 | 20 21 3d 20 4e 6f 6e 65 |.if(Root| != None|
|000015a0| 29 0d 0a 09 09 52 6f 6f | 74 2e 62 57 69 6e 64 6f |)....Roo|t.bWindo|
|000015b0| 77 56 69 73 69 62 6c 65 | 20 3d 20 54 72 75 65 3b |wVisible| = True;|
|000015c0| 0d 0a 0d 0a 09 47 6f 74 | 6f 53 74 61 74 65 28 27 |.....Got|oState('|
|000015d0| 55 57 69 6e 64 6f 77 27 | 29 3b 0d 0a 7d 0d 0a 0d |UWindow'|);..}...|
|000015e0| 0a 66 75 6e 63 74 69 6f | 6e 20 43 6c 6f 73 65 55 |.functio|n CloseU|
|000015f0| 57 69 6e 64 6f 77 28 29 | 0d 0a 7b 0d 0a 09 69 66 |Window()|..{...if|
|00001600| 28 21 62 51 75 69 63 6b | 4b 65 79 45 6e 61 62 6c |(!bQuick|KeyEnabl|
|00001610| 65 29 0d 0a 09 09 56 69 | 65 77 70 6f 72 74 2e 41 |e)....Vi|ewport.A|
|00001620| 63 74 6f 72 2e 53 65 74 | 50 61 75 73 65 28 20 46 |ctor.Set|Pause( F|
|00001630| 61 6c 73 65 20 29 3b 0d | 0a 0d 0a 09 62 4e 6f 44 |alse );.|....bNoD|
|00001640| 72 61 77 57 6f 72 6c 64 | 20 3d 20 46 61 6c 73 65 |rawWorld| = False|
|00001650| 3b 0d 0a 09 62 51 75 69 | 63 6b 4b 65 79 45 6e 61 |;...bQui|ckKeyEna|
|00001660| 62 6c 65 20 3d 20 46 61 | 6c 73 65 3b 0d 0a 09 62 |ble = Fa|lse;...b|
|00001670| 55 57 69 6e 64 6f 77 41 | 63 74 69 76 65 20 3d 20 |UWindowA|ctive = |
|00001680| 46 61 6c 73 65 3b 0d 0a | 09 56 69 65 77 70 6f 72 |False;..|.Viewpor|
|00001690| 74 2e 62 53 68 6f 77 57 | 69 6e 64 6f 77 73 4d 6f |t.bShowW|indowsMo|
|000016a0| 75 73 65 20 3d 20 46 61 | 6c 73 65 3b 0d 0a 0d 0a |use = Fa|lse;....|
|000016b0| 09 69 66 28 52 6f 6f 74 | 20 21 3d 20 4e 6f 6e 65 |.if(Root| != None|
|000016c0| 29 0d 0a 09 09 52 6f 6f | 74 2e 62 57 69 6e 64 6f |)....Roo|t.bWindo|
|000016d0| 77 56 69 73 69 62 6c 65 | 20 3d 20 46 61 6c 73 65 |wVisible| = False|
|000016e0| 3b 0d 0a 09 47 6f 74 6f | 53 74 61 74 65 28 27 27 |;...Goto|State(''|
|000016f0| 29 3b 0d 0a 09 56 69 65 | 77 70 6f 72 74 2e 62 53 |);...Vie|wport.bS|
|00001700| 75 73 70 65 6e 64 50 72 | 65 63 61 63 68 69 6e 67 |uspendPr|ecaching|
|00001710| 20 3d 20 46 61 6c 73 65 | 3b 0d 0a 7d 0d 0a 0d 0a | = False|;..}....|
|00001720| 66 75 6e 63 74 69 6f 6e | 20 43 72 65 61 74 65 52 |function| CreateR|
|00001730| 6f 6f 74 57 69 6e 64 6f | 77 28 43 61 6e 76 61 73 |ootWindo|w(Canvas|
|00001740| 20 43 61 6e 76 61 73 29 | 0d 0a 7b 0d 0a 09 6c 6f | Canvas)|..{...lo|
|00001750| 63 61 6c 20 69 6e 74 20 | 69 3b 0d 0a 0d 0a 09 69 |cal int |i;.....i|
|00001760| 66 28 43 61 6e 76 61 73 | 20 21 3d 20 4e 6f 6e 65 |f(Canvas| != None|
|00001770| 29 0d 0a 09 7b 0d 0a 09 | 09 4f 6c 64 43 6c 69 70 |)...{...|.OldClip|
|00001780| 58 20 3d 20 43 61 6e 76 | 61 73 2e 43 6c 69 70 58 |X = Canv|as.ClipX|
|00001790| 3b 0d 0a 09 09 4f 6c 64 | 43 6c 69 70 59 20 3d 20 |;....Old|ClipY = |
|000017a0| 43 61 6e 76 61 73 2e 43 | 6c 69 70 59 3b 0d 0a 09 |Canvas.C|lipY;...|
|000017b0| 7d 0d 0a 09 65 6c 73 65 | 0d 0a 09 7b 0d 0a 09 09 |}...else|...{....|
|000017c0| 4f 6c 64 43 6c 69 70 58 | 20 3d 20 30 3b 0d 0a 09 |OldClipX| = 0;...|
|000017d0| 09 4f 6c 64 43 6c 69 70 | 59 20 3d 20 30 3b 0d 0a |.OldClip|Y = 0;..|
|000017e0| 09 7d 0d 0a 0d 0a 09 52 | 6f 6f 74 20 3d 20 4e 65 |.}.....R|oot = Ne|
|000017f0| 77 28 4e 6f 6e 65 29 20 | 63 6c 61 73 73 3c 55 57 |w(None) |class<UW|
|00001800| 69 6e 64 6f 77 52 6f 6f | 74 57 69 6e 64 6f 77 3e |indowRoo|tWindow>|
|00001810| 28 44 79 6e 61 6d 69 63 | 4c 6f 61 64 4f 62 6a 65 |(Dynamic|LoadObje|
|00001820| 63 74 28 52 6f 6f 74 57 | 69 6e 64 6f 77 2c 20 63 |ct(RootW|indow, c|
|00001830| 6c 61 73 73 27 43 6c 61 | 73 73 27 29 29 3b 0d 0a |lass'Cla|ss'));..|
|00001840| 0d 0a 09 52 6f 6f 74 2e | 42 65 67 69 6e 50 6c 61 |...Root.|BeginPla|
|00001850| 79 28 29 3b 0d 0a 09 52 | 6f 6f 74 2e 57 69 6e 54 |y();...R|oot.WinT|
|00001860| 6f 70 20 3d 20 30 3b 0d | 0a 09 52 6f 6f 74 2e 57 |op = 0;.|..Root.W|
|00001870| 69 6e 4c 65 66 74 20 3d | 20 30 3b 0d 0a 0d 0a 09 |inLeft =| 0;.....|
|00001880| 69 66 28 43 61 6e 76 61 | 73 20 21 3d 20 4e 6f 6e |if(Canva|s != Non|
|00001890| 65 29 0d 0a 09 7b 0d 0a | 09 09 52 6f 6f 74 2e 57 |e)...{..|..Root.W|
|000018a0| 69 6e 57 69 64 74 68 20 | 3d 20 43 61 6e 76 61 73 |inWidth |= Canvas|
|000018b0| 2e 43 6c 69 70 58 20 2f | 20 52 6f 6f 74 2e 47 55 |.ClipX /| Root.GU|
|000018c0| 49 53 63 61 6c 65 3b 0d | 0a 09 09 52 6f 6f 74 2e |IScale;.|...Root.|
|000018d0| 57 69 6e 48 65 69 67 68 | 74 20 3d 20 43 61 6e 76 |WinHeigh|t = Canv|
|000018e0| 61 73 2e 43 6c 69 70 59 | 20 2f 20 52 6f 6f 74 2e |as.ClipY| / Root.|
|000018f0| 47 55 49 53 63 61 6c 65 | 3b 0d 0a 09 09 52 6f 6f |GUIScale|;....Roo|
|00001900| 74 2e 52 65 61 6c 57 69 | 64 74 68 20 3d 20 43 61 |t.RealWi|dth = Ca|
|00001910| 6e 76 61 73 2e 43 6c 69 | 70 58 3b 0d 0a 09 09 52 |nvas.Cli|pX;....R|
|00001920| 6f 6f 74 2e 52 65 61 6c | 48 65 69 67 68 74 20 3d |oot.Real|Height =|
|00001930| 20 43 61 6e 76 61 73 2e | 43 6c 69 70 59 3b 0d 0a | Canvas.|ClipY;..|
|00001940| 09 7d 0d 0a 09 65 6c 73 | 65 0d 0a 09 7b 0d 0a 09 |.}...els|e...{...|
|00001950| 09 52 6f 6f 74 2e 57 69 | 6e 57 69 64 74 68 20 3d |.Root.Wi|nWidth =|
|00001960| 20 30 3b 0d 0a 09 09 52 | 6f 6f 74 2e 57 69 6e 48 | 0;....R|oot.WinH|
|00001970| 65 69 67 68 74 20 3d 20 | 30 3b 0d 0a 09 09 52 6f |eight = |0;....Ro|
|00001980| 6f 74 2e 52 65 61 6c 57 | 69 64 74 68 20 3d 20 30 |ot.RealW|idth = 0|
|00001990| 3b 0d 0a 09 09 52 6f 6f | 74 2e 52 65 61 6c 48 65 |;....Roo|t.RealHe|
|000019a0| 69 67 68 74 20 3d 20 30 | 3b 0d 0a 09 7d 0d 0a 0d |ight = 0|;...}...|
|000019b0| 0a 09 52 6f 6f 74 2e 43 | 6c 69 70 70 69 6e 67 52 |..Root.C|lippingR|
|000019c0| 65 67 69 6f 6e 2e 58 20 | 3d 20 30 3b 0d 0a 09 52 |egion.X |= 0;...R|
|000019d0| 6f 6f 74 2e 43 6c 69 70 | 70 69 6e 67 52 65 67 69 |oot.Clip|pingRegi|
|000019e0| 6f 6e 2e 59 20 3d 20 30 | 3b 0d 0a 09 52 6f 6f 74 |on.Y = 0|;...Root|
|000019f0| 2e 43 6c 69 70 70 69 6e | 67 52 65 67 69 6f 6e 2e |.Clippin|gRegion.|
|00001a00| 57 20 3d 20 52 6f 6f 74 | 2e 57 69 6e 57 69 64 74 |W = Root|.WinWidt|
|00001a10| 68 3b 0d 0a 09 52 6f 6f | 74 2e 43 6c 69 70 70 69 |h;...Roo|t.Clippi|
|00001a20| 6e 67 52 65 67 69 6f 6e | 2e 48 20 3d 20 52 6f 6f |ngRegion|.H = Roo|
|00001a30| 74 2e 57 69 6e 48 65 69 | 67 68 74 3b 0d 0a 0d 0a |t.WinHei|ght;....|
|00001a40| 09 52 6f 6f 74 2e 43 6f | 6e 73 6f 6c 65 20 3d 20 |.Root.Co|nsole = |
|00001a50| 53 65 6c 66 3b 0d 0a 0d | 0a 09 52 6f 6f 74 2e 62 |Self;...|..Root.b|
|00001a60| 55 57 69 6e 64 6f 77 41 | 63 74 69 76 65 20 3d 20 |UWindowA|ctive = |
|00001a70| 62 55 57 69 6e 64 6f 77 | 41 63 74 69 76 65 3b 0d |bUWindow|Active;.|
|00001a80| 0a 0d 0a 09 52 6f 6f 74 | 2e 43 72 65 61 74 65 64 |....Root|.Created|
|00001a90| 28 29 3b 0d 0a 09 62 43 | 72 65 61 74 65 64 52 6f |();...bC|reatedRo|
|00001aa0| 6f 74 20 3d 20 54 72 75 | 65 3b 0d 0a 0d 0a 09 2f |ot = Tru|e;...../|
|00001ab0| 2f 20 43 72 65 61 74 65 | 20 74 68 65 20 63 6f 6e |/ Create| the con|
|00001ac0| 73 6f 6c 65 20 77 69 6e | 64 6f 77 2e 0d 0a 09 43 |sole win|dow....C|
|00001ad0| 6f 6e 73 6f 6c 65 57 69 | 6e 64 6f 77 20 3d 20 55 |onsoleWi|ndow = U|
|00001ae0| 57 69 6e 64 6f 77 43 6f | 6e 73 6f 6c 65 57 69 6e |WindowCo|nsoleWin|
|00001af0| 64 6f 77 28 52 6f 6f 74 | 2e 43 72 65 61 74 65 57 |dow(Root|.CreateW|
|00001b00| 69 6e 64 6f 77 28 43 6f | 6e 73 6f 6c 65 43 6c 61 |indow(Co|nsoleCla|
|00001b10| 73 73 2c 20 31 30 30 2c | 20 31 30 30 2c 20 32 30 |ss, 100,| 100, 20|
|00001b20| 30 2c 20 32 30 30 29 29 | 3b 0d 0a 09 69 66 28 21 |0, 200))|;...if(!|
|00001b30| 62 53 68 6f 77 43 6f 6e | 73 6f 6c 65 29 0d 0a 09 |bShowCon|sole)...|
|00001b40| 09 48 69 64 65 43 6f 6e | 73 6f 6c 65 28 29 3b 0d |.HideCon|sole();.|
|00001b50| 0a 0d 0a 09 55 57 69 6e | 64 6f 77 43 6f 6e 73 6f |....UWin|dowConso|
|00001b60| 6c 65 43 6c 69 65 6e 74 | 57 69 6e 64 6f 77 28 43 |leClient|Window(C|
|00001b70| 6f 6e 73 6f 6c 65 57 69 | 6e 64 6f 77 2e 43 6c 69 |onsoleWi|ndow.Cli|
|00001b80| 65 6e 74 41 72 65 61 29 | 2e 54 65 78 74 41 72 65 |entArea)|.TextAre|
|00001b90| 61 2e 41 64 64 54 65 78 | 74 28 22 20 22 29 3b 0d |a.AddTex|t(" ");.|
|00001ba0| 0a 09 66 6f 72 20 28 49 | 3d 30 3b 20 49 3c 34 3b |..for (I|=0; I<4;|
|00001bb0| 20 49 2b 2b 29 0d 0a 09 | 09 55 57 69 6e 64 6f 77 | I++)...|.UWindow|
|00001bc0| 43 6f 6e 73 6f 6c 65 43 | 6c 69 65 6e 74 57 69 6e |ConsoleC|lientWin|
|00001bd0| 64 6f 77 28 43 6f 6e 73 | 6f 6c 65 57 69 6e 64 6f |dow(Cons|oleWindo|
|00001be0| 77 2e 43 6c 69 65 6e 74 | 41 72 65 61 29 2e 54 65 |w.Client|Area).Te|
|00001bf0| 78 74 41 72 65 61 2e 41 | 64 64 54 65 78 74 28 4d |xtArea.A|ddText(M|
|00001c00| 73 67 54 65 78 74 5b 49 | 5d 29 3b 0d 0a 7d 0d 0a |sgText[I|]);..}..|
|00001c10| 0d 0a 66 75 6e 63 74 69 | 6f 6e 20 52 65 6e 64 65 |..functi|on Rende|
|00001c20| 72 55 57 69 6e 64 6f 77 | 28 20 63 61 6e 76 61 73 |rUWindow|( canvas|
|00001c30| 20 43 61 6e 76 61 73 20 | 29 0d 0a 7b 0d 0a 09 6c | Canvas |)..{...l|
|00001c40| 6f 63 61 6c 20 55 57 69 | 6e 64 6f 77 57 69 6e 64 |ocal UWi|ndowWind|
|00001c50| 6f 77 20 4e 65 77 46 6f | 63 75 73 57 69 6e 64 6f |ow NewFo|cusWindo|
|00001c60| 77 3b 0d 0a 0d 0a 09 43 | 61 6e 76 61 73 2e 62 4e |w;.....C|anvas.bN|
|00001c70| 6f 53 6d 6f 6f 74 68 20 | 3d 20 54 72 75 65 3b 0d |oSmooth |= True;.|
|00001c80| 0a 09 43 61 6e 76 61 73 | 2e 5a 20 3d 20 31 3b 0d |..Canvas|.Z = 1;.|
|00001c90| 0a 09 43 61 6e 76 61 73 | 2e 53 74 79 6c 65 20 3d |..Canvas|.Style =|
|00001ca0| 20 31 3b 0d 0a 09 43 61 | 6e 76 61 73 2e 44 72 61 | 1;...Ca|nvas.Dra|
|00001cb0| 77 43 6f 6c 6f 72 20 3d | 20 63 6c 61 73 73 27 43 |wColor =| class'C|
|00001cc0| 61 6e 76 61 73 27 2e 73 | 74 61 74 69 63 2e 47 65 |anvas'.s|tatic.Ge|
|00001cd0| 74 43 6f 6c 6f 72 28 20 | 32 35 35 2c 20 32 35 35 |tColor( |255, 255|
|00001ce0| 2c 20 32 35 35 20 29 3b | 0d 0a 0d 0a 09 69 66 28 |, 255 );|.....if(|
|00001cf0| 56 69 65 77 70 6f 72 74 | 2e 62 57 69 6e 64 6f 77 |Viewport|.bWindow|
|00001d00| 73 4d 6f 75 73 65 41 76 | 61 69 6c 61 62 6c 65 20 |sMouseAv|ailable |
|00001d10| 26 26 20 52 6f 6f 74 20 | 21 3d 20 4e 6f 6e 65 29 |&& Root |!= None)|
|00001d20| 0d 0a 09 7b 0d 0a 09 09 | 4d 6f 75 73 65 58 20 3d |...{....|MouseX =|
|00001d30| 20 56 69 65 77 70 6f 72 | 74 2e 57 69 6e 64 6f 77 | Viewpor|t.Window|
|00001d40| 73 4d 6f 75 73 65 58 2f | 52 6f 6f 74 2e 47 55 49 |sMouseX/|Root.GUI|
|00001d50| 53 63 61 6c 65 3b 0d 0a | 09 09 4d 6f 75 73 65 59 |Scale;..|..MouseY|
|00001d60| 20 3d 20 56 69 65 77 70 | 6f 72 74 2e 57 69 6e 64 | = Viewp|ort.Wind|
|00001d70| 6f 77 73 4d 6f 75 73 65 | 59 2f 52 6f 6f 74 2e 47 |owsMouse|Y/Root.G|
|00001d80| 55 49 53 63 61 6c 65 3b | 0d 0a 09 7d 0d 0a 0d 0a |UIScale;|...}....|
|00001d90| 09 69 66 28 21 62 43 72 | 65 61 74 65 64 52 6f 6f |.if(!bCr|eatedRoo|
|00001da0| 74 29 0d 0a 09 09 43 72 | 65 61 74 65 52 6f 6f 74 |t)....Cr|eateRoot|
|00001db0| 57 69 6e 64 6f 77 28 43 | 61 6e 76 61 73 29 3b 0d |Window(C|anvas);.|
|00001dc0| 0a 0d 0a 09 52 6f 6f 74 | 2e 62 57 69 6e 64 6f 77 |....Root|.bWindow|
|00001dd0| 56 69 73 69 62 6c 65 20 | 3d 20 54 72 75 65 3b 0d |Visible |= True;.|
|00001de0| 0a 09 52 6f 6f 74 2e 62 | 55 57 69 6e 64 6f 77 41 |..Root.b|UWindowA|
|00001df0| 63 74 69 76 65 20 3d 20 | 62 55 57 69 6e 64 6f 77 |ctive = |bUWindow|
|00001e00| 41 63 74 69 76 65 3b 0d | 0a 09 52 6f 6f 74 2e 62 |Active;.|..Root.b|
|00001e10| 51 75 69 63 6b 4b 65 79 | 45 6e 61 62 6c 65 20 3d |QuickKey|Enable =|
|00001e20| 20 62 51 75 69 63 6b 4b | 65 79 45 6e 61 62 6c 65 | bQuickK|eyEnable|
|00001e30| 3b 0d 0a 0d 0a 09 69 66 | 28 43 61 6e 76 61 73 2e |;.....if|(Canvas.|
|00001e40| 43 6c 69 70 58 20 21 3d | 20 4f 6c 64 43 6c 69 70 |ClipX !=| OldClip|
|00001e50| 58 20 7c 7c 20 43 61 6e | 76 61 73 2e 43 6c 69 70 |X || Can|vas.Clip|
|00001e60| 59 20 21 3d 20 4f 6c 64 | 43 6c 69 70 59 29 0d 0a |Y != Old|ClipY)..|
|00001e70| 09 7b 0d 0a 09 09 4f 6c | 64 43 6c 69 70 58 20 3d |.{....Ol|dClipX =|
|00001e80| 20 43 61 6e 76 61 73 2e | 43 6c 69 70 58 3b 0d 0a | Canvas.|ClipX;..|
|00001e90| 09 09 4f 6c 64 43 6c 69 | 70 59 20 3d 20 43 61 6e |..OldCli|pY = Can|
|00001ea0| 76 61 73 2e 43 6c 69 70 | 59 3b 0d 0a 0d 0a 09 09 |vas.Clip|Y;......|
|00001eb0| 52 6f 6f 74 2e 57 69 6e | 54 6f 70 20 3d 20 30 3b |Root.Win|Top = 0;|
|00001ec0| 0d 0a 09 09 52 6f 6f 74 | 2e 57 69 6e 4c 65 66 74 |....Root|.WinLeft|
|00001ed0| 20 3d 20 30 3b 0d 0a 09 | 09 52 6f 6f 74 2e 57 69 | = 0;...|.Root.Wi|
|00001ee0| 6e 57 69 64 74 68 20 3d | 20 43 61 6e 76 61 73 2e |nWidth =| Canvas.|
|00001ef0| 43 6c 69 70 58 20 2f 20 | 52 6f 6f 74 2e 47 55 49 |ClipX / |Root.GUI|
|00001f00| 53 63 61 6c 65 3b 0d 0a | 09 09 52 6f 6f 74 2e 57 |Scale;..|..Root.W|
|00001f10| 69 6e 48 65 69 67 68 74 | 20 3d 20 43 61 6e 76 61 |inHeight| = Canva|
|00001f20| 73 2e 43 6c 69 70 59 20 | 2f 20 52 6f 6f 74 2e 47 |s.ClipY |/ Root.G|
|00001f30| 55 49 53 63 61 6c 65 3b | 0d 0a 0d 0a 09 09 52 6f |UIScale;|......Ro|
|00001f40| 6f 74 2e 52 65 61 6c 57 | 69 64 74 68 20 3d 20 43 |ot.RealW|idth = C|
|00001f50| 61 6e 76 61 73 2e 43 6c | 69 70 58 3b 0d 0a 09 09 |anvas.Cl|ipX;....|
|00001f60| 52 6f 6f 74 2e 52 65 61 | 6c 48 65 69 67 68 74 20 |Root.Rea|lHeight |
|00001f70| 3d 20 43 61 6e 76 61 73 | 2e 43 6c 69 70 59 3b 0d |= Canvas|.ClipY;.|
|00001f80| 0a 0d 0a 09 09 52 6f 6f | 74 2e 43 6c 69 70 70 69 |.....Roo|t.Clippi|
|00001f90| 6e 67 52 65 67 69 6f 6e | 2e 58 20 3d 20 30 3b 0d |ngRegion|.X = 0;.|
|00001fa0| 0a 09 09 52 6f 6f 74 2e | 43 6c 69 70 70 69 6e 67 |...Root.|Clipping|
|00001fb0| 52 65 67 69 6f 6e 2e 59 | 20 3d 20 30 3b 0d 0a 09 |Region.Y| = 0;...|
|00001fc0| 09 52 6f 6f 74 2e 43 6c | 69 70 70 69 6e 67 52 65 |.Root.Cl|ippingRe|
|00001fd0| 67 69 6f 6e 2e 57 20 3d | 20 52 6f 6f 74 2e 57 69 |gion.W =| Root.Wi|
|00001fe0| 6e 57 69 64 74 68 3b 0d | 0a 09 09 52 6f 6f 74 2e |nWidth;.|...Root.|
|00001ff0| 43 6c 69 70 70 69 6e 67 | 52 65 67 69 6f 6e 2e 48 |Clipping|Region.H|
|00002000| 20 3d 20 52 6f 6f 74 2e | 57 69 6e 48 65 69 67 68 | = Root.|WinHeigh|
|00002010| 74 3b 0d 0a 0d 0a 09 09 | 52 6f 6f 74 2e 52 65 73 |t;......|Root.Res|
|00002020| 69 7a 65 64 28 29 3b 0d | 0a 09 7d 0d 0a 0d 0a 09 |ized();.|..}.....|
|00002030| 69 66 28 4d 6f 75 73 65 | 58 20 3e 20 52 6f 6f 74 |if(Mouse|X > Root|
|00002040| 2e 57 69 6e 57 69 64 74 | 68 29 20 4d 6f 75 73 65 |.WinWidt|h) Mouse|
|00002050| 58 20 3d 20 52 6f 6f 74 | 2e 57 69 6e 57 69 64 74 |X = Root|.WinWidt|
|00002060| 68 3b 0d 0a 09 69 66 28 | 4d 6f 75 73 65 59 20 3e |h;...if(|MouseY >|
|00002070| 20 52 6f 6f 74 2e 57 69 | 6e 48 65 69 67 68 74 29 | Root.Wi|nHeight)|
|00002080| 20 4d 6f 75 73 65 59 20 | 3d 20 52 6f 6f 74 2e 57 | MouseY |= Root.W|
|00002090| 69 6e 48 65 69 67 68 74 | 3b 0d 0a 09 69 66 28 4d |inHeight|;...if(M|
|000020a0| 6f 75 73 65 58 20 3c 20 | 30 29 20 4d 6f 75 73 65 |ouseX < |0) Mouse|
|000020b0| 58 20 3d 20 30 3b 0d 0a | 09 69 66 28 4d 6f 75 73 |X = 0;..|.if(Mous|
|000020c0| 65 59 20 3c 20 30 29 20 | 4d 6f 75 73 65 59 20 3d |eY < 0) |MouseY =|
|000020d0| 20 30 3b 0d 0a 0d 0a 0d | 0a 09 2f 2f 20 43 68 65 | 0;.....|..// Che|
|000020e0| 63 6b 20 66 6f 72 20 6b | 65 79 62 6f 61 72 64 20 |ck for k|eyboard |
|000020f0| 66 6f 63 75 73 0d 0a 09 | 4e 65 77 46 6f 63 75 73 |focus...|NewFocus|
|00002100| 57 69 6e 64 6f 77 20 3d | 20 52 6f 6f 74 2e 43 68 |Window =| Root.Ch|
|00002110| 65 63 6b 4b 65 79 46 6f | 63 75 73 57 69 6e 64 6f |eckKeyFo|cusWindo|
|00002120| 77 28 29 3b 0d 0a 0d 0a | 09 69 66 28 4e 65 77 46 |w();....|.if(NewF|
|00002130| 6f 63 75 73 57 69 6e 64 | 6f 77 20 21 3d 20 52 6f |ocusWind|ow != Ro|
|00002140| 6f 74 2e 4b 65 79 46 6f | 63 75 73 57 69 6e 64 6f |ot.KeyFo|cusWindo|
|00002150| 77 29 0d 0a 09 7b 0d 0a | 09 09 52 6f 6f 74 2e 4b |w)...{..|..Root.K|
|00002160| 65 79 46 6f 63 75 73 57 | 69 6e 64 6f 77 2e 4b 65 |eyFocusW|indow.Ke|
|00002170| 79 46 6f 63 75 73 45 78 | 69 74 28 29 3b 0d 0a 09 |yFocusEx|it();...|
|00002180| 09 52 6f 6f 74 2e 4b 65 | 79 46 6f 63 75 73 57 69 |.Root.Ke|yFocusWi|
|00002190| 6e 64 6f 77 20 3d 20 4e | 65 77 46 6f 63 75 73 57 |ndow = N|ewFocusW|
|000021a0| 69 6e 64 6f 77 3b 0d 0a | 09 09 52 6f 6f 74 2e 4b |indow;..|..Root.K|
|000021b0| 65 79 46 6f 63 75 73 57 | 69 6e 64 6f 77 2e 4b 65 |eyFocusW|indow.Ke|
|000021c0| 79 46 6f 63 75 73 45 6e | 74 65 72 28 29 3b 0d 0a |yFocusEn|ter();..|
|000021d0| 09 7d 0d 0a 0d 0a 0d 0a | 09 52 6f 6f 74 2e 4d 6f |.}......|.Root.Mo|
|000021e0| 76 65 4d 6f 75 73 65 28 | 4d 6f 75 73 65 58 2c 20 |veMouse(|MouseX, |
|000021f0| 4d 6f 75 73 65 59 29 3b | 0d 0a 09 52 6f 6f 74 2e |MouseY);|...Root.|
|00002200| 57 69 6e 64 6f 77 45 76 | 65 6e 74 28 57 4d 5f 50 |WindowEv|ent(WM_P|
|00002210| 61 69 6e 74 2c 20 43 61 | 6e 76 61 73 2c 20 4d 6f |aint, Ca|nvas, Mo|
|00002220| 75 73 65 58 2c 20 4d 6f | 75 73 65 59 2c 20 49 4b |useX, Mo|useY, IK|
|00002230| 5f 4e 6f 6e 65 29 3b 0d | 0a 09 69 66 28 62 55 57 |_None);.|..if(bUW|
|00002240| 69 6e 64 6f 77 41 63 74 | 69 76 65 20 7c 7c 20 62 |indowAct|ive || b|
|00002250| 51 75 69 63 6b 4b 65 79 | 45 6e 61 62 6c 65 29 0d |QuickKey|Enable).|
|00002260| 0a 09 09 52 6f 6f 74 2e | 44 72 61 77 4d 6f 75 73 |...Root.|DrawMous|
|00002270| 65 28 43 61 6e 76 61 73 | 29 3b 0d 0a 7d 0d 0a 0d |e(Canvas|);..}...|
|00002280| 0a 65 76 65 6e 74 20 4d | 65 73 73 61 67 65 28 20 |.event M|essage( |
|00002290| 50 6c 61 79 65 72 52 65 | 70 6c 69 63 61 74 69 6f |PlayerRe|plicatio|
|000022a0| 6e 49 6e 66 6f 20 50 52 | 49 2c 20 63 6f 65 72 63 |nInfo PR|I, coerc|
|000022b0| 65 20 73 74 72 69 6e 67 | 20 4d 73 67 2c 20 6e 61 |e string| Msg, na|
|000022c0| 6d 65 20 4e 20 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |me N )..|{...loca|
|000022d0| 6c 20 73 74 72 69 6e 67 | 20 4f 75 74 54 65 78 74 |l string| OutText|
|000022e0| 3b 0d 0a 0d 0a 09 53 75 | 70 65 72 2e 4d 65 73 73 |;.....Su|per.Mess|
|000022f0| 61 67 65 28 20 50 52 49 | 2c 20 4d 73 67 2c 20 4e |age( PRI|, Msg, N|
|00002300| 20 29 3b 0d 0a 0d 0a 09 | 69 66 20 28 20 56 69 65 | );.....|if ( Vie|
|00002310| 77 70 6f 72 74 2e 41 63 | 74 6f 72 20 3d 3d 20 4e |wport.Ac|tor == N|
|00002320| 6f 6e 65 20 29 0d 0a 09 | 09 72 65 74 75 72 6e 3b |one )...|.return;|
|00002330| 0d 0a 0d 0a 09 69 66 28 | 20 4d 73 67 21 3d 22 22 |.....if(| Msg!=""|
|00002340| 20 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 28 20 | )...{..|..if (( |
|00002350| 4d 73 67 54 79 70 65 5b | 54 6f 70 4c 69 6e 65 5d |MsgType[|TopLine]|
|00002360| 20 3d 3d 20 27 53 61 79 | 27 20 29 20 7c 7c 20 28 | == 'Say|' ) || (|
|00002370| 20 4d 73 67 54 79 70 65 | 5b 54 6f 70 4c 69 6e 65 | MsgType|[TopLine|
|00002380| 5d 20 3d 3d 20 27 54 65 | 61 6d 53 61 79 27 20 29 |] == 'Te|amSay' )|
|00002390| 29 0d 0a 09 09 09 4f 75 | 74 54 65 78 74 20 3d 20 |).....Ou|tText = |
|000023a0| 4d 73 67 50 6c 61 79 65 | 72 5b 54 6f 70 4c 69 6e |MsgPlaye|r[TopLin|
|000023b0| 65 5d 2e 50 6c 61 79 65 | 72 4e 61 6d 65 24 22 3a |e].Playe|rName$":|
|000023c0| 20 22 24 4d 73 67 54 65 | 78 74 5b 54 6f 70 4c 69 | "$MsgTe|xt[TopLi|
|000023d0| 6e 65 5d 3b 0d 0a 09 09 | 65 6c 73 65 0d 0a 09 09 |ne];....|else....|
|000023e0| 09 4f 75 74 54 65 78 74 | 20 3d 20 4d 73 67 54 65 |.OutText| = MsgTe|
|000023f0| 78 74 5b 54 6f 70 4c 69 | 6e 65 5d 3b 0d 0a 09 09 |xt[TopLi|ne];....|
|00002400| 69 66 20 28 43 6f 6e 73 | 6f 6c 65 57 69 6e 64 6f |if (Cons|oleWindo|
|00002410| 77 20 21 3d 20 4e 6f 6e | 65 29 0d 0a 09 09 09 55 |w != Non|e).....U|
|00002420| 57 69 6e 64 6f 77 43 6f | 6e 73 6f 6c 65 43 6c 69 |WindowCo|nsoleCli|
|00002430| 65 6e 74 57 69 6e 64 6f | 77 28 43 6f 6e 73 6f 6c |entWindo|w(Consol|
|00002440| 65 57 69 6e 64 6f 77 2e | 43 6c 69 65 6e 74 41 72 |eWindow.|ClientAr|
|00002450| 65 61 29 2e 54 65 78 74 | 41 72 65 61 2e 41 64 64 |ea).Text|Area.Add|
|00002460| 54 65 78 74 28 4f 75 74 | 54 65 78 74 29 3b 0d 0a |Text(Out|Text);..|
|00002470| 09 7d 0d 0a 7d 0d 0a 0d | 0a 65 76 65 6e 74 20 41 |.}..}...|.event A|
|00002480| 64 64 53 74 72 69 6e 67 | 28 20 63 6f 65 72 63 65 |ddString|( coerce|
|00002490| 20 73 74 72 69 6e 67 20 | 4d 73 67 20 29 0d 0a 7b | string |Msg )..{|
|000024a0| 0d 0a 09 53 75 70 65 72 | 2e 41 64 64 53 74 72 69 |...Super|.AddStri|
|000024b0| 6e 67 28 20 4d 73 67 20 | 29 3b 0d 0a 0d 0a 20 20 |ng( Msg |);.... |
|000024c0| 20 20 6c 6f 67 28 20 22 | 21 21 41 64 64 53 74 72 | log( "|!!AddStr|
|000024d0| 69 6e 67 20 4d 73 67 3a | 22 40 4d 73 67 20 29 3b |ing Msg:|"@Msg );|
|000024e0| 0d 0a 09 69 66 28 20 4d | 73 67 21 3d 22 22 20 29 |...if( M|sg!="" )|
|000024f0| 0d 0a 09 7b 0d 0a 09 09 | 69 66 20 28 43 6f 6e 73 |...{....|if (Cons|
|00002500| 6f 6c 65 57 69 6e 64 6f | 77 20 21 3d 20 4e 6f 6e |oleWindo|w != Non|
|00002510| 65 29 0d 0a 09 09 09 55 | 57 69 6e 64 6f 77 43 6f |e).....U|WindowCo|
|00002520| 6e 73 6f 6c 65 43 6c 69 | 65 6e 74 57 69 6e 64 6f |nsoleCli|entWindo|
|00002530| 77 28 43 6f 6e 73 6f 6c | 65 57 69 6e 64 6f 77 2e |w(Consol|eWindow.|
|00002540| 43 6c 69 65 6e 74 41 72 | 65 61 29 2e 54 65 78 74 |ClientAr|ea).Text|
|00002550| 41 72 65 61 2e 41 64 64 | 54 65 78 74 28 4d 73 67 |Area.Add|Text(Msg|
|00002560| 29 3b 0d 0a 09 7d 0d 0a | 7d 0d 0a 0d 0a 66 75 6e |);...}..|}....fun|
|00002570| 63 74 69 6f 6e 20 55 70 | 64 61 74 65 48 69 73 74 |ction Up|dateHist|
|00002580| 6f 72 79 28 29 0d 0a 7b | 0d 0a 09 2f 2f 20 55 70 |ory()..{|...// Up|
|00002590| 64 61 74 65 20 68 69 73 | 74 6f 72 79 20 62 75 66 |date his|tory buf|
|000025a0| 66 65 72 2e 0d 0a 09 48 | 69 73 74 6f 72 79 5b 48 |fer....H|istory[H|
|000025b0| 69 73 74 6f 72 79 43 75 | 72 2b 2b 20 25 20 4d 61 |istoryCu|r++ % Ma|
|000025c0| 78 48 69 73 74 6f 72 79 | 5d 20 3d 20 54 79 70 65 |xHistory|] = Type|
|000025d0| 64 53 74 72 3b 0d 0a 09 | 69 66 28 20 48 69 73 74 |dStr;...|if( Hist|
|000025e0| 6f 72 79 43 75 72 20 3e | 20 48 69 73 74 6f 72 79 |oryCur >| History|
|000025f0| 42 6f 74 20 29 0d 0a 09 | 09 48 69 73 74 6f 72 79 |Bot )...|.History|
|00002600| 42 6f 74 2b 2b 3b 0d 0a | 09 69 66 28 20 48 69 73 |Bot++;..|.if( His|
|00002610| 74 6f 72 79 43 75 72 20 | 2d 20 48 69 73 74 6f 72 |toryCur |- Histor|
|00002620| 79 54 6f 70 20 3e 3d 20 | 4d 61 78 48 69 73 74 6f |yTop >= |MaxHisto|
|00002630| 72 79 20 29 0d 0a 09 09 | 48 69 73 74 6f 72 79 54 |ry )....|HistoryT|
|00002640| 6f 70 20 3d 20 48 69 73 | 74 6f 72 79 43 75 72 20 |op = His|toryCur |
|00002650| 2d 20 4d 61 78 48 69 73 | 74 6f 72 79 20 2b 20 31 |- MaxHis|tory + 1|
|00002660| 3b 0d 0a 7d 0d 0a 0d 0a | 66 75 6e 63 74 69 6f 6e |;..}....|function|
|00002670| 20 48 69 73 74 6f 72 79 | 55 70 28 29 0d 0a 7b 0d | History|Up()..{.|
|00002680| 0a 09 69 66 28 20 48 69 | 73 74 6f 72 79 43 75 72 |..if( Hi|storyCur|
|00002690| 20 3e 20 48 69 73 74 6f | 72 79 54 6f 70 20 29 0d | > Histo|ryTop ).|
|000026a0| 0a 09 7b 0d 0a 09 09 48 | 69 73 74 6f 72 79 5b 48 |..{....H|istory[H|
|000026b0| 69 73 74 6f 72 79 43 75 | 72 20 25 20 4d 61 78 48 |istoryCu|r % MaxH|
|000026c0| 69 73 74 6f 72 79 5d 20 | 3d 20 54 79 70 65 64 53 |istory] |= TypedS|
|000026d0| 74 72 3b 0d 0a 09 09 54 | 79 70 65 64 53 74 72 20 |tr;....T|ypedStr |
|000026e0| 3d 20 48 69 73 74 6f 72 | 79 5b 2d 2d 48 69 73 74 |= Histor|y[--Hist|
|000026f0| 6f 72 79 43 75 72 20 25 | 20 4d 61 78 48 69 73 74 |oryCur %| MaxHist|
|00002700| 6f 72 79 5d 3b 0d 0a 09 | 7d 0d 0a 7d 0d 0a 0d 0a |ory];...|}..}....|
|00002710| 66 75 6e 63 74 69 6f 6e | 20 48 69 73 74 6f 72 79 |function| History|
|00002720| 44 6f 77 6e 28 29 0d 0a | 7b 0d 0a 09 48 69 73 74 |Down()..|{...Hist|
|00002730| 6f 72 79 5b 48 69 73 74 | 6f 72 79 43 75 72 20 25 |ory[Hist|oryCur %|
|00002740| 20 4d 61 78 48 69 73 74 | 6f 72 79 5d 20 3d 20 54 | MaxHist|ory] = T|
|00002750| 79 70 65 64 53 74 72 3b | 0d 0a 09 69 66 28 20 48 |ypedStr;|...if( H|
|00002760| 69 73 74 6f 72 79 43 75 | 72 20 3c 20 48 69 73 74 |istoryCu|r < Hist|
|00002770| 6f 72 79 42 6f 74 20 29 | 0d 0a 09 09 54 79 70 65 |oryBot )|....Type|
|00002780| 64 53 74 72 20 3d 20 48 | 69 73 74 6f 72 79 5b 2b |dStr = H|istory[+|
|00002790| 2b 48 69 73 74 6f 72 79 | 43 75 72 20 25 20 4d 61 |+History|Cur % Ma|
|000027a0| 78 48 69 73 74 6f 72 79 | 5d 3b 0d 0a 09 65 6c 73 |xHistory|];...els|
|000027b0| 65 0d 0a 09 09 54 79 70 | 65 64 53 74 72 3d 22 22 |e....Typ|edStr=""|
|000027c0| 3b 0d 0a 7d 0d 0a 0d 0a | 66 75 6e 63 74 69 6f 6e |;..}....|function|
|000027d0| 20 4e 6f 74 69 66 79 4c | 65 76 65 6c 43 68 61 6e | NotifyL|evelChan|
|000027e0| 67 65 28 29 0d 0a 7b 0d | 0a 09 53 75 70 65 72 2e |ge()..{.|..Super.|
|000027f0| 4e 6f 74 69 66 79 4c 65 | 76 65 6c 43 68 61 6e 67 |NotifyLe|velChang|
|00002800| 65 28 29 3b 0d 0a 09 62 | 4c 65 76 65 6c 43 68 61 |e();...b|LevelCha|
|00002810| 6e 67 65 20 3d 20 54 72 | 75 65 3b 0d 0a 09 69 66 |nge = Tr|ue;...if|
|00002820| 28 52 6f 6f 74 20 21 3d | 20 4e 6f 6e 65 29 0d 0a |(Root !=| None)..|
|00002830| 09 09 52 6f 6f 74 2e 4e | 6f 74 69 66 79 42 65 66 |..Root.N|otifyBef|
|00002840| 6f 72 65 4c 65 76 65 6c | 43 68 61 6e 67 65 28 29 |oreLevel|Change()|
|00002850| 3b 0d 0a 7d 0d 0a 0d 0a | 00 |;..}....|. |
+--------+-------------------------+-------------------------+--------+--------+