home *** CD-ROM | disk | FTP | other *** search
Unknown | 1999-10-19 | 21.2 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 | 51 d2 02 2f 2f 3d 3d 3d |........|Q..//===|
|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 43 |========|==..// C|
|00000060| 54 46 47 61 6d 65 2e 0d | 0a 2f 2f 3d 3d 3d 3d 3d |TFGame..|.//=====|
|00000070| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000080| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 0a 63 6c 61 73 73 20 |========|..class |
|000000c0| 43 54 46 47 61 6d 65 20 | 65 78 74 65 6e 64 73 20 |CTFGame |extends |
|000000d0| 54 65 61 6d 47 61 6d 65 | 50 6c 75 73 0d 0a 09 63 |TeamGame|Plus...c|
|000000e0| 6f 6e 66 69 67 3b 0d 0a | 0d 0a 23 65 78 65 63 20 |onfig;..|..#exec |
|000000f0| 41 55 44 49 4f 20 49 4d | 50 4f 52 54 20 46 49 4c |AUDIO IM|PORT FIL|
|00000100| 45 3d 22 53 6f 75 6e 64 | 73 5c 43 54 46 5c 52 6f |E="Sound|s\CTF\Ro|
|00000110| 63 6b 4f 6e 44 75 64 65 | 2e 77 61 76 22 20 4e 41 |ckOnDude|.wav" NA|
|00000120| 4d 45 3d 22 43 61 70 74 | 75 72 65 53 6f 75 6e 64 |ME="Capt|ureSound|
|00000130| 22 20 47 52 4f 55 50 3d | 22 43 54 46 22 0d 0a 23 |" GROUP=|"CTF"..#|
|00000140| 65 78 65 63 20 41 55 44 | 49 4f 20 49 4d 50 4f 52 |exec AUD|IO IMPOR|
|00000150| 54 20 46 49 4c 45 3d 22 | 53 6f 75 6e 64 73 5c 43 |T FILE="|Sounds\C|
|00000160| 54 46 5c 63 74 66 39 2e | 77 61 76 22 20 4e 41 4d |TF\ctf9.|wav" NAM|
|00000170| 45 3d 22 43 61 70 74 75 | 72 65 53 6f 75 6e 64 32 |E="Captu|reSound2|
|00000180| 22 20 47 52 4f 55 50 3d | 22 43 54 46 22 0d 0a 23 |" GROUP=|"CTF"..#|
|00000190| 65 78 65 63 20 41 55 44 | 49 4f 20 49 4d 50 4f 52 |exec AUD|IO IMPOR|
|000001a0| 54 20 46 49 4c 45 3d 22 | 53 6f 75 6e 64 73 5c 43 |T FILE="|Sounds\C|
|000001b0| 54 46 5c 63 74 66 31 30 | 2e 77 61 76 22 20 4e 41 |TF\ctf10|.wav" NA|
|000001c0| 4d 45 3d 22 43 61 70 74 | 75 72 65 53 6f 75 6e 64 |ME="Capt|ureSound|
|000001d0| 33 22 20 47 52 4f 55 50 | 3d 22 43 54 46 22 0d 0a |3" GROUP|="CTF"..|
|000001e0| 23 65 78 65 63 20 41 55 | 44 49 4f 20 49 4d 50 4f |#exec AU|DIO IMPO|
|000001f0| 52 54 20 46 49 4c 45 3d | 22 53 6f 75 6e 64 73 5c |RT FILE=|"Sounds\|
|00000200| 43 54 46 5c 72 65 74 75 | 72 6e 66 31 2e 77 61 76 |CTF\retu|rnf1.wav|
|00000210| 22 20 4e 41 4d 45 3d 22 | 52 65 74 75 72 6e 53 6f |" NAME="|ReturnSo|
|00000220| 75 6e 64 22 20 47 52 4f | 55 50 3d 22 43 54 46 22 |und" GRO|UP="CTF"|
|00000230| 0d 0a 0d 0a 76 61 72 09 | 20 20 69 6e 74 20 20 20 |....var.| int |
|00000240| 47 72 6f 77 54 69 6d 65 | 72 3b 0d 0a 76 61 72 28 |GrowTime|r;..var(|
|00000250| 29 20 73 6f 75 6e 64 20 | 43 61 70 74 75 72 65 53 |) sound |CaptureS|
|00000260| 6f 75 6e 64 5b 34 5d 3b | 0d 0a 76 61 72 28 29 20 |ound[4];|..var() |
|00000270| 73 6f 75 6e 64 20 52 65 | 74 75 72 6e 53 6f 75 6e |sound Re|turnSoun|
|00000280| 64 3b 0d 0a 76 61 72 20 | 66 6c 6f 61 74 20 4c 61 |d;..var |float La|
|00000290| 73 74 47 6f 74 46 6c 61 | 67 3b 0d 0a 76 61 72 20 |stGotFla|g;..var |
|000002a0| 66 6c 6f 61 74 20 4c 61 | 73 74 53 65 65 46 6c 61 |float La|stSeeFla|
|000002b0| 67 43 61 72 72 69 65 72 | 3b 0d 0a 0d 0a 66 75 6e |gCarrier|;....fun|
|000002c0| 63 74 69 6f 6e 20 4c 6f | 67 6f 75 74 28 70 61 77 |ction Lo|gout(paw|
|000002d0| 6e 20 45 78 69 74 69 6e | 67 29 0d 0a 7b 0d 0a 09 |n Exitin|g)..{...|
|000002e0| 69 66 20 28 20 45 78 69 | 74 69 6e 67 2e 50 6c 61 |if ( Exi|ting.Pla|
|000002f0| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|00000300| 66 6f 2e 48 61 73 46 6c | 61 67 20 21 3d 20 4e 6f |fo.HasFl|ag != No|
|00000310| 6e 65 20 29 0d 0a 09 09 | 43 54 46 46 6c 61 67 28 |ne )....|CTFFlag(|
|00000320| 45 78 69 74 69 6e 67 2e | 50 6c 61 79 65 72 52 65 |Exiting.|PlayerRe|
|00000330| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 2e 48 61 |plicatio|nInfo.Ha|
|00000340| 73 46 6c 61 67 29 2e 53 | 65 6e 64 48 6f 6d 65 28 |sFlag).S|endHome(|
|00000350| 29 3b 09 0d 0a 09 53 75 | 70 65 72 2e 4c 6f 67 6f |);....Su|per.Logo|
|00000360| 75 74 28 45 78 69 74 69 | 6e 67 29 3b 0d 0a 7d 0d |ut(Exiti|ng);..}.|
|00000370| 0a 0d 0a 65 76 65 6e 74 | 20 49 6e 69 74 47 61 6d |...event| InitGam|
|00000380| 65 28 20 73 74 72 69 6e | 67 20 4f 70 74 69 6f 6e |e( strin|g Option|
|00000390| 73 2c 20 6f 75 74 20 73 | 74 72 69 6e 67 20 45 72 |s, out s|tring Er|
|000003a0| 72 6f 72 20 29 0d 0a 7b | 0d 0a 09 53 75 70 65 72 |ror )..{|...Super|
|000003b0| 2e 49 6e 69 74 47 61 6d | 65 28 4f 70 74 69 6f 6e |.InitGam|e(Option|
|000003c0| 73 2c 20 45 72 72 6f 72 | 29 3b 0d 0a 09 69 66 20 |s, Error|);...if |
|000003d0| 28 20 62 52 61 74 65 64 | 47 61 6d 65 20 29 0d 0a |( bRated|Game )..|
|000003e0| 09 09 47 6f 61 6c 54 65 | 61 6d 53 63 6f 72 65 20 |..GoalTe|amScore |
|000003f0| 3d 20 35 3b 0d 0a 0d 0a | 09 46 72 61 67 4c 69 6d |= 5;....|.FragLim|
|00000400| 69 74 20 3d 20 30 3b 0d | 0a 7d 0d 0a 0d 0a 66 75 |it = 0;.|.}....fu|
|00000410| 6e 63 74 69 6f 6e 20 53 | 63 6f 72 65 4b 69 6c 6c |nction S|coreKill|
|00000420| 28 70 61 77 6e 20 4b 69 | 6c 6c 65 72 2c 20 70 61 |(pawn Ki|ller, pa|
|00000430| 77 6e 20 4f 74 68 65 72 | 29 0d 0a 7b 0d 0a 09 6c |wn Other|)..{...l|
|00000440| 6f 63 61 6c 20 69 6e 74 | 20 4e 65 78 74 54 61 75 |ocal int| NextTau|
|00000450| 6e 74 2c 20 69 3b 0d 0a | 09 6c 6f 63 61 6c 20 62 |nt, i;..|.local b|
|00000460| 6f 6f 6c 20 62 41 75 74 | 6f 54 61 75 6e 74 3b 0d |ool bAut|oTaunt;.|
|00000470| 0a 0d 0a 09 69 66 28 20 | 28 6b 69 6c 6c 65 72 20 |....if( |(killer |
|00000480| 3d 3d 20 4f 74 68 65 72 | 29 20 7c 7c 20 28 6b 69 |== Other|) || (ki|
|00000490| 6c 6c 65 72 20 3d 3d 20 | 4e 6f 6e 65 29 20 29 0d |ller == |None) ).|
|000004a0| 0a 09 09 4f 74 68 65 72 | 2e 50 6c 61 79 65 72 52 |...Other|.PlayerR|
|000004b0| 65 70 6c 69 63 61 74 69 | 6f 6e 49 6e 66 6f 2e 53 |eplicati|onInfo.S|
|000004c0| 63 6f 72 65 20 2d 3d 20 | 31 3b 0d 0a 09 65 6c 73 |core -= |1;...els|
|000004d0| 65 20 69 66 20 28 20 6b | 69 6c 6c 65 72 20 21 3d |e if ( k|iller !=|
|000004e0| 20 4e 6f 6e 65 20 29 0d | 0a 09 7b 0d 0a 09 09 6b | None ).|..{....k|
|000004f0| 69 6c 6c 65 72 2e 6b 69 | 6c 6c 43 6f 75 6e 74 2b |iller.ki|llCount+|
|00000500| 2b 3b 0d 0a 09 09 69 66 | 20 28 20 4b 69 6c 6c 65 |+;....if| ( Kille|
|00000510| 72 2e 62 49 73 50 6c 61 | 79 65 72 20 26 26 20 4f |r.bIsPla|yer && O|
|00000520| 74 68 65 72 2e 62 49 73 | 50 6c 61 79 65 72 20 26 |ther.bIs|Player &|
|00000530| 26 20 28 4b 69 6c 6c 65 | 72 2e 50 6c 61 79 65 72 |& (Kille|r.Player|
|00000540| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|00000550| 54 65 61 6d 20 21 3d 20 | 4f 74 68 65 72 2e 50 6c |Team != |Other.Pl|
|00000560| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|00000570| 6e 66 6f 2e 54 65 61 6d | 29 20 29 0d 0a 09 09 09 |nfo.Team|) ).....|
|00000580| 4b 69 6c 6c 65 72 2e 50 | 6c 61 79 65 72 52 65 70 |Killer.P|layerRep|
|00000590| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 53 63 6f |lication|Info.Sco|
|000005a0| 72 65 20 2b 3d 20 31 3b | 0d 0a 09 7d 0d 0a 09 69 |re += 1;|...}...i|
|000005b0| 66 20 28 20 62 41 6c 74 | 53 63 6f 72 69 6e 67 20 |f ( bAlt|Scoring |
|000005c0| 26 26 20 28 4b 69 6c 6c | 65 72 20 21 3d 20 4f 74 |&& (Kill|er != Ot|
|000005d0| 68 65 72 29 20 26 26 20 | 28 6b 69 6c 6c 65 72 20 |her) && |(killer |
|000005e0| 21 3d 20 4e 6f 6e 65 29 | 20 26 26 20 4f 74 68 65 |!= None)| && Othe|
|000005f0| 72 2e 62 49 73 50 6c 61 | 79 65 72 20 29 0d 0a 09 |r.bIsPla|yer )...|
|00000600| 09 4f 74 68 65 72 2e 50 | 6c 61 79 65 72 52 65 70 |.Other.P|layerRep|
|00000610| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 53 63 6f |lication|Info.Sco|
|00000620| 72 65 20 2d 3d 20 31 3b | 0d 0a 0d 0a 09 4f 74 68 |re -= 1;|.....Oth|
|00000630| 65 72 2e 44 69 65 43 6f | 75 6e 74 2b 2b 3b 0d 0a |er.DieCo|unt++;..|
|00000640| 09 69 66 20 28 20 4f 74 | 68 65 72 2e 62 49 73 50 |.if ( Ot|her.bIsP|
|00000650| 6c 61 79 65 72 20 26 26 | 20 28 4f 74 68 65 72 2e |layer &&| (Other.|
|00000660| 50 6c 61 79 65 72 52 65 | 70 6c 69 63 61 74 69 6f |PlayerRe|plicatio|
|00000670| 6e 49 6e 66 6f 2e 48 61 | 73 46 6c 61 67 20 21 3d |nInfo.Ha|sFlag !=|
|00000680| 20 4e 6f 6e 65 29 20 29 | 0d 0a 09 7b 0d 0a 09 09 | None) )|...{....|
|00000690| 69 66 20 28 20 28 4b 69 | 6c 6c 65 72 20 21 3d 20 |if ( (Ki|ller != |
|000006a0| 4e 6f 6e 65 29 20 26 26 | 20 4b 69 6c 6c 65 72 2e |None) &&| Killer.|
|000006b0| 62 49 73 50 6c 61 79 65 | 72 20 26 26 20 4f 74 68 |bIsPlaye|r && Oth|
|000006c0| 65 72 2e 62 49 73 50 6c | 61 79 65 72 20 26 26 20 |er.bIsPl|ayer && |
|000006d0| 28 4b 69 6c 6c 65 72 2e | 50 6c 61 79 65 72 52 65 |(Killer.|PlayerRe|
|000006e0| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 2e 54 65 |plicatio|nInfo.Te|
|000006f0| 61 6d 20 21 3d 20 4f 74 | 68 65 72 2e 50 6c 61 79 |am != Ot|her.Play|
|00000700| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00000710| 6f 2e 54 65 61 6d 29 20 | 29 0d 0a 09 09 7b 0d 0a |o.Team) |)....{..|
|00000720| 09 09 09 6b 69 6c 6c 65 | 72 2e 50 6c 61 79 65 72 |...kille|r.Player|
|00000730| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|00000740| 53 63 6f 72 65 20 2b 3d | 20 34 3b 0d 0a 09 09 09 |Score +=| 4;.....|
|00000750| 62 41 75 74 6f 54 61 75 | 6e 74 20 3d 20 28 28 54 |bAutoTau|nt = ((T|
|00000760| 6f 75 72 6e 61 6d 65 6e | 74 50 6c 61 79 65 72 28 |ournamen|tPlayer(|
|00000770| 4b 69 6c 6c 65 72 29 20 | 21 3d 20 4e 6f 6e 65 29 |Killer) |!= None)|
|00000780| 20 26 26 20 54 6f 75 72 | 6e 61 6d 65 6e 74 50 6c | && Tour|namentPl|
|00000790| 61 79 65 72 28 4b 69 6c | 6c 65 72 29 2e 62 41 75 |ayer(Kil|ler).bAu|
|000007a0| 74 6f 54 61 75 6e 74 29 | 3b 0d 0a 09 09 09 69 66 |toTaunt)|;.....if|
|000007b0| 20 28 20 28 42 6f 74 28 | 4b 69 6c 6c 65 72 29 20 | ( (Bot(|Killer) |
|000007c0| 21 3d 20 4e 6f 6e 65 29 | 20 7c 7c 20 62 41 75 74 |!= None)| || bAut|
|000007d0| 6f 54 61 75 6e 74 20 29 | 0d 0a 09 09 09 7b 0d 0a |oTaunt )|.....{..|
|000007e0| 09 09 09 09 4e 65 78 74 | 54 61 75 6e 74 20 3d 20 |....Next|Taunt = |
|000007f0| 52 61 6e 64 28 63 6c 61 | 73 73 3c 43 68 61 6c 6c |Rand(cla|ss<Chall|
|00000800| 65 6e 67 65 56 6f 69 63 | 65 50 61 63 6b 3e 28 4b |engeVoic|ePack>(K|
|00000810| 69 6c 6c 65 72 2e 50 6c | 61 79 65 72 52 65 70 6c |iller.Pl|ayerRepl|
|00000820| 69 63 61 74 69 6f 6e 49 | 6e 66 6f 2e 56 6f 69 63 |icationI|nfo.Voic|
|00000830| 65 54 79 70 65 29 2e 44 | 65 66 61 75 6c 74 2e 4e |eType).D|efault.N|
|00000840| 75 6d 54 61 75 6e 74 73 | 29 3b 0d 0a 09 09 09 09 |umTaunts|);......|
|00000850| 66 6f 72 20 28 20 69 3d | 30 3b 20 69 3c 34 3b 20 |for ( i=|0; i<4; |
|00000860| 69 2b 2b 20 29 0d 0a 09 | 09 09 09 7b 0d 0a 09 09 |i++ )...|...{....|
|00000870| 09 09 09 69 66 20 28 20 | 4e 65 78 74 54 61 75 6e |...if ( |NextTaun|
|00000880| 74 20 3d 3d 20 4c 61 73 | 74 54 61 75 6e 74 5b 69 |t == Las|tTaunt[i|
|00000890| 5d 20 29 0d 0a 09 09 09 | 09 09 09 4e 65 78 74 54 |] ).....|...NextT|
|000008a0| 61 75 6e 74 20 3d 20 52 | 61 6e 64 28 63 6c 61 73 |aunt = R|and(clas|
|000008b0| 73 3c 43 68 61 6c 6c 65 | 6e 67 65 56 6f 69 63 65 |s<Challe|ngeVoice|
|000008c0| 50 61 63 6b 3e 28 4b 69 | 6c 6c 65 72 2e 50 6c 61 |Pack>(Ki|ller.Pla|
|000008d0| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|000008e0| 66 6f 2e 56 6f 69 63 65 | 54 79 70 65 29 2e 44 65 |fo.Voice|Type).De|
|000008f0| 66 61 75 6c 74 2e 4e 75 | 6d 54 61 75 6e 74 73 29 |fault.Nu|mTaunts)|
|00000900| 3b 0d 0a 09 09 09 09 09 | 69 66 20 28 20 69 20 3e |;.......|if ( i >|
|00000910| 20 30 20 29 0d 0a 09 09 | 09 09 09 09 4c 61 73 74 | 0 )....|....Last|
|00000920| 54 61 75 6e 74 5b 69 2d | 31 5d 20 3d 20 4c 61 73 |Taunt[i-|1] = Las|
|00000930| 74 54 61 75 6e 74 5b 69 | 5d 3b 0d 0a 09 09 09 09 |tTaunt[i|];......|
|00000940| 7d 09 0d 0a 09 09 09 09 | 4c 61 73 74 54 61 75 6e |}.......|LastTaun|
|00000950| 74 5b 33 5d 20 3d 20 4e | 65 78 74 54 61 75 6e 74 |t[3] = N|extTaunt|
|00000960| 3b 0d 0a 09 09 09 09 6b | 69 6c 6c 65 72 2e 53 65 |;......k|iller.Se|
|00000970| 6e 64 47 6c 6f 62 61 6c | 4d 65 73 73 61 67 65 28 |ndGlobal|Message(|
|00000980| 4e 6f 6e 65 2c 20 27 41 | 55 54 4f 54 41 55 4e 54 |None, 'A|UTOTAUNT|
|00000990| 27 2c 20 4e 65 78 74 54 | 61 75 6e 74 2c 20 35 29 |', NextT|aunt, 5)|
|000009a0| 3b 0d 0a 09 09 09 7d 0d | 0a 09 09 7d 0d 0a 09 09 |;.....}.|...}....|
|000009b0| 43 54 46 46 6c 61 67 28 | 4f 74 68 65 72 2e 50 6c |CTFFlag(|Other.Pl|
|000009c0| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|000009d0| 6e 66 6f 2e 48 61 73 46 | 6c 61 67 29 2e 44 72 6f |nfo.HasF|lag).Dro|
|000009e0| 70 28 30 2e 35 20 2a 20 | 4f 74 68 65 72 2e 56 65 |p(0.5 * |Other.Ve|
|000009f0| 6c 6f 63 69 74 79 29 3b | 0d 0a 09 7d 0d 0a 0d 0a |locity);|...}....|
|00000a00| 09 42 61 73 65 4d 75 74 | 61 74 6f 72 2e 53 63 6f |.BaseMut|ator.Sco|
|00000a10| 72 65 4b 69 6c 6c 28 4b | 69 6c 6c 65 72 2c 20 4f |reKill(K|iller, O|
|00000a20| 74 68 65 72 29 3b 0d 0a | 7d 09 0d 0a 0d 0a 66 75 |ther);..|}.....fu|
|00000a30| 6e 63 74 69 6f 6e 20 62 | 6f 6f 6c 20 53 65 74 45 |nction b|ool SetE|
|00000a40| 6e 64 43 61 6d 73 28 73 | 74 72 69 6e 67 20 52 65 |ndCams(s|tring Re|
|00000a50| 61 73 6f 6e 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |ason)..{|...local|
|00000a60| 20 54 65 61 6d 49 6e 66 | 6f 20 42 65 73 74 3b 0d | TeamInf|o Best;.|
|00000a70| 0a 09 6c 6f 63 61 6c 20 | 46 6c 61 67 42 61 73 65 |..local |FlagBase|
|00000a80| 20 42 65 73 74 42 61 73 | 65 3b 0d 0a 09 6c 6f 63 | BestBas|e;...loc|
|00000a90| 61 6c 20 43 54 46 46 6c | 61 67 20 42 65 73 74 46 |al CTFFl|ag BestF|
|00000aa0| 6c 61 67 3b 0d 0a 09 6c | 6f 63 61 6c 20 50 61 77 |lag;...l|ocal Paw|
|00000ab0| 6e 20 50 3b 0d 0a 09 6c | 6f 63 61 6c 20 69 6e 74 |n P;...l|ocal int|
|00000ac0| 20 69 3b 0d 0a 09 6c 6f | 63 61 6c 20 50 6c 61 79 | i;...lo|cal Play|
|00000ad0| 65 72 50 61 77 6e 20 50 | 6c 61 79 65 72 3b 0d 0a |erPawn P|layer;..|
|00000ae0| 0d 0a 09 66 6f 72 20 28 | 20 69 3d 30 3b 20 69 3c |...for (| i=0; i<|
|00000af0| 4d 61 78 54 65 61 6d 73 | 3b 20 69 2b 2b 20 29 0d |MaxTeams|; i++ ).|
|00000b00| 0a 09 09 69 66 20 28 20 | 28 42 65 73 74 20 3d 3d |...if ( |(Best ==|
|00000b10| 20 4e 6f 6e 65 29 20 7c | 7c 20 28 42 65 73 74 2e | None) ||| (Best.|
|00000b20| 53 63 6f 72 65 20 3c 20 | 54 65 61 6d 73 5b 69 5d |Score < |Teams[i]|
|00000b30| 2e 53 63 6f 72 65 29 20 | 29 0d 0a 09 09 09 42 65 |.Score) |).....Be|
|00000b40| 73 74 20 3d 20 54 65 61 | 6d 73 5b 69 5d 3b 0d 0a |st = Tea|ms[i];..|
|00000b50| 0d 0a 09 66 6f 72 20 28 | 20 69 3d 30 3b 20 69 3c |...for (| i=0; i<|
|00000b60| 4d 61 78 54 65 61 6d 73 | 3b 20 69 2b 2b 20 29 0d |MaxTeams|; i++ ).|
|00000b70| 0a 09 09 69 66 20 28 20 | 28 42 65 73 74 2e 54 65 |...if ( |(Best.Te|
|00000b80| 61 6d 49 6e 64 65 78 20 | 21 3d 20 69 29 20 26 26 |amIndex |!= i) &&|
|00000b90| 20 28 42 65 73 74 2e 53 | 63 6f 72 65 20 3d 3d 20 | (Best.S|core == |
|00000ba0| 54 65 61 6d 73 5b 69 5d | 2e 53 63 6f 72 65 29 20 |Teams[i]|.Score) |
|00000bb0| 29 0d 0a 09 09 7b 0d 0a | 09 09 09 42 72 6f 61 64 |)....{..|...Broad|
|00000bc0| 63 61 73 74 4c 6f 63 61 | 6c 69 7a 65 64 4d 65 73 |castLoca|lizedMes|
|00000bd0| 73 61 67 65 28 63 6c 61 | 73 73 27 44 65 61 74 68 |sage(cla|ss'Death|
|00000be0| 4d 61 74 63 68 4d 65 73 | 73 61 67 65 27 2c 20 30 |MatchMes|sage', 0|
|00000bf0| 29 3b 0d 0a 09 09 09 72 | 65 74 75 72 6e 20 66 61 |);.....r|eturn fa|
|00000c00| 6c 73 65 3b 0d 0a 09 09 | 7d 09 09 0d 0a 0d 0a 09 |lse;....|}.......|
|00000c10| 2f 2f 20 66 69 6e 64 20 | 77 69 6e 6e 65 72 0d 0a |// find |winner..|
|00000c20| 09 46 6f 72 45 61 63 68 | 20 41 6c 6c 41 63 74 6f |.ForEach| AllActo|
|00000c30| 72 73 28 63 6c 61 73 73 | 27 43 54 46 46 6c 61 67 |rs(class|'CTFFlag|
|00000c40| 27 2c 20 42 65 73 74 46 | 6c 61 67 29 0d 0a 09 09 |', BestF|lag)....|
|00000c50| 69 66 20 28 20 42 65 73 | 74 46 6c 61 67 2e 54 65 |if ( Bes|tFlag.Te|
|00000c60| 61 6d 20 3d 3d 20 42 65 | 73 74 2e 54 65 61 6d 49 |am == Be|st.TeamI|
|00000c70| 6e 64 65 78 20 29 0d 0a | 09 09 09 62 72 65 61 6b |ndex )..|...break|
|00000c80| 3b 0d 0a 0d 0a 09 42 65 | 73 74 42 61 73 65 20 3d |;.....Be|stBase =|
|00000c90| 20 42 65 73 74 46 6c 61 | 67 2e 48 6f 6d 65 42 61 | BestFla|g.HomeBa|
|00000ca0| 73 65 3b 0d 0a 09 47 61 | 6d 65 52 65 70 6c 69 63 |se;...Ga|meReplic|
|00000cb0| 61 74 69 6f 6e 49 6e 66 | 6f 2e 47 61 6d 65 45 6e |ationInf|o.GameEn|
|00000cc0| 64 65 64 43 6f 6d 6d 65 | 6e 74 73 20 3d 20 42 65 |dedComme|nts = Be|
|00000cd0| 73 74 2e 54 65 61 6d 4e | 61 6d 65 40 47 61 6d 65 |st.TeamN|ame@Game|
|00000ce0| 45 6e 64 65 64 4d 65 73 | 73 61 67 65 3b 0d 0a 0d |EndedMes|sage;...|
|00000cf0| 0a 09 45 6e 64 54 69 6d | 65 20 3d 20 4c 65 76 65 |..EndTim|e = Leve|
|00000d00| 6c 2e 54 69 6d 65 53 65 | 63 6f 6e 64 73 20 2b 20 |l.TimeSe|conds + |
|00000d10| 33 2e 30 3b 0d 0a 09 66 | 6f 72 20 28 20 50 3d 4c |3.0;...f|or ( P=L|
|00000d20| 65 76 65 6c 2e 50 61 77 | 6e 4c 69 73 74 3b 20 50 |evel.Paw|nList; P|
|00000d30| 21 3d 4e 6f 6e 65 3b 20 | 50 3d 50 2e 6e 65 78 74 |!=None; |P=P.next|
|00000d40| 50 61 77 6e 20 29 0d 0a | 09 7b 0d 0a 09 09 50 2e |Pawn )..|.{....P.|
|00000d50| 47 6f 74 6f 53 74 61 74 | 65 28 27 47 61 6d 65 45 |GotoStat|e('GameE|
|00000d60| 6e 64 65 64 27 29 3b 0d | 0a 09 09 50 6c 61 79 65 |nded');.|...Playe|
|00000d70| 72 20 3d 20 50 6c 61 79 | 65 72 50 61 77 6e 28 50 |r = Play|erPawn(P|
|00000d80| 29 3b 0d 0a 09 09 69 66 | 20 28 20 50 6c 61 79 65 |);....if| ( Playe|
|00000d90| 72 20 21 3d 20 4e 6f 6e | 65 20 29 0d 0a 09 09 7b |r != Non|e )....{|
|00000da0| 0d 0a 09 09 09 50 6c 61 | 79 65 72 2e 62 42 65 68 |.....Pla|yer.bBeh|
|00000db0| 69 6e 64 56 69 65 77 20 | 3d 20 74 72 75 65 3b 0d |indView |= true;.|
|00000dc0| 0a 09 09 09 50 6c 61 79 | 65 72 2e 56 69 65 77 54 |....Play|er.ViewT|
|00000dd0| 61 72 67 65 74 20 3d 20 | 42 65 73 74 42 61 73 65 |arget = |BestBase|
|00000de0| 3b 0d 0a 09 09 09 69 66 | 20 28 21 62 54 75 74 6f |;.....if| (!bTuto|
|00000df0| 72 69 61 6c 47 61 6d 65 | 29 0d 0a 09 09 09 7b 0d |rialGame|).....{.|
|00000e00| 0a 09 09 09 09 69 66 20 | 28 20 50 6c 61 79 65 72 |.....if |( Player|
|00000e10| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00000e20| 6f 6e 49 6e 66 6f 2e 54 | 65 61 6d 20 3d 3d 20 42 |onInfo.T|eam == B|
|00000e30| 65 73 74 2e 54 65 61 6d | 49 6e 64 65 78 20 29 0d |est.Team|Index ).|
|00000e40| 0a 09 09 09 09 09 50 6c | 61 79 65 72 2e 43 6c 69 |......Pl|ayer.Cli|
|00000e50| 65 6e 74 50 6c 61 79 53 | 6f 75 6e 64 28 73 6f 75 |entPlayS|ound(sou|
|00000e60| 6e 64 27 41 6e 6e 6f 75 | 6e 63 65 72 2e 57 69 6e |nd'Annou|ncer.Win|
|00000e70| 6e 65 72 27 2c 20 54 72 | 75 65 2c 20 74 72 75 65 |ner', Tr|ue, true|
|00000e80| 29 3b 0d 0a 09 09 09 09 | 65 6c 73 65 20 69 66 20 |);......|else if |
|00000e90| 28 20 21 50 6c 61 79 65 | 72 2e 49 73 41 28 27 53 |( !Playe|r.IsA('S|
|00000ea0| 70 65 63 74 61 74 6f 72 | 27 29 20 29 20 0d 0a 09 |pectator|') ) ...|
|00000eb0| 09 09 09 09 50 6c 61 79 | 65 72 2e 43 6c 69 65 6e |....Play|er.Clien|
|00000ec0| 74 50 6c 61 79 53 6f 75 | 6e 64 28 73 6f 75 6e 64 |tPlaySou|nd(sound|
|00000ed0| 27 41 6e 6e 6f 75 6e 63 | 65 72 2e 4c 6f 73 74 4d |'Announc|er.LostM|
|00000ee0| 61 74 63 68 27 2c 20 54 | 72 75 65 2c 20 74 72 75 |atch', T|rue, tru|
|00000ef0| 65 29 3b 0d 0a 09 09 09 | 7d 0d 0a 09 09 09 50 6c |e);.....|}.....Pl|
|00000f00| 61 79 65 72 2e 43 6c 69 | 65 6e 74 47 61 6d 65 45 |ayer.Cli|entGameE|
|00000f10| 6e 64 65 64 28 29 3b 0d | 0a 09 09 7d 0d 0a 09 7d |nded();.|...}...}|
|00000f20| 0d 0a 09 42 65 73 74 42 | 61 73 65 2e 62 48 69 64 |...BestB|ase.bHid|
|00000f30| 64 65 6e 20 3d 20 66 61 | 6c 73 65 3b 0d 0a 09 42 |den = fa|lse;...B|
|00000f40| 65 73 74 46 6c 61 67 2e | 62 48 69 64 64 65 6e 20 |estFlag.|bHidden |
|00000f50| 3d 20 74 72 75 65 3b 0d | 0a 09 43 61 6c 63 45 6e |= true;.|..CalcEn|
|00000f60| 64 53 74 61 74 73 28 29 | 3b 0d 0a 09 72 65 74 75 |dStats()|;...retu|
|00000f70| 72 6e 20 74 72 75 65 3b | 0d 0a 7d 0d 0a 0d 0a 66 |rn true;|..}....f|
|00000f80| 75 6e 63 74 69 6f 6e 20 | 43 61 6c 63 45 6e 64 53 |unction |CalcEndS|
|00000f90| 74 61 74 73 28 29 0d 0a | 7b 0d 0a 09 54 6f 74 61 |tats()..|{...Tota|
|00000fa0| 6c 47 61 6d 65 73 2b 2b | 3b 0d 0a 09 53 61 76 65 |lGames++|;...Save|
|00000fb0| 43 6f 6e 66 69 67 28 29 | 3b 0d 0a 7d 0d 0a 0d 0a |Config()|;..}....|
|00000fc0| 66 75 6e 63 74 69 6f 6e | 20 53 63 6f 72 65 46 6c |function| ScoreFl|
|00000fd0| 61 67 28 50 61 77 6e 20 | 53 63 6f 72 65 72 2c 20 |ag(Pawn |Scorer, |
|00000fe0| 43 54 46 46 6c 61 67 20 | 74 68 65 46 6c 61 67 29 |CTFFlag |theFlag)|
|00000ff0| 0d 0a 7b 0d 0a 09 6c 6f | 63 61 6c 20 70 61 77 6e |..{...lo|cal pawn|
|00001000| 20 54 65 61 6d 4d 61 74 | 65 3b 0d 0a 09 6c 6f 63 | TeamMat|e;...loc|
|00001010| 61 6c 20 41 63 74 6f 72 | 20 41 3b 0d 0a 0d 0a 09 |al Actor| A;.....|
|00001020| 69 66 20 28 20 53 63 6f | 72 65 72 2e 50 6c 61 79 |if ( Sco|rer.Play|
|00001030| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00001040| 6f 2e 54 65 61 6d 20 3d | 3d 20 74 68 65 46 6c 61 |o.Team =|= theFla|
|00001050| 67 2e 54 65 61 6d 20 29 | 0d 0a 09 7b 0d 0a 09 09 |g.Team )|...{....|
|00001060| 69 66 20 28 4c 65 76 65 | 6c 2e 47 61 6d 65 2e 57 |if (Leve|l.Game.W|
|00001070| 6f 72 6c 64 4c 6f 67 20 | 21 3d 20 4e 6f 6e 65 29 |orldLog |!= None)|
|00001080| 0d 0a 09 09 7b 0d 0a 09 | 09 09 4c 65 76 65 6c 2e |....{...|..Level.|
|00001090| 47 61 6d 65 2e 57 6f 72 | 6c 64 4c 6f 67 2e 4c 6f |Game.Wor|ldLog.Lo|
|000010a0| 67 53 70 65 63 69 61 6c | 45 76 65 6e 74 28 22 66 |gSpecial|Event("f|
|000010b0| 6c 61 67 5f 72 65 74 75 | 72 6e 65 64 22 2c 20 53 |lag_retu|rned", S|
|000010c0| 63 6f 72 65 72 2e 50 6c | 61 79 65 72 52 65 70 6c |corer.Pl|ayerRepl|
|000010d0| 69 63 61 74 69 6f 6e 49 | 6e 66 6f 2e 50 6c 61 79 |icationI|nfo.Play|
|000010e0| 65 72 49 44 2c 20 54 65 | 61 6d 73 5b 74 68 65 46 |erID, Te|ams[theF|
|000010f0| 6c 61 67 2e 54 65 61 6d | 5d 2e 54 65 61 6d 49 6e |lag.Team|].TeamIn|
|00001100| 64 65 78 29 3b 0d 0a 09 | 09 7d 0d 0a 09 09 69 66 |dex);...|.}....if|
|00001110| 20 28 4c 65 76 65 6c 2e | 47 61 6d 65 2e 4c 6f 63 | (Level.|Game.Loc|
|00001120| 61 6c 4c 6f 67 20 21 3d | 20 4e 6f 6e 65 29 0d 0a |alLog !=| None)..|
|00001130| 09 09 7b 0d 0a 09 09 09 | 4c 65 76 65 6c 2e 47 61 |..{.....|Level.Ga|
|00001140| 6d 65 2e 4c 6f 63 61 6c | 4c 6f 67 2e 4c 6f 67 53 |me.Local|Log.LogS|
|00001150| 70 65 63 69 61 6c 45 76 | 65 6e 74 28 22 66 6c 61 |pecialEv|ent("fla|
|00001160| 67 5f 72 65 74 75 72 6e | 65 64 22 2c 20 53 63 6f |g_return|ed", Sco|
|00001170| 72 65 72 2e 50 6c 61 79 | 65 72 52 65 70 6c 69 63 |rer.Play|erReplic|
|00001180| 61 74 69 6f 6e 49 6e 66 | 6f 2e 50 6c 61 79 65 72 |ationInf|o.Player|
|00001190| 49 44 2c 20 54 65 61 6d | 73 5b 74 68 65 46 6c 61 |ID, Team|s[theFla|
|000011a0| 67 2e 54 65 61 6d 5d 2e | 54 65 61 6d 49 6e 64 65 |g.Team].|TeamInde|
|000011b0| 78 29 3b 0d 0a 09 09 7d | 0d 0a 09 09 42 72 6f 61 |x);....}|....Broa|
|000011c0| 64 63 61 73 74 4c 6f 63 | 61 6c 69 7a 65 64 4d 65 |dcastLoc|alizedMe|
|000011d0| 73 73 61 67 65 28 20 63 | 6c 61 73 73 27 43 54 46 |ssage( c|lass'CTF|
|000011e0| 4d 65 73 73 61 67 65 27 | 2c 20 31 2c 20 53 63 6f |Message'|, 1, Sco|
|000011f0| 72 65 72 2e 50 6c 61 79 | 65 72 52 65 70 6c 69 63 |rer.Play|erReplic|
|00001200| 61 74 69 6f 6e 49 6e 66 | 6f 2c 20 4e 6f 6e 65 2c |ationInf|o, None,|
|00001210| 20 54 68 65 46 6c 61 67 | 20 29 3b 0d 0a 09 09 66 | TheFlag| );....f|
|00001220| 6f 72 20 28 20 54 65 61 | 6d 4d 61 74 65 3d 4c 65 |or ( Tea|mMate=Le|
|00001230| 76 65 6c 2e 50 61 77 6e | 4c 69 73 74 3b 20 54 65 |vel.Pawn|List; Te|
|00001240| 61 6d 4d 61 74 65 21 3d | 4e 6f 6e 65 3b 20 54 65 |amMate!=|None; Te|
|00001250| 61 6d 4d 61 74 65 3d 54 | 65 61 6d 4d 61 74 65 2e |amMate=T|eamMate.|
|00001260| 4e 65 78 74 50 61 77 6e | 20 29 0d 0a 09 09 7b 0d |NextPawn| )....{.|
|00001270| 0a 09 09 09 69 66 20 28 | 20 54 65 61 6d 4d 61 74 |....if (| TeamMat|
|00001280| 65 2e 49 73 41 28 27 50 | 6c 61 79 65 72 50 61 77 |e.IsA('P|layerPaw|
|00001290| 6e 27 29 20 29 0d 0a 09 | 09 09 09 50 6c 61 79 65 |n') )...|...Playe|
|000012a0| 72 50 61 77 6e 28 54 65 | 61 6d 4d 61 74 65 29 2e |rPawn(Te|amMate).|
|000012b0| 43 6c 69 65 6e 74 50 6c | 61 79 53 6f 75 6e 64 28 |ClientPl|aySound(|
|000012c0| 52 65 74 75 72 6e 53 6f | 75 6e 64 29 3b 0d 0a 09 |ReturnSo|und);...|
|000012d0| 09 09 65 6c 73 65 20 69 | 66 20 28 20 54 65 61 6d |..else i|f ( Team|
|000012e0| 4d 61 74 65 2e 49 73 41 | 28 27 42 6f 74 27 29 20 |Mate.IsA|('Bot') |
|000012f0| 29 0d 0a 09 09 09 09 42 | 6f 74 28 54 65 61 6d 4d |)......B|ot(TeamM|
|00001300| 61 74 65 29 2e 53 65 74 | 4f 72 64 65 72 73 28 42 |ate).Set|Orders(B|
|00001310| 6f 74 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |otReplic|ationInf|
|00001320| 6f 28 54 65 61 6d 4d 61 | 74 65 2e 50 6c 61 79 65 |o(TeamMa|te.Playe|
|00001330| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00001340| 29 2e 52 65 61 6c 4f 72 | 64 65 72 73 2c 20 42 6f |).RealOr|ders, Bo|
|00001350| 74 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |tReplica|tionInfo|
|00001360| 28 54 65 61 6d 4d 61 74 | 65 2e 50 6c 61 79 65 72 |(TeamMat|e.Player|
|00001370| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 29 |Replicat|ionInfo)|
|00001380| 2e 52 65 61 6c 4f 72 64 | 65 72 47 69 76 65 72 2c |.RealOrd|erGiver,|
|00001390| 20 74 72 75 65 29 3b 0d | 0a 09 09 7d 0d 0a 09 09 | true);.|...}....|
|000013a0| 72 65 74 75 72 6e 3b 0d | 0a 09 7d 0d 0a 0d 0a 09 |return;.|..}.....|
|000013b0| 69 66 20 28 20 62 52 61 | 74 65 64 47 61 6d 65 20 |if ( bRa|tedGame |
|000013c0| 26 26 20 53 63 6f 72 65 | 72 2e 49 73 41 28 27 50 |&& Score|r.IsA('P|
|000013d0| 6c 61 79 65 72 50 61 77 | 6e 27 29 20 29 0d 0a 09 |layerPaw|n') )...|
|000013e0| 09 62 46 75 6c 66 69 6c | 6c 65 64 53 70 65 63 69 |.bFulfil|ledSpeci|
|000013f0| 61 6c 20 3d 20 74 72 75 | 65 3b 0d 0a 09 53 63 6f |al = tru|e;...Sco|
|00001400| 72 65 72 2e 50 6c 61 79 | 65 72 52 65 70 6c 69 63 |rer.Play|erReplic|
|00001410| 61 74 69 6f 6e 49 6e 66 | 6f 2e 53 63 6f 72 65 20 |ationInf|o.Score |
|00001420| 2b 3d 20 37 3b 0d 0a 09 | 54 65 61 6d 73 5b 53 63 |+= 7;...|Teams[Sc|
|00001430| 6f 72 65 72 2e 50 6c 61 | 79 65 72 52 65 70 6c 69 |orer.Pla|yerRepli|
|00001440| 63 61 74 69 6f 6e 49 6e | 66 6f 2e 54 65 61 6d 5d |cationIn|fo.Team]|
|00001450| 2e 53 63 6f 72 65 20 2b | 3d 20 31 2e 30 3b 0d 0a |.Score +|= 1.0;..|
|00001460| 0d 0a 09 66 6f 72 20 28 | 20 54 65 61 6d 4d 61 74 |...for (| TeamMat|
|00001470| 65 3d 4c 65 76 65 6c 2e | 50 61 77 6e 4c 69 73 74 |e=Level.|PawnList|
|00001480| 3b 20 54 65 61 6d 4d 61 | 74 65 21 3d 4e 6f 6e 65 |; TeamMa|te!=None|
|00001490| 3b 20 54 65 61 6d 4d 61 | 74 65 3d 54 65 61 6d 4d |; TeamMa|te=TeamM|
|000014a0| 61 74 65 2e 4e 65 78 74 | 50 61 77 6e 20 29 0d 0a |ate.Next|Pawn )..|
|000014b0| 09 7b 0d 0a 09 09 69 66 | 20 28 20 54 65 61 6d 4d |.{....if| ( TeamM|
|000014c0| 61 74 65 2e 49 73 41 28 | 27 50 6c 61 79 65 72 50 |ate.IsA(|'PlayerP|
|000014d0| 61 77 6e 27 29 20 29 0d | 0a 09 09 09 50 6c 61 79 |awn') ).|....Play|
|000014e0| 65 72 50 61 77 6e 28 54 | 65 61 6d 4d 61 74 65 29 |erPawn(T|eamMate)|
|000014f0| 2e 43 6c 69 65 6e 74 50 | 6c 61 79 53 6f 75 6e 64 |.ClientP|laySound|
|00001500| 28 43 61 70 74 75 72 65 | 53 6f 75 6e 64 5b 53 63 |(Capture|Sound[Sc|
|00001510| 6f 72 65 72 2e 50 6c 61 | 79 65 72 52 65 70 6c 69 |orer.Pla|yerRepli|
|00001520| 63 61 74 69 6f 6e 49 6e | 66 6f 2e 54 65 61 6d 5d |cationIn|fo.Team]|
|00001530| 29 3b 0d 0a 09 09 65 6c | 73 65 20 69 66 20 28 20 |);....el|se if ( |
|00001540| 54 65 61 6d 4d 61 74 65 | 2e 49 73 41 28 27 42 6f |TeamMate|.IsA('Bo|
|00001550| 74 27 29 20 29 0d 0a 09 | 09 09 42 6f 74 28 54 65 |t') )...|..Bot(Te|
|00001560| 61 6d 4d 61 74 65 29 2e | 53 65 74 4f 72 64 65 72 |amMate).|SetOrder|
|00001570| 73 28 42 6f 74 52 65 70 | 6c 69 63 61 74 69 6f 6e |s(BotRep|lication|
|00001580| 49 6e 66 6f 28 54 65 61 | 6d 4d 61 74 65 2e 50 6c |Info(Tea|mMate.Pl|
|00001590| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|000015a0| 6e 66 6f 29 2e 52 65 61 | 6c 4f 72 64 65 72 73 2c |nfo).Rea|lOrders,|
|000015b0| 20 42 6f 74 52 65 70 6c | 69 63 61 74 69 6f 6e 49 | BotRepl|icationI|
|000015c0| 6e 66 6f 28 54 65 61 6d | 4d 61 74 65 2e 50 6c 61 |nfo(Team|Mate.Pla|
|000015d0| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|000015e0| 66 6f 29 2e 52 65 61 6c | 4f 72 64 65 72 47 69 76 |fo).Real|OrderGiv|
|000015f0| 65 72 2c 20 74 72 75 65 | 29 3b 0d 0a 09 7d 0d 0a |er, true|);...}..|
|00001600| 0d 0a 09 69 66 20 28 4c | 65 76 65 6c 2e 47 61 6d |...if (L|evel.Gam|
|00001610| 65 2e 57 6f 72 6c 64 4c | 6f 67 20 21 3d 20 4e 6f |e.WorldL|og != No|
|00001620| 6e 65 29 0d 0a 09 7b 0d | 0a 09 09 4c 65 76 65 6c |ne)...{.|...Level|
|00001630| 2e 47 61 6d 65 2e 57 6f | 72 6c 64 4c 6f 67 2e 4c |.Game.Wo|rldLog.L|
|00001640| 6f 67 53 70 65 63 69 61 | 6c 45 76 65 6e 74 28 22 |ogSpecia|lEvent("|
|00001650| 66 6c 61 67 5f 63 61 70 | 74 75 72 65 64 22 2c 20 |flag_cap|tured", |
|00001660| 53 63 6f 72 65 72 2e 50 | 6c 61 79 65 72 52 65 70 |Scorer.P|layerRep|
|00001670| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 50 6c 61 |lication|Info.Pla|
|00001680| 79 65 72 49 44 2c 20 54 | 65 61 6d 73 5b 74 68 65 |yerID, T|eams[the|
|00001690| 46 6c 61 67 2e 54 65 61 | 6d 5d 2e 54 65 61 6d 49 |Flag.Tea|m].TeamI|
|000016a0| 6e 64 65 78 29 3b 0d 0a | 09 7d 0d 0a 09 69 66 20 |ndex);..|.}...if |
|000016b0| 28 4c 65 76 65 6c 2e 47 | 61 6d 65 2e 4c 6f 63 61 |(Level.G|ame.Loca|
|000016c0| 6c 4c 6f 67 20 21 3d 20 | 4e 6f 6e 65 29 0d 0a 09 |lLog != |None)...|
|000016d0| 7b 0d 0a 09 09 4c 65 76 | 65 6c 2e 47 61 6d 65 2e |{....Lev|el.Game.|
|000016e0| 4c 6f 63 61 6c 4c 6f 67 | 2e 4c 6f 67 53 70 65 63 |LocalLog|.LogSpec|
|000016f0| 69 61 6c 45 76 65 6e 74 | 28 22 66 6c 61 67 5f 63 |ialEvent|("flag_c|
|00001700| 61 70 74 75 72 65 64 22 | 2c 20 53 63 6f 72 65 72 |aptured"|, Scorer|
|00001710| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00001720| 6f 6e 49 6e 66 6f 2e 50 | 6c 61 79 65 72 49 44 2c |onInfo.P|layerID,|
|00001730| 20 54 65 61 6d 73 5b 74 | 68 65 46 6c 61 67 2e 54 | Teams[t|heFlag.T|
|00001740| 65 61 6d 5d 2e 54 65 61 | 6d 49 6e 64 65 78 29 3b |eam].Tea|mIndex);|
|00001750| 0d 0a 09 7d 0d 0a 09 54 | 6f 74 61 6c 46 6c 61 67 |...}...T|otalFlag|
|00001760| 73 2b 2b 3b 0d 0a 09 42 | 72 6f 61 64 63 61 73 74 |s++;...B|roadcast|
|00001770| 4c 6f 63 61 6c 69 7a 65 | 64 4d 65 73 73 61 67 65 |Localize|dMessage|
|00001780| 28 20 63 6c 61 73 73 27 | 43 54 46 4d 65 73 73 61 |( class'|CTFMessa|
|00001790| 67 65 27 2c 20 30 2c 20 | 53 63 6f 72 65 72 2e 50 |ge', 0, |Scorer.P|
|000017a0| 6c 61 79 65 72 52 65 70 | 6c 69 63 61 74 69 6f 6e |layerRep|lication|
|000017b0| 49 6e 66 6f 2c 20 4e 6f | 6e 65 2c 20 54 68 65 46 |Info, No|ne, TheF|
|000017c0| 6c 61 67 20 29 3b 0d 0a | 09 69 66 20 28 20 74 68 |lag );..|.if ( th|
|000017d0| 65 46 6c 61 67 2e 48 6f | 6d 65 42 61 73 65 2e 45 |eFlag.Ho|meBase.E|
|000017e0| 76 65 6e 74 20 21 3d 20 | 27 27 20 29 0d 0a 09 09 |vent != |'' )....|
|000017f0| 66 6f 72 65 61 63 68 20 | 61 6c 6c 61 63 74 6f 72 |foreach |allactor|
|00001800| 73 28 63 6c 61 73 73 27 | 41 63 74 6f 72 27 2c 20 |s(class'|Actor', |
|00001810| 41 2c 20 74 68 65 46 6c | 61 67 2e 48 6f 6d 65 42 |A, theFl|ag.HomeB|
|00001820| 61 73 65 2e 45 76 65 6e | 74 20 29 0d 0a 09 09 09 |ase.Even|t ).....|
|00001830| 41 2e 54 72 69 67 67 65 | 72 28 74 68 65 46 6c 61 |A.Trigge|r(theFla|
|00001840| 67 2e 48 6f 6d 65 42 61 | 73 65 2c 09 53 63 6f 72 |g.HomeBa|se,.Scor|
|00001850| 65 72 29 3b 0d 0a 0d 0a | 09 69 66 20 28 20 28 62 |er);....|.if ( (b|
|00001860| 4f 76 65 72 54 69 6d 65 | 20 7c 7c 20 28 47 6f 61 |OverTime| || (Goa|
|00001870| 6c 54 65 61 6d 53 63 6f | 72 65 20 21 3d 20 30 29 |lTeamSco|re != 0)|
|00001880| 29 20 26 26 20 28 54 65 | 61 6d 73 5b 53 63 6f 72 |) && (Te|ams[Scor|
|00001890| 65 72 2e 50 6c 61 79 65 | 72 52 65 70 6c 69 63 61 |er.Playe|rReplica|
|000018a0| 74 69 6f 6e 49 6e 66 6f | 2e 54 65 61 6d 5d 2e 53 |tionInfo|.Team].S|
|000018b0| 63 6f 72 65 20 3e 3d 20 | 47 6f 61 6c 54 65 61 6d |core >= |GoalTeam|
|000018c0| 53 63 6f 72 65 29 20 29 | 0d 0a 09 09 45 6e 64 47 |Score) )|....EndG|
|000018d0| 61 6d 65 28 22 74 65 61 | 6d 73 63 6f 72 65 6c 69 |ame("tea|mscoreli|
|000018e0| 6d 69 74 22 29 3b 0d 0a | 09 65 6c 73 65 20 69 66 |mit");..|.else if|
|000018f0| 20 28 20 62 4f 76 65 72 | 54 69 6d 65 20 29 0d 0a | ( bOver|Time )..|
|00001900| 09 09 45 6e 64 47 61 6d | 65 28 22 74 69 6d 65 6c |..EndGam|e("timel|
|00001910| 69 6d 69 74 22 29 3b 0d | 0a 7d 0d 0a 20 0d 0a 66 |imit");.|.}.. ..f|
|00001920| 75 6e 63 74 69 6f 6e 20 | 41 63 74 6f 72 20 53 65 |unction |Actor Se|
|00001930| 74 44 65 66 65 6e 73 65 | 46 6f 72 28 42 6f 74 20 |tDefense|For(Bot |
|00001940| 61 42 6f 74 29 0d 0a 7b | 0d 0a 09 72 65 74 75 72 |aBot)..{|...retur|
|00001950| 6e 20 43 54 46 52 65 70 | 6c 69 63 61 74 69 6f 6e |n CTFRep|lication|
|00001960| 49 6e 66 6f 28 47 61 6d | 65 52 65 70 6c 69 63 61 |Info(Gam|eReplica|
|00001970| 74 69 6f 6e 49 6e 66 6f | 29 2e 46 6c 61 67 4c 69 |tionInfo|).FlagLi|
|00001980| 73 74 5b 61 42 6f 74 2e | 50 6c 61 79 65 72 52 65 |st[aBot.|PlayerRe|
|00001990| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 2e 54 65 |plicatio|nInfo.Te|
|000019a0| 61 6d 5d 2e 48 6f 6d 65 | 42 61 73 65 3b 0d 0a 7d |am].Home|Base;..}|
|000019b0| 0d 0a 0d 0a 0d 0a 66 75 | 6e 63 74 69 6f 6e 20 66 |......fu|nction f|
|000019c0| 6c 6f 61 74 20 47 61 6d | 65 54 68 72 65 61 74 41 |loat Gam|eThreatA|
|000019d0| 64 64 28 42 6f 74 20 61 | 42 6f 74 2c 20 50 61 77 |dd(Bot a|Bot, Paw|
|000019e0| 6e 20 4f 74 68 65 72 29 | 0d 0a 7b 0d 0a 09 6c 6f |n Other)|..{...lo|
|000019f0| 63 61 6c 20 43 54 46 46 | 6c 61 67 20 61 46 6c 61 |cal CTFF|lag aFla|
|00001a00| 67 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 4f 74 68 65 |g;.....i|f ( Othe|
|00001a10| 72 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |r.Player|Replicat|
|00001a20| 69 6f 6e 49 6e 66 6f 2e | 48 61 73 46 6c 61 67 20 |ionInfo.|HasFlag |
|00001a30| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 72 65 74 |!= None |)....ret|
|00001a40| 75 72 6e 20 31 30 3b 0d | 0a 09 65 6c 73 65 0d 0a |urn 10;.|..else..|
|00001a50| 09 09 72 65 74 75 72 6e | 20 30 3b 0d 0a 7d 0d 0a |..return| 0;..}..|
|00001a60| 0d 0a 66 75 6e 63 74 69 | 6f 6e 20 62 6f 6f 6c 20 |..functi|on bool |
|00001a70| 46 69 6e 64 50 61 74 68 | 54 6f 42 61 73 65 28 42 |FindPath|ToBase(B|
|00001a80| 6f 74 20 61 42 6f 74 2c | 20 46 6c 61 67 42 61 73 |ot aBot,| FlagBas|
|00001a90| 65 20 61 42 61 73 65 29 | 0d 0a 7b 0d 0a 09 69 66 |e aBase)|..{...if|
|00001aa0| 20 28 20 28 61 42 6f 74 | 2e 41 6c 74 65 72 6e 61 | ( (aBot|.Alterna|
|00001ab0| 74 65 50 61 74 68 20 21 | 3d 20 4e 6f 6e 65 29 20 |tePath !|= None) |
|00001ac0| 0d 0a 09 09 26 26 20 28 | 61 42 6f 74 2e 41 6c 74 |....&& (|aBot.Alt|
|00001ad0| 65 72 6e 61 74 65 50 61 | 74 68 2e 74 65 61 6d 20 |ernatePa|th.team |
|00001ae0| 3d 3d 20 61 42 61 73 65 | 2e 74 65 61 6d 29 20 29 |== aBase|.team) )|
|00001af0| 0d 0a 09 7b 0d 0a 09 09 | 69 66 20 28 20 61 42 6f |...{....|if ( aBo|
|00001b00| 74 2e 41 63 74 6f 72 52 | 65 61 63 68 61 62 6c 65 |t.ActorR|eachable|
|00001b10| 28 61 42 6f 74 2e 41 6c | 74 65 72 6e 61 74 65 50 |(aBot.Al|ternateP|
|00001b20| 61 74 68 29 20 29 0d 0a | 09 09 7b 0d 0a 09 09 09 |ath) )..|..{.....|
|00001b30| 61 42 6f 74 2e 4d 6f 76 | 65 54 61 72 67 65 74 20 |aBot.Mov|eTarget |
|00001b40| 3d 20 61 42 6f 74 2e 41 | 6c 74 65 72 6e 61 74 65 |= aBot.A|lternate|
|00001b50| 50 61 74 68 3b 0d 0a 09 | 09 09 61 42 6f 74 2e 41 |Path;...|..aBot.A|
|00001b60| 6c 74 65 72 6e 61 74 65 | 50 61 74 68 20 3d 20 4e |lternate|Path = N|
|00001b70| 6f 6e 65 3b 0d 0a 09 09 | 7d 0d 0a 09 09 65 6c 73 |one;....|}....els|
|00001b80| 65 0d 0a 09 09 7b 0d 0a | 09 09 09 61 42 6f 74 2e |e....{..|...aBot.|
|00001b90| 4d 6f 76 65 54 61 72 67 | 65 74 20 3d 20 61 42 6f |MoveTarg|et = aBo|
|00001ba0| 74 2e 46 69 6e 64 50 61 | 74 68 54 6f 77 61 72 64 |t.FindPa|thToward|
|00001bb0| 28 61 42 6f 74 2e 41 6c | 74 65 72 6e 61 74 65 50 |(aBot.Al|ternateP|
|00001bc0| 61 74 68 29 3b 0d 0a 09 | 09 09 69 66 20 28 20 61 |ath);...|..if ( a|
|00001bd0| 42 6f 74 2e 4d 6f 76 65 | 54 61 72 67 65 74 20 3d |Bot.Move|Target =|
|00001be0| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 09 7b 0d 0a |= None )|.....{..|
|00001bf0| 09 09 09 09 61 42 6f 74 | 2e 41 6c 74 65 72 6e 61 |....aBot|.Alterna|
|00001c00| 74 65 50 61 74 68 20 3d | 20 4e 6f 6e 65 3b 0d 0a |tePath =| None;..|
|00001c10| 09 09 09 09 61 42 6f 74 | 2e 4d 6f 76 65 54 61 72 |....aBot|.MoveTar|
|00001c20| 67 65 74 20 3d 20 61 42 | 6f 74 2e 46 69 6e 64 50 |get = aB|ot.FindP|
|00001c30| 61 74 68 54 6f 77 61 72 | 64 28 61 42 61 73 65 29 |athTowar|d(aBase)|
|00001c40| 3b 0d 0a 09 09 09 7d 0d | 0a 09 09 7d 0d 0a 09 7d |;.....}.|...}...}|
|00001c50| 0d 0a 09 65 6c 73 65 09 | 09 09 09 09 09 0d 0a 09 |...else.|........|
|00001c60| 09 61 42 6f 74 2e 4d 6f | 76 65 54 61 72 67 65 74 |.aBot.Mo|veTarget|
|00001c70| 20 3d 20 61 42 6f 74 2e | 46 69 6e 64 50 61 74 68 | = aBot.|FindPath|
|00001c80| 54 6f 77 61 72 64 28 61 | 42 61 73 65 29 3b 0d 0a |Toward(a|Base);..|
|00001c90| 0d 0a 09 72 65 74 75 72 | 6e 20 28 61 42 6f 74 2e |...retur|n (aBot.|
|00001ca0| 62 4e 6f 43 6c 65 61 72 | 53 70 65 63 69 61 6c 20 |bNoClear|Special |
|00001cb0| 7c 7c 20 28 61 42 6f 74 | 2e 4d 6f 76 65 54 61 72 ||| (aBot|.MoveTar|
|00001cc0| 67 65 74 20 21 3d 20 4e | 6f 6e 65 29 29 3b 0d 0a |get != N|one));..|
|00001cd0| 7d 0d 0a 0d 0a 66 75 6e | 63 74 69 6f 6e 20 62 79 |}....fun|ction by|
|00001ce0| 74 65 20 41 73 73 65 73 | 73 42 6f 74 41 74 74 69 |te Asses|sBotAtti|
|00001cf0| 74 75 64 65 28 42 6f 74 | 20 61 42 6f 74 2c 20 50 |tude(Bot| aBot, P|
|00001d00| 61 77 6e 20 4f 74 68 65 | 72 29 0d 0a 7b 0d 0a 09 |awn Othe|r)..{...|
|00001d10| 69 66 20 28 20 61 42 6f | 74 2e 50 6c 61 79 65 72 |if ( aBo|t.Player|
|00001d20| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|00001d30| 54 65 61 6d 20 3d 3d 20 | 4f 74 68 65 72 2e 50 6c |Team == |Other.Pl|
|00001d40| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|00001d50| 6e 66 6f 2e 54 65 61 6d | 20 29 0d 0a 09 09 72 65 |nfo.Team| )....re|
|00001d60| 74 75 72 6e 20 33 3b 20 | 2f 2f 74 65 61 6d 6d 61 |turn 3; |//teamma|
|00001d70| 74 65 0d 0a 09 65 6c 73 | 65 20 69 66 20 28 20 28 |te...els|e if ( (|
|00001d80| 4f 74 68 65 72 2e 62 49 | 73 50 6c 61 79 65 72 20 |Other.bI|sPlayer |
|00001d90| 26 26 20 28 4f 74 68 65 | 72 2e 50 6c 61 79 65 72 |&& (Othe|r.Player|
|00001da0| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|00001db0| 48 61 73 46 6c 61 67 20 | 21 3d 20 4e 6f 6e 65 29 |HasFlag |!= None)|
|00001dc0| 29 20 0d 0a 09 09 09 09 | 7c 7c 20 28 61 42 6f 74 |) ......||| (aBot|
|00001dd0| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00001de0| 6f 6e 49 6e 66 6f 2e 48 | 61 73 46 6c 61 67 20 21 |onInfo.H|asFlag !|
|00001df0| 3d 20 4e 6f 6e 65 29 20 | 29 0d 0a 09 09 72 65 74 |= None) |)....ret|
|00001e00| 75 72 6e 20 31 3b 0d 0a | 09 65 6c 73 65 20 0d 0a |urn 1;..|.else ..|
|00001e10| 09 09 72 65 74 75 72 6e | 20 53 75 70 65 72 2e 41 |..return| Super.A|
|00001e20| 73 73 65 73 73 42 6f 74 | 41 74 74 69 74 75 64 65 |ssessBot|Attitude|
|00001e30| 28 61 42 6f 74 2c 20 4f | 74 68 65 72 29 3b 0d 0a |(aBot, O|ther);..|
|00001e40| 7d 0d 0a 0d 0a 66 75 6e | 63 74 69 6f 6e 20 62 6f |}....fun|ction bo|
|00001e50| 6f 6c 20 46 69 6e 64 53 | 70 65 63 69 61 6c 41 74 |ol FindS|pecialAt|
|00001e60| 74 72 61 63 74 69 6f 6e | 46 6f 72 28 42 6f 74 20 |traction|For(Bot |
|00001e70| 61 42 6f 74 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |aBot)..{|...local|
|00001e80| 20 43 54 46 46 6c 61 67 | 20 46 72 69 65 6e 64 6c | CTFFlag| Friendl|
|00001e90| 79 46 6c 61 67 2c 20 45 | 6e 65 6d 79 46 6c 61 67 |yFlag, E|nemyFlag|
|00001ea0| 3b 0d 0a 09 6c 6f 63 61 | 6c 20 62 6f 6f 6c 20 62 |;...loca|l bool b|
|00001eb0| 53 65 65 46 6c 61 67 2c | 20 62 52 65 61 63 68 48 |SeeFlag,| bReachH|
|00001ec0| 6f 6d 65 2c 20 62 4f 72 | 64 65 72 65 64 3b 0d 0a |ome, bOr|dered;..|
|00001ed0| 09 6c 6f 63 61 6c 20 66 | 6c 6f 61 74 20 44 69 73 |.local f|loat Dis|
|00001ee0| 74 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 61 42 6f 74 |t;.....i|f ( aBot|
|00001ef0| 2e 4c 61 73 74 41 74 74 | 72 61 63 74 43 68 65 63 |.LastAtt|ractChec|
|00001f00| 6b 20 3d 3d 20 4c 65 76 | 65 6c 2e 54 69 6d 65 53 |k == Lev|el.TimeS|
|00001f10| 65 63 6f 6e 64 73 20 29 | 0d 0a 09 09 72 65 74 75 |econds )|....retu|
|00001f20| 72 6e 20 66 61 6c 73 65 | 3b 0d 0a 09 61 42 6f 74 |rn false|;...aBot|
|00001f30| 2e 4c 61 73 74 41 74 74 | 72 61 63 74 43 68 65 63 |.LastAtt|ractChec|
|00001f40| 6b 20 3d 20 4c 65 76 65 | 6c 2e 54 69 6d 65 53 65 |k = Leve|l.TimeSe|
|00001f50| 63 6f 6e 64 73 3b 0d 0a | 0d 0a 09 2f 2f 6c 6f 67 |conds;..|...//log|
|00001f60| 28 61 42 6f 74 40 22 66 | 69 6e 64 20 73 70 65 63 |(aBot@"f|ind spec|
|00001f70| 69 61 6c 20 61 74 74 72 | 61 63 74 69 6f 6e 20 69 |ial attr|action i|
|00001f80| 6e 20 73 74 61 74 65 22 | 40 61 42 6f 74 2e 47 65 |n state"|@aBot.Ge|
|00001f90| 74 53 74 61 74 65 4e 61 | 6d 65 28 29 40 22 61 74 |tStateNa|me()@"at|
|00001fa0| 22 40 4c 65 76 65 6c 2e | 54 69 6d 65 53 65 63 6f |"@Level.|TimeSeco|
|00001fb0| 6e 64 73 29 3b 09 0d 0a | 09 46 72 69 65 6e 64 6c |nds);...|.Friendl|
|00001fc0| 79 46 6c 61 67 20 3d 20 | 43 54 46 52 65 70 6c 69 |yFlag = |CTFRepli|
|00001fd0| 63 61 74 69 6f 6e 49 6e | 66 6f 28 47 61 6d 65 52 |cationIn|fo(GameR|
|00001fe0| 65 70 6c 69 63 61 74 69 | 6f 6e 49 6e 66 6f 29 2e |eplicati|onInfo).|
|00001ff0| 46 6c 61 67 4c 69 73 74 | 5b 61 42 6f 74 2e 50 6c |FlagList|[aBot.Pl|
|00002000| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|00002010| 6e 66 6f 2e 54 65 61 6d | 5d 3b 0d 0a 09 0d 0a 09 |nfo.Team|];......|
|00002020| 69 66 20 28 20 61 42 6f | 74 2e 50 6c 61 79 65 72 |if ( aBo|t.Player|
|00002030| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|00002040| 54 65 61 6d 20 3d 3d 20 | 30 20 29 0d 0a 09 09 45 |Team == |0 )....E|
|00002050| 6e 65 6d 79 46 6c 61 67 | 20 3d 20 43 54 46 52 65 |nemyFlag| = CTFRe|
|00002060| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 28 47 61 |plicatio|nInfo(Ga|
|00002070| 6d 65 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |meReplic|ationInf|
|00002080| 6f 29 2e 46 6c 61 67 4c | 69 73 74 5b 31 5d 3b 0d |o).FlagL|ist[1];.|
|00002090| 0a 09 65 6c 73 65 0d 0a | 09 09 45 6e 65 6d 79 46 |..else..|..EnemyF|
|000020a0| 6c 61 67 20 3d 20 43 54 | 46 52 65 70 6c 69 63 61 |lag = CT|FReplica|
|000020b0| 74 69 6f 6e 49 6e 66 6f | 28 47 61 6d 65 52 65 70 |tionInfo|(GameRep|
|000020c0| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 29 2e 46 6c |lication|Info).Fl|
|000020d0| 61 67 4c 69 73 74 5b 30 | 5d 3b 0d 0a 09 0d 0a 09 |agList[0|];......|
|000020e0| 62 4f 72 64 65 72 65 64 | 20 3d 20 61 42 6f 74 2e |bOrdered| = aBot.|
|000020f0| 62 53 6e 69 70 69 6e 67 | 20 7c 7c 20 28 61 42 6f |bSniping| || (aBo|
|00002100| 74 2e 4f 72 64 65 72 73 | 20 3d 3d 20 27 46 6f 6c |t.Orders| == 'Fol|
|00002110| 6c 6f 77 27 29 20 7c 7c | 20 28 61 42 6f 74 2e 4f |low') ||| (aBot.O|
|00002120| 72 64 65 72 73 20 3d 3d | 20 27 48 6f 6c 64 27 29 |rders ==| 'Hold')|
|00002130| 3b 0d 0a 0d 0a 09 69 66 | 20 28 20 21 46 72 69 65 |;.....if| ( !Frie|
|00002140| 6e 64 6c 79 46 6c 61 67 | 2e 62 48 6f 6d 65 20 20 |ndlyFlag|.bHome |
|00002150| 29 0d 0a 09 7b 0d 0a 09 | 09 62 53 65 65 46 6c 61 |)...{...|.bSeeFla|
|00002160| 67 20 3d 20 61 42 6f 74 | 2e 4c 69 6e 65 4f 66 53 |g = aBot|.LineOfS|
|00002170| 69 67 68 74 54 6f 28 46 | 72 69 65 6e 64 6c 79 46 |ightTo(F|riendlyF|
|00002180| 6c 61 67 2e 50 6f 73 69 | 74 69 6f 6e 28 29 29 3b |lag.Posi|tion());|
|00002190| 0d 0a 09 09 46 72 69 65 | 6e 64 6c 79 46 6c 61 67 |....Frie|ndlyFlag|
|000021a0| 2e 62 4b 6e 6f 77 6e 4c | 6f 63 61 74 69 6f 6e 20 |.bKnownL|ocation |
|000021b0| 3d 20 46 72 69 65 6e 64 | 6c 79 46 6c 61 67 2e 62 |= Friend|lyFlag.b|
|000021c0| 4b 6e 6f 77 6e 4c 6f 63 | 61 74 69 6f 6e 20 7c 7c |KnownLoc|ation |||
|000021d0| 20 62 53 65 65 46 6c 61 | 67 3b 0d 0a 0d 0a 09 09 | bSeeFla|g;......|
|000021e0| 69 66 20 28 20 62 53 65 | 65 46 6c 61 67 20 26 26 |if ( bSe|eFlag &&|
|000021f0| 20 28 46 72 69 65 6e 64 | 6c 79 46 6c 61 67 2e 48 | (Friend|lyFlag.H|
|00002200| 6f 6c 64 65 72 20 3d 3d | 20 4e 6f 6e 65 29 20 26 |older ==| None) &|
|00002210| 26 20 61 42 6f 74 2e 41 | 63 74 6f 72 52 65 61 63 |& aBot.A|ctorReac|
|00002220| 68 61 62 6c 65 28 46 72 | 69 65 6e 64 6c 79 46 6c |hable(Fr|iendlyFl|
|00002230| 61 67 29 20 29 0d 0a 09 | 09 7b 0d 0a 09 09 09 69 |ag) )...|.{.....i|
|00002240| 66 20 28 20 4c 65 76 65 | 6c 2e 54 69 6d 65 53 65 |f ( Leve|l.TimeSe|
|00002250| 63 6f 6e 64 73 20 2d 20 | 4c 61 73 74 47 6f 74 46 |conds - |LastGotF|
|00002260| 6c 61 67 20 3e 20 36 20 | 29 0d 0a 09 09 09 7b 09 |lag > 6 |).....{.|
|00002270| 0d 0a 09 09 09 09 4c 61 | 73 74 47 6f 74 46 6c 61 |......La|stGotFla|
|00002280| 67 20 3d 20 4c 65 76 65 | 6c 2e 54 69 6d 65 53 65 |g = Leve|l.TimeSe|
|00002290| 63 6f 6e 64 73 3b 0d 0a | 09 09 09 09 61 42 6f 74 |conds;..|....aBot|
|000022a0| 2e 53 65 6e 64 54 65 61 | 6d 4d 65 73 73 61 67 65 |.SendTea|mMessage|
|000022b0| 28 4e 6f 6e 65 2c 20 27 | 4f 54 48 45 52 27 2c 20 |(None, '|OTHER', |
|000022c0| 38 2c 20 32 30 29 3b 0d | 0a 09 09 09 7d 0d 0a 09 |8, 20);.|....}...|
|000022d0| 09 09 61 42 6f 74 2e 4d | 6f 76 65 54 61 72 67 65 |..aBot.M|oveTarge|
|000022e0| 74 20 3d 20 46 72 69 65 | 6e 64 6c 79 46 6c 61 67 |t = Frie|ndlyFlag|
|000022f0| 3b 0d 0a 09 09 09 53 65 | 74 41 74 74 72 61 63 74 |;.....Se|tAttract|
|00002300| 69 6f 6e 53 74 61 74 65 | 46 6f 72 28 61 42 6f 74 |ionState|For(aBot|
|00002310| 29 3b 0d 0a 09 09 09 72 | 65 74 75 72 6e 20 74 72 |);.....r|eturn tr|
|00002320| 75 65 3b 0d 0a 09 09 7d | 0d 0a 0d 0a 09 09 69 66 |ue;....}|......if|
|00002330| 20 28 20 45 6e 65 6d 79 | 46 6c 61 67 2e 48 6f 6c | ( Enemy|Flag.Hol|
|00002340| 64 65 72 20 21 3d 20 61 | 42 6f 74 20 29 0d 0a 09 |der != a|Bot )...|
|00002350| 09 7b 0d 0a 09 09 09 69 | 66 20 28 20 62 53 65 65 |.{.....i|f ( bSee|
|00002360| 46 6c 61 67 20 26 26 20 | 28 46 72 69 65 6e 64 6c |Flag && |(Friendl|
|00002370| 79 46 6c 61 67 2e 48 6f | 6c 64 65 72 20 21 3d 20 |yFlag.Ho|lder != |
|00002380| 4e 6f 6e 65 29 20 29 0d | 0a 09 09 09 7b 09 0d 0a |None) ).|....{...|
|00002390| 09 09 09 09 46 72 69 65 | 6e 64 6c 79 46 6c 61 67 |....Frie|ndlyFlag|
|000023a0| 2e 62 4b 6e 6f 77 6e 4c | 6f 63 61 74 69 6f 6e 20 |.bKnownL|ocation |
|000023b0| 3d 20 74 72 75 65 3b 0d | 0a 09 09 09 09 69 66 20 |= true;.|.....if |
|000023c0| 28 20 4c 65 76 65 6c 2e | 54 69 6d 65 53 65 63 6f |( Level.|TimeSeco|
|000023d0| 6e 64 73 20 2d 20 4c 61 | 73 74 53 65 65 46 6c 61 |nds - La|stSeeFla|
|000023e0| 67 43 61 72 72 69 65 72 | 20 3e 20 36 20 29 0d 0a |gCarrier| > 6 )..|
|000023f0| 09 09 09 09 7b 0d 0a 09 | 09 09 09 09 4c 61 73 74 |....{...|....Last|
|00002400| 53 65 65 46 6c 61 67 43 | 61 72 72 69 65 72 20 3d |SeeFlagC|arrier =|
|00002410| 20 4c 65 76 65 6c 2e 54 | 69 6d 65 53 65 63 6f 6e | Level.T|imeSecon|
|00002420| 64 73 3b 0d 0a 09 09 09 | 09 09 61 42 6f 74 2e 53 |ds;.....|..aBot.S|
|00002430| 65 6e 64 54 65 61 6d 4d | 65 73 73 61 67 65 28 4e |endTeamM|essage(N|
|00002440| 6f 6e 65 2c 20 27 4f 54 | 48 45 52 27 2c 20 31 32 |one, 'OT|HER', 12|
|00002450| 2c 20 31 30 29 3b 0d 0a | 09 09 09 09 7d 0d 0a 09 |, 10);..|....}...|
|00002460| 09 09 09 61 42 6f 74 2e | 53 65 74 45 6e 65 6d 79 |...aBot.|SetEnemy|
|00002470| 28 46 72 69 65 6e 64 6c | 79 46 6c 61 67 2e 48 6f |(Friendl|yFlag.Ho|
|00002480| 6c 64 65 72 29 3b 0d 0a | 09 09 09 09 61 42 6f 74 |lder);..|....aBot|
|00002490| 2e 4f 72 64 65 72 73 20 | 3d 20 27 46 72 65 65 6c |.Orders |= 'Freel|
|000024a0| 61 6e 63 65 27 3b 0d 0a | 09 09 09 09 61 42 6f 74 |ance';..|....aBot|
|000024b0| 2e 4d 6f 76 65 54 61 72 | 67 65 74 20 3d 20 46 72 |.MoveTar|get = Fr|
|000024c0| 69 65 6e 64 6c 79 46 6c | 61 67 2e 48 6f 6c 64 65 |iendlyFl|ag.Holde|
|000024d0| 72 3b 0d 0a 09 09 09 09 | 69 66 20 28 20 61 42 6f |r;......|if ( aBo|
|000024e0| 74 2e 49 73 49 6e 53 74 | 61 74 65 28 27 41 74 74 |t.IsInSt|ate('Att|
|000024f0| 61 63 6b 69 6e 67 27 29 | 20 29 0d 0a 09 09 09 09 |acking')| )......|
|00002500| 09 72 65 74 75 72 6e 20 | 66 61 6c 73 65 3b 0d 0a |.return |false;..|
|00002510| 09 09 09 09 65 6c 73 65 | 0d 0a 09 09 09 09 7b 0d |....else|......{.|
|00002520| 0a 09 09 09 09 09 61 42 | 6f 74 2e 47 6f 74 6f 53 |......aB|ot.GotoS|
|00002530| 74 61 74 65 28 27 41 74 | 74 61 63 6b 69 6e 67 27 |tate('At|tacking'|
|00002540| 29 3b 0d 0a 09 09 09 09 | 09 72 65 74 75 72 6e 20 |);......|.return |
|00002550| 74 72 75 65 3b 0d 0a 09 | 09 09 09 7d 0d 0a 09 09 |true;...|...}....|
|00002560| 09 7d 0d 0a 09 09 09 65 | 6c 73 65 20 69 66 20 28 |.}.....e|lse if (|
|00002570| 20 61 42 6f 74 2e 4f 72 | 64 65 72 73 20 3d 3d 20 | aBot.Or|ders == |
|00002580| 27 41 74 74 61 63 6b 27 | 20 29 0d 0a 09 09 09 7b |'Attack'| ).....{|
|00002590| 0d 0a 09 09 09 09 2f 2f | 20 62 72 65 61 6b 20 6f |......//| break o|
|000025a0| 66 66 20 61 74 74 61 63 | 6b 20 6f 6e 6c 79 20 69 |ff attac|k only i|
|000025b0| 66 20 6e 65 65 64 65 64 | 0d 0a 09 09 09 09 69 66 |f needed|......if|
|000025c0| 20 28 20 62 53 65 65 46 | 6c 61 67 20 7c 7c 20 28 | ( bSeeF|lag || (|
|000025d0| 45 6e 65 6d 79 46 6c 61 | 67 2e 48 6f 6c 64 65 72 |EnemyFla|g.Holder|
|000025e0| 20 21 3d 20 4e 6f 6e 65 | 29 20 0d 0a 09 09 09 09 | != None|) ......|
|000025f0| 09 7c 7c 20 28 28 28 46 | 72 69 65 6e 64 6c 79 46 |.|| (((F|riendlyF|
|00002600| 6c 61 67 2e 50 6f 73 69 | 74 69 6f 6e 28 29 2e 52 |lag.Posi|tion().R|
|00002610| 65 67 69 6f 6e 2e 5a 6f | 6e 65 20 21 3d 20 46 72 |egion.Zo|ne != Fr|
|00002620| 69 65 6e 64 6c 79 46 6c | 61 67 2e 48 6f 6d 65 62 |iendlyFl|ag.Homeb|
|00002630| 61 73 65 2e 52 65 67 69 | 6f 6e 2e 5a 6f 6e 65 29 |ase.Regi|on.Zone)|
|00002640| 20 7c 7c 20 28 56 53 69 | 7a 65 28 46 72 69 65 6e | || (VSi|ze(Frien|
|00002650| 64 6c 79 46 6c 61 67 2e | 48 6f 6d 65 62 61 73 65 |dlyFlag.|Homebase|
|00002660| 2e 4c 6f 63 61 74 69 6f | 6e 20 2d 20 46 72 69 65 |.Locatio|n - Frie|
|00002670| 6e 64 6c 79 46 6c 61 67 | 2e 50 6f 73 69 74 69 6f |ndlyFlag|.Positio|
|00002680| 6e 28 29 2e 4c 6f 63 61 | 74 69 6f 6e 29 20 3e 20 |n().Loca|tion) > |
|00002690| 31 30 30 30 29 29 20 0d | 0a 09 09 09 09 09 09 26 |1000)) .|.......&|
|000026a0| 26 20 28 28 61 42 6f 74 | 2e 52 65 67 69 6f 6e 2e |& ((aBot|.Region.|
|000026b0| 5a 6f 6e 65 20 21 3d 20 | 45 6e 65 6d 79 46 6c 61 |Zone != |EnemyFla|
|000026c0| 67 2e 52 65 67 69 6f 6e | 2e 5a 6f 6e 65 29 0d 0a |g.Region|.Zone)..|
|000026d0| 09 09 09 09 09 09 09 7c | 7c 20 28 56 53 69 7a 65 |.......||| (VSize|
|000026e0| 28 61 42 6f 74 2e 4c 6f | 63 61 74 69 6f 6e 20 2d |(aBot.Lo|cation -|
|000026f0| 20 45 6e 65 6d 79 46 6c | 61 67 2e 4c 6f 63 61 74 | EnemyFl|ag.Locat|
|00002700| 69 6f 6e 29 20 3e 20 31 | 36 30 30 29 20 7c 7c 20 |ion) > 1|600) || |
|00002710| 28 56 53 69 7a 65 28 61 | 42 6f 74 2e 4c 6f 63 61 |(VSize(a|Bot.Loca|
|00002720| 74 69 6f 6e 20 2d 20 46 | 72 69 65 6e 64 6c 79 46 |tion - F|riendlyF|
|00002730| 6c 61 67 2e 50 6f 73 69 | 74 69 6f 6e 28 29 2e 4c |lag.Posi|tion().L|
|00002740| 6f 63 61 74 69 6f 6e 29 | 20 3c 20 31 32 30 30 29 |ocation)| < 1200)|
|00002750| 29 29 20 29 0d 0a 09 09 | 09 09 7b 0d 0a 09 09 09 |)) )....|..{.....|
|00002760| 09 09 46 72 69 65 6e 64 | 6c 79 46 6c 61 67 2e 62 |..Friend|lyFlag.b|
|00002770| 4b 6e 6f 77 6e 4c 6f 63 | 61 74 69 6f 6e 20 3d 20 |KnownLoc|ation = |
|00002780| 74 72 75 65 3b 0d 0a 09 | 09 09 09 09 61 42 6f 74 |true;...|....aBot|
|00002790| 2e 4d 6f 76 65 54 61 72 | 67 65 74 20 3d 20 61 42 |.MoveTar|get = aB|
|000027a0| 6f 74 2e 46 69 6e 64 50 | 61 74 68 54 6f 77 61 72 |ot.FindP|athTowar|
|000027b0| 64 28 46 72 69 65 6e 64 | 6c 79 46 6c 61 67 2e 50 |d(Friend|lyFlag.P|
|000027c0| 6f 73 69 74 69 6f 6e 28 | 29 29 3b 0d 0a 09 09 09 |osition(|));.....|
|000027d0| 09 09 61 42 6f 74 2e 41 | 6c 74 65 72 6e 61 74 65 |..aBot.A|lternate|
|000027e0| 50 61 74 68 20 3d 20 4e | 6f 6e 65 3b 0d 0a 09 09 |Path = N|one;....|
|000027f0| 09 09 09 69 66 20 28 20 | 61 42 6f 74 2e 4d 6f 76 |...if ( |aBot.Mov|
|00002800| 65 54 61 72 67 65 74 20 | 21 3d 20 4e 6f 6e 65 20 |eTarget |!= None |
|00002810| 29 0d 0a 09 09 09 09 09 | 7b 0d 0a 09 09 09 09 09 |).......|{.......|
|00002820| 09 53 65 74 41 74 74 72 | 61 63 74 69 6f 6e 53 74 |.SetAttr|actionSt|
|00002830| 61 74 65 46 6f 72 28 61 | 42 6f 74 29 3b 0d 0a 09 |ateFor(a|Bot);...|
|00002840| 09 09 09 09 09 72 65 74 | 75 72 6e 20 74 72 75 65 |.....ret|urn true|
|00002850| 3b 0d 0a 09 09 09 09 09 | 7d 0d 0a 09 09 09 09 7d |;.......|}......}|
|00002860| 0d 0a 09 09 09 7d 0d 0a | 09 09 09 65 6c 73 65 20 |.....}..|...else |
|00002870| 69 66 20 28 20 28 21 62 | 4f 72 64 65 72 65 64 20 |if ( (!b|Ordered |
|00002880| 7c 7c 20 41 42 6f 74 2e | 4f 72 64 65 72 4f 62 6a ||| ABot.|OrderObj|
|00002890| 65 63 74 2e 49 73 41 28 | 27 42 6f 74 27 29 29 20 |ect.IsA(|'Bot')) |
|000028a0| 0d 0a 09 09 09 09 26 26 | 20 28 46 72 69 65 6e 64 |......&&| (Friend|
|000028b0| 6c 79 46 6c 61 67 2e 62 | 4b 6e 6f 77 6e 4c 6f 63 |lyFlag.b|KnownLoc|
|000028c0| 61 74 69 6f 6e 20 7c 7c | 20 28 46 52 61 6e 64 28 |ation ||| (FRand(|
|000028d0| 29 20 3c 20 30 2e 31 29 | 29 20 29 20 0d 0a 09 09 |) < 0.1)|) ) ....|
|000028e0| 09 7b 0d 0a 09 09 09 09 | 46 72 69 65 6e 64 6c 79 |.{......|Friendly|
|000028f0| 46 6c 61 67 2e 62 4b 6e | 6f 77 6e 4c 6f 63 61 74 |Flag.bKn|ownLocat|
|00002900| 69 6f 6e 20 3d 20 74 72 | 75 65 3b 0d 0a 09 09 09 |ion = tr|ue;.....|
|00002910| 09 61 42 6f 74 2e 4d 6f | 76 65 54 61 72 67 65 74 |.aBot.Mo|veTarget|
|00002920| 20 3d 20 61 42 6f 74 2e | 46 69 6e 64 50 61 74 68 | = aBot.|FindPath|
|00002930| 54 6f 77 61 72 64 28 46 | 72 69 65 6e 64 6c 79 46 |Toward(F|riendlyF|
|00002940| 6c 61 67 2e 50 6f 73 69 | 74 69 6f 6e 28 29 29 3b |lag.Posi|tion());|
|00002950| 0d 0a 09 09 09 09 69 66 | 20 28 20 61 42 6f 74 2e |......if| ( aBot.|
|00002960| 4d 6f 76 65 54 61 72 67 | 65 74 20 21 3d 20 4e 6f |MoveTarg|et != No|
|00002970| 6e 65 20 29 0d 0a 09 09 | 09 09 7b 0d 0a 09 09 09 |ne )....|..{.....|
|00002980| 09 09 53 65 74 41 74 74 | 72 61 63 74 69 6f 6e 53 |..SetAtt|ractionS|
|00002990| 74 61 74 65 46 6f 72 28 | 61 42 6f 74 29 3b 0d 0a |tateFor(|aBot);..|
|000029a0| 09 09 09 09 09 72 65 74 | 75 72 6e 20 74 72 75 65 |.....ret|urn true|
|000029b0| 3b 0d 0a 09 09 09 09 7d | 0d 0a 09 09 09 7d 0d 0a |;......}|.....}..|
|000029c0| 09 09 7d 0d 0a 09 7d 0d | 0a 0d 0a 09 69 66 20 28 |..}...}.|....if (|
|000029d0| 20 45 6e 65 6d 79 46 6c | 61 67 2e 48 6f 6c 64 65 | EnemyFl|ag.Holde|
|000029e0| 72 20 3d 3d 20 61 42 6f | 74 20 29 0d 0a 09 7b 0d |r == aBo|t )...{.|
|000029f0| 0a 09 09 61 42 6f 74 2e | 62 43 61 6e 54 72 61 6e |...aBot.|bCanTran|
|00002a00| 73 6c 6f 63 61 74 65 20 | 3d 20 66 61 6c 73 65 3b |slocate |= false;|
|00002a10| 0d 0a 09 09 62 52 65 61 | 63 68 48 6f 6d 65 20 3d |....bRea|chHome =|
|00002a20| 20 61 42 6f 74 2e 41 63 | 74 6f 72 52 65 61 63 68 | aBot.Ac|torReach|
|00002a30| 61 62 6c 65 28 46 72 69 | 65 6e 64 6c 79 46 6c 61 |able(Fri|endlyFla|
|00002a40| 67 2e 48 6f 6d 65 42 61 | 73 65 29 3b 0d 0a 09 09 |g.HomeBa|se);....|
|00002a50| 69 66 20 28 20 62 52 65 | 61 63 68 48 6f 6d 65 20 |if ( bRe|achHome |
|00002a60| 26 26 20 21 46 72 69 65 | 6e 64 6c 79 46 6c 61 67 |&& !Frie|ndlyFlag|
|00002a70| 2e 62 48 6f 6d 65 20 29 | 0d 0a 09 09 7b 0d 0a 09 |.bHome )|....{...|
|00002a80| 09 09 61 42 6f 74 2e 53 | 65 6e 64 54 65 61 6d 4d |..aBot.S|endTeamM|
|00002a90| 65 73 73 61 67 65 28 4e | 6f 6e 65 2c 20 27 4f 54 |essage(N|one, 'OT|
|00002aa0| 48 45 52 27 2c 20 31 2c | 20 32 35 29 3b 0d 0a 09 |HER', 1,| 25);...|
|00002ab0| 09 09 61 42 6f 74 2e 4f | 72 64 65 72 73 20 3d 20 |..aBot.O|rders = |
|00002ac0| 27 46 72 65 65 6c 61 6e | 63 65 27 3b 0d 0a 09 09 |'Freelan|ce';....|
|00002ad0| 09 72 65 74 75 72 6e 20 | 66 61 6c 73 65 3b 0d 0a |.return |false;..|
|00002ae0| 09 09 7d 0d 0a 09 09 69 | 66 20 28 20 62 52 65 61 |..}....i|f ( bRea|
|00002af0| 63 68 48 6f 6d 65 20 26 | 26 20 28 56 53 69 7a 65 |chHome &|& (VSize|
|00002b00| 28 61 42 6f 74 2e 4c 6f | 63 61 74 69 6f 6e 20 2d |(aBot.Lo|cation -|
|00002b10| 20 46 72 69 65 6e 64 6c | 79 46 6c 61 67 2e 4c 6f | Friendl|yFlag.Lo|
|00002b20| 63 61 74 69 6f 6e 29 20 | 3c 20 33 30 29 20 29 0d |cation) |< 30) ).|
|00002b30| 0a 09 09 09 46 72 69 65 | 6e 64 6c 79 46 6c 61 67 |....Frie|ndlyFlag|
|00002b40| 2e 54 6f 75 63 68 28 61 | 42 6f 74 29 3b 0d 0a 09 |.Touch(a|Bot);...|
|00002b50| 09 69 66 20 28 20 61 42 | 6f 74 2e 45 6e 65 6d 79 |.if ( aB|ot.Enemy|
|00002b60| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 7b 0d | != None| )....{.|
|00002b70| 0a 09 09 09 69 66 20 28 | 20 61 42 6f 74 2e 48 65 |....if (| aBot.He|
|00002b80| 61 6c 74 68 20 3c 20 36 | 30 20 29 0d 0a 09 09 09 |alth < 6|0 ).....|
|00002b90| 09 61 42 6f 74 2e 53 65 | 6e 64 54 65 61 6d 4d 65 |.aBot.Se|ndTeamMe|
|00002ba0| 73 73 61 67 65 28 4e 6f | 6e 65 2c 20 27 4f 54 48 |ssage(No|ne, 'OTH|
|00002bb0| 45 52 27 2c 20 31 33 2c | 20 32 35 29 3b 0d 0a 09 |ER', 13,| 25);...|
|00002bc0| 09 09 69 66 20 28 20 21 | 61 42 6f 74 2e 49 73 49 |..if ( !|aBot.IsI|
|00002bd0| 6e 53 74 61 74 65 28 27 | 46 61 6c 6c 42 61 63 6b |nState('|FallBack|
|00002be0| 27 29 20 29 0d 0a 09 09 | 09 7b 0d 0a 09 09 09 09 |') )....|.{......|
|00002bf0| 61 42 6f 74 2e 62 4e 6f | 43 6c 65 61 72 53 70 65 |aBot.bNo|ClearSpe|
|00002c00| 63 69 61 6c 20 3d 20 74 | 72 75 65 3b 0d 0a 09 09 |cial = t|rue;....|
|00002c10| 09 09 61 42 6f 74 2e 54 | 77 65 65 6e 54 6f 52 75 |..aBot.T|weenToRu|
|00002c20| 6e 6e 69 6e 67 28 30 2e | 31 29 3b 0d 0a 09 09 09 |nning(0.|1);.....|
|00002c30| 09 61 42 6f 74 2e 47 6f | 74 6f 53 74 61 74 65 28 |.aBot.Go|toState(|
|00002c40| 27 46 61 6c 6c 62 61 63 | 6b 27 2c 20 27 53 70 65 |'Fallbac|k', 'Spe|
|00002c50| 63 69 61 6c 4e 61 76 69 | 67 27 29 3b 0d 0a 09 09 |cialNavi|g');....|
|00002c60| 09 7d 0d 0a 09 09 09 69 | 66 20 28 20 62 52 65 61 |.}.....i|f ( bRea|
|00002c70| 63 68 48 6f 6d 65 20 29 | 0d 0a 09 09 09 09 61 42 |chHome )|......aB|
|00002c80| 6f 74 2e 4d 6f 76 65 54 | 61 72 67 65 74 20 3d 20 |ot.MoveT|arget = |
|00002c90| 46 72 69 65 6e 64 6c 79 | 46 6c 61 67 2e 48 6f 6d |Friendly|Flag.Hom|
|00002ca0| 65 42 61 73 65 3b 0d 0a | 09 09 09 65 6c 73 65 0d |eBase;..|...else.|
|00002cb0| 0a 09 09 09 09 72 65 74 | 75 72 6e 20 46 69 6e 64 |.....ret|urn Find|
|00002cc0| 50 61 74 68 54 6f 42 61 | 73 65 28 61 42 6f 74 2c |PathToBa|se(aBot,|
|00002cd0| 20 46 72 69 65 6e 64 6c | 79 46 6c 61 67 2e 48 6f | Friendl|yFlag.Ho|
|00002ce0| 6d 65 42 61 73 65 29 3b | 0d 0a 09 09 7d 0d 0a 09 |meBase);|....}...|
|00002cf0| 09 65 6c 73 65 0d 0a 09 | 09 7b 0d 0a 09 09 09 69 |.else...|.{.....i|
|00002d00| 66 20 28 20 21 61 42 6f | 74 2e 49 73 49 6e 53 74 |f ( !aBo|t.IsInSt|
|00002d10| 61 74 65 28 27 52 6f 61 | 6d 69 6e 67 27 29 20 29 |ate('Roa|ming') )|
|00002d20| 0d 0a 09 09 09 7b 0d 0a | 09 09 09 09 61 42 6f 74 |.....{..|....aBot|
|00002d30| 2e 62 4e 6f 43 6c 65 61 | 72 53 70 65 63 69 61 6c |.bNoClea|rSpecial|
|00002d40| 20 3d 20 74 72 75 65 3b | 0d 0a 09 09 09 09 61 42 | = true;|......aB|
|00002d50| 6f 74 2e 54 77 65 65 6e | 54 6f 52 75 6e 6e 69 6e |ot.Tween|ToRunnin|
|00002d60| 67 28 30 2e 31 29 3b 0d | 0a 09 09 09 09 61 42 6f |g(0.1);.|.....aBo|
|00002d70| 74 2e 47 6f 74 6f 53 74 | 61 74 65 28 27 52 6f 61 |t.GotoSt|ate('Roa|
|00002d80| 6d 69 6e 67 27 2c 20 27 | 53 70 65 63 69 61 6c 4e |ming', '|SpecialN|
|00002d90| 61 76 69 67 27 29 3b 0d | 0a 09 09 09 7d 0d 0a 09 |avig');.|....}...|
|00002da0| 09 09 69 66 20 28 20 62 | 52 65 61 63 68 48 6f 6d |..if ( b|ReachHom|
|00002db0| 65 20 29 0d 0a 09 09 09 | 09 61 42 6f 74 2e 4d 6f |e ).....|.aBot.Mo|
|00002dc0| 76 65 54 61 72 67 65 74 | 20 3d 20 46 72 69 65 6e |veTarget| = Frien|
|00002dd0| 64 6c 79 46 6c 61 67 2e | 48 6f 6d 65 42 61 73 65 |dlyFlag.|HomeBase|
|00002de0| 3b 0d 0a 09 09 09 65 6c | 73 65 0d 0a 09 09 09 09 |;.....el|se......|
|00002df0| 72 65 74 75 72 6e 20 46 | 69 6e 64 50 61 74 68 54 |return F|indPathT|
|00002e00| 6f 42 61 73 65 28 61 42 | 6f 74 2c 20 46 72 69 65 |oBase(aB|ot, Frie|
|00002e10| 6e 64 6c 79 46 6c 61 67 | 2e 48 6f 6d 65 42 61 73 |ndlyFlag|.HomeBas|
|00002e20| 65 29 3b 0d 0a 09 09 7d | 09 09 0d 0a 09 09 72 65 |e);....}|......re|
|00002e30| 74 75 72 6e 20 74 72 75 | 65 3b 0d 0a 09 7d 0d 0a |turn tru|e;...}..|
|00002e40| 0d 0a 09 69 66 20 28 20 | 45 6e 65 6d 79 46 6c 61 |...if ( |EnemyFla|
|00002e50| 67 2e 48 6f 6c 64 65 72 | 20 3d 3d 20 4e 6f 6e 65 |g.Holder| == None|
|00002e60| 20 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 20 61 | )...{..|..if ( a|
|00002e70| 42 6f 74 2e 41 63 74 6f | 72 52 65 61 63 68 61 62 |Bot.Acto|rReachab|
|00002e80| 6c 65 28 45 6e 65 6d 79 | 46 6c 61 67 29 20 29 0d |le(Enemy|Flag) ).|
|00002e90| 0a 09 09 7b 0d 0a 09 09 | 09 61 42 6f 74 2e 4d 6f |...{....|.aBot.Mo|
|00002ea0| 76 65 54 61 72 67 65 74 | 20 3d 20 45 6e 65 6d 79 |veTarget| = Enemy|
|00002eb0| 46 6c 61 67 3b 0d 0a 09 | 09 09 53 65 74 41 74 74 |Flag;...|..SetAtt|
|00002ec0| 72 61 63 74 69 6f 6e 53 | 74 61 74 65 46 6f 72 28 |ractionS|tateFor(|
|00002ed0| 61 42 6f 74 29 3b 0d 0a | 09 09 09 72 65 74 75 72 |aBot);..|...retur|
|00002ee0| 6e 20 74 72 75 65 3b 0d | 0a 09 09 7d 0d 0a 09 09 |n true;.|...}....|
|00002ef0| 65 6c 73 65 20 69 66 20 | 28 20 28 61 42 6f 74 2e |else if |( (aBot.|
|00002f00| 4f 72 64 65 72 73 20 3d | 3d 20 27 41 74 74 61 63 |Orders =|= 'Attac|
|00002f10| 6b 27 29 0d 0a 09 09 09 | 09 20 7c 7c 20 28 28 61 |k').....|. || ((a|
|00002f20| 42 6f 74 2e 4f 72 64 65 | 72 73 20 3d 3d 20 27 46 |Bot.Orde|rs == 'F|
|00002f30| 6f 6c 6c 6f 77 27 29 20 | 26 26 20 61 42 6f 74 2e |ollow') |&& aBot.|
|00002f40| 4f 72 64 65 72 4f 62 6a | 65 63 74 2e 49 73 41 28 |OrderObj|ect.IsA(|
|00002f50| 27 42 6f 74 27 29 0d 0a | 09 09 09 09 09 26 26 20 |'Bot')..|.....&& |
|00002f60| 28 28 50 61 77 6e 28 61 | 42 6f 74 2e 4f 72 64 65 |((Pawn(a|Bot.Orde|
|00002f70| 72 4f 62 6a 65 63 74 29 | 2e 48 65 61 6c 74 68 20 |rObject)|.Health |
|00002f80| 3c 3d 20 30 29 20 0d 0a | 09 09 09 09 09 09 20 7c |<= 0) ..|...... ||
|00002f90| 7c 20 28 28 45 6e 65 6d | 79 46 6c 61 67 2e 52 65 || ((Enem|yFlag.Re|
|00002fa0| 67 69 6f 6e 2e 5a 6f 6e | 65 20 3d 3d 20 61 42 6f |gion.Zon|e == aBo|
|00002fb0| 74 2e 52 65 67 69 6f 6e | 2e 5a 6f 6e 65 29 20 26 |t.Region|.Zone) &|
|00002fc0| 26 20 28 56 53 69 7a 65 | 28 45 6e 65 6d 79 46 6c |& (VSize|(EnemyFl|
|00002fd0| 61 67 2e 4c 6f 63 61 74 | 69 6f 6e 20 2d 20 61 42 |ag.Locat|ion - aB|
|00002fe0| 6f 74 2e 4c 6f 63 61 74 | 69 6f 6e 29 20 3c 20 32 |ot.Locat|ion) < 2|
|00002ff0| 30 30 30 29 29 29 29 20 | 29 0d 0a 09 09 7b 0d 0a |000)))) |)....{..|
|00003000| 09 09 09 69 66 20 28 20 | 21 61 42 6f 74 2e 62 4b |...if ( |!aBot.bK|
|00003010| 61 6d 69 6b 61 7a 65 0d | 0a 09 09 09 09 26 26 20 |amikaze.|.....&& |
|00003020| 28 20 28 61 42 6f 74 2e | 57 65 61 70 6f 6e 20 3d |( (aBot.|Weapon =|
|00003030| 3d 20 4e 6f 6e 65 29 20 | 7c 7c 20 28 61 42 6f 74 |= None) ||| (aBot|
|00003040| 2e 57 65 61 70 6f 6e 2e | 41 49 52 61 74 69 6e 67 |.Weapon.|AIRating|
|00003050| 20 3c 20 30 2e 34 29 29 | 20 29 0d 0a 09 09 09 7b | < 0.4))| ).....{|
|00003060| 0d 0a 09 09 09 09 61 42 | 6f 74 2e 62 4b 61 6d 69 |......aB|ot.bKami|
|00003070| 6b 61 7a 65 20 3d 20 28 | 20 46 52 61 6e 64 28 29 |kaze = (| FRand()|
|00003080| 20 3c 20 30 2e 31 20 29 | 3b 0d 0a 09 09 09 09 72 | < 0.1 )|;......r|
|00003090| 65 74 75 72 6e 20 66 61 | 6c 73 65 3b 0d 0a 09 09 |eturn fa|lse;....|
|000030a0| 09 7d 0d 0a 0d 0a 09 09 | 09 69 66 20 28 20 28 61 |.}......|.if ( (a|
|000030b0| 42 6f 74 2e 45 6e 65 6d | 79 20 21 3d 20 4e 6f 6e |Bot.Enem|y != Non|
|000030c0| 65 29 20 0d 0a 09 09 09 | 09 26 26 20 28 61 42 6f |e) .....|.&& (aBo|
|000030d0| 74 2e 45 6e 65 6d 79 2e | 49 73 41 28 27 50 6c 61 |t.Enemy.|IsA('Pla|
|000030e0| 79 65 72 50 61 77 6e 27 | 29 20 7c 7c 20 28 61 42 |yerPawn'|) || (aB|
|000030f0| 6f 74 2e 45 6e 65 6d 79 | 2e 49 73 41 28 27 42 6f |ot.Enemy|.IsA('Bo|
|00003100| 74 27 29 20 26 26 20 28 | 42 6f 74 28 61 42 6f 74 |t') && (|Bot(aBot|
|00003110| 2e 45 6e 65 6d 79 29 2e | 4f 72 64 65 72 73 20 3d |.Enemy).|Orders =|
|00003120| 3d 20 27 41 74 74 61 63 | 6b 27 29 29 29 0d 0a 09 |= 'Attac|k')))...|
|00003130| 09 09 09 26 26 20 28 28 | 28 61 42 6f 74 2e 45 6e |...&& ((|(aBot.En|
|00003140| 65 6d 79 2e 52 65 67 69 | 6f 6e 2e 5a 6f 6e 65 20 |emy.Regi|on.Zone |
|00003150| 3d 3d 20 46 72 69 65 6e | 64 6c 79 46 6c 61 67 2e |== Frien|dlyFlag.|
|00003160| 48 6f 6d 65 42 61 73 65 | 2e 52 65 67 69 6f 6e 2e |HomeBase|.Region.|
|00003170| 5a 6f 6e 65 29 20 26 26 | 20 28 45 6e 65 6d 79 46 |Zone) &&| (EnemyF|
|00003180| 6c 61 67 2e 48 6f 6d 65 | 42 61 73 65 2e 52 65 67 |lag.Home|Base.Reg|
|00003190| 69 6f 6e 2e 5a 6f 6e 65 | 20 21 3d 20 46 72 69 65 |ion.Zone| != Frie|
|000031a0| 6e 64 6c 79 46 6c 61 67 | 2e 48 6f 6d 65 42 61 73 |ndlyFlag|.HomeBas|
|000031b0| 65 2e 52 65 67 69 6f 6e | 2e 5a 6f 6e 65 29 29 20 |e.Region|.Zone)) |
|000031c0| 0d 0a 09 09 09 09 09 7c | 7c 20 28 56 53 69 7a 65 |.......||| (VSize|
|000031d0| 28 61 42 6f 74 2e 45 6e | 65 6d 79 2e 4c 6f 63 61 |(aBot.En|emy.Loca|
|000031e0| 74 69 6f 6e 20 2d 20 46 | 72 69 65 6e 64 6c 79 46 |tion - F|riendlyF|
|000031f0| 6c 61 67 2e 48 6f 6d 65 | 42 61 73 65 2e 4c 6f 63 |lag.Home|Base.Loc|
|00003200| 61 74 69 6f 6e 29 20 3c | 20 30 2e 36 20 2a 20 56 |ation) <| 0.6 * V|
|00003210| 53 69 7a 65 28 61 42 6f | 74 2e 4c 6f 63 61 74 69 |Size(aBo|t.Locati|
|00003220| 6f 6e 20 2d 20 45 6e 65 | 6d 79 46 6c 61 67 2e 48 |on - Ene|myFlag.H|
|00003230| 6f 6d 65 42 61 73 65 2e | 4c 6f 63 61 74 69 6f 6e |omeBase.|Location|
|00003240| 29 29 29 20 29 0d 0a 09 | 09 09 09 7b 0d 0a 09 09 |))) )...|...{....|
|00003250| 09 09 09 61 42 6f 74 2e | 53 65 6e 64 54 65 61 6d |...aBot.|SendTeam|
|00003260| 4d 65 73 73 61 67 65 28 | 4e 6f 6e 65 2c 20 27 4f |Message(|None, 'O|
|00003270| 54 48 45 52 27 2c 20 31 | 34 2c 20 31 35 29 3b 20 |THER', 1|4, 15); |
|00003280| 2f 2f 22 49 6e 63 6f 6d | 69 6e 67 21 22 0d 0a 09 |//"Incom|ing!"...|
|00003290| 09 09 09 09 61 42 6f 74 | 2e 4f 72 64 65 72 73 20 |....aBot|.Orders |
|000032a0| 3d 20 27 46 72 65 65 6c | 61 6e 63 65 27 3b 0d 0a |= 'Freel|ance';..|
|000032b0| 09 09 09 09 09 72 65 74 | 75 72 6e 20 66 61 6c 73 |.....ret|urn fals|
|000032c0| 65 3b 0d 0a 09 09 09 09 | 7d 0d 0a 0d 0a 09 09 09 |e;......|}.......|
|000032d0| 69 66 20 28 20 45 6e 65 | 6d 79 46 6c 61 67 2e 62 |if ( Ene|myFlag.b|
|000032e0| 48 6f 6d 65 20 29 0d 0a | 09 09 09 09 46 69 6e 64 |Home )..|....Find|
|000032f0| 50 61 74 68 54 6f 42 61 | 73 65 28 61 42 6f 74 2c |PathToBa|se(aBot,|
|00003300| 20 45 6e 65 6d 79 46 6c | 61 67 2e 48 6f 6d 65 42 | EnemyFl|ag.HomeB|
|00003310| 61 73 65 29 3b 0d 0a 09 | 09 09 65 6c 73 65 0d 0a |ase);...|..else..|
|00003320| 09 09 09 09 61 42 6f 74 | 2e 4d 6f 76 65 54 61 72 |....aBot|.MoveTar|
|00003330| 67 65 74 20 3d 20 61 42 | 6f 74 2e 46 69 6e 64 50 |get = aB|ot.FindP|
|00003340| 61 74 68 54 6f 77 61 72 | 64 28 45 6e 65 6d 79 46 |athTowar|d(EnemyF|
|00003350| 6c 61 67 29 3b 0d 0a 09 | 09 09 69 66 20 28 20 61 |lag);...|..if ( a|
|00003360| 42 6f 74 2e 4d 6f 76 65 | 54 61 72 67 65 74 20 21 |Bot.Move|Target !|
|00003370| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 09 7b 0d 0a |= None )|.....{..|
|00003380| 09 09 09 09 53 65 74 41 | 74 74 72 61 63 74 69 6f |....SetA|ttractio|
|00003390| 6e 53 74 61 74 65 46 6f | 72 28 61 42 6f 74 29 3b |nStateFo|r(aBot);|
|000033a0| 0d 0a 09 09 09 09 72 65 | 74 75 72 6e 20 74 72 75 |......re|turn tru|
|000033b0| 65 3b 0d 0a 09 09 09 7d | 0d 0a 09 09 09 65 6c 73 |e;.....}|.....els|
|000033c0| 65 0d 0a 09 09 09 7b 0d | 0a 09 09 09 09 69 66 20 |e.....{.|.....if |
|000033d0| 28 20 61 42 6f 74 2e 62 | 56 65 72 62 6f 73 65 20 |( aBot.b|Verbose |
|000033e0| 29 0d 0a 09 09 09 09 09 | 6c 6f 67 28 61 42 6f 74 |).......|log(aBot|
|000033f0| 24 22 20 6e 6f 20 70 61 | 74 68 20 74 6f 20 66 6c |$" no pa|th to fl|
|00003400| 61 67 22 29 3b 0d 0a 09 | 09 09 09 72 65 74 75 72 |ag");...|...retur|
|00003410| 6e 20 66 61 6c 73 65 3b | 0d 0a 09 09 09 7d 0d 0a |n false;|.....}..|
|00003420| 09 09 7d 0d 0a 09 09 72 | 65 74 75 72 6e 20 66 61 |..}....r|eturn fa|
|00003430| 6c 73 65 3b 0d 0a 09 7d | 0d 0a 0d 0a 09 69 66 20 |lse;...}|.....if |
|00003440| 28 20 28 62 4f 72 64 65 | 72 65 64 20 26 26 20 21 |( (bOrde|red && !|
|00003450| 61 42 6f 74 2e 4f 72 64 | 65 72 4f 62 6a 65 63 74 |aBot.Ord|erObject|
|00003460| 2e 49 73 41 28 27 42 6f | 74 27 29 29 20 7c 7c 20 |.IsA('Bo|t')) || |
|00003470| 28 61 42 6f 74 2e 57 65 | 61 70 6f 6e 20 3d 3d 20 |(aBot.We|apon == |
|00003480| 4e 6f 6e 65 29 20 7c 7c | 20 28 61 42 6f 74 2e 57 |None) ||| (aBot.W|
|00003490| 65 61 70 6f 6e 2e 41 49 | 52 61 74 69 6e 67 20 3c |eapon.AI|Rating <|
|000034a0| 20 30 2e 34 29 20 29 0d | 0a 09 09 72 65 74 75 72 | 0.4) ).|...retur|
|000034b0| 6e 20 66 61 6c 73 65 3b | 0d 0a 0d 0a 09 69 66 20 |n false;|.....if |
|000034c0| 28 20 28 61 42 6f 74 2e | 45 6e 65 6d 79 20 3d 3d |( (aBot.|Enemy ==|
|000034d0| 20 4e 6f 6e 65 29 20 26 | 26 20 28 61 42 6f 74 2e | None) &|& (aBot.|
|000034e0| 4f 72 64 65 72 73 20 21 | 3d 20 27 44 65 66 65 6e |Orders !|= 'Defen|
|000034f0| 64 27 29 20 29 0d 0a 09 | 7b 0d 0a 09 09 44 69 73 |d') )...|{....Dis|
|00003500| 74 20 3d 20 56 53 69 7a | 65 28 61 42 6f 74 2e 4c |t = VSiz|e(aBot.L|
|00003510| 6f 63 61 74 69 6f 6e 20 | 2d 20 45 6e 65 6d 79 46 |ocation |- EnemyF|
|00003520| 6c 61 67 2e 48 6f 6c 64 | 65 72 2e 4c 6f 63 61 74 |lag.Hold|er.Locat|
|00003530| 69 6f 6e 29 3b 0d 0a 09 | 09 69 66 20 28 20 28 44 |ion);...|.if ( (D|
|00003540| 69 73 74 20 3e 20 35 30 | 30 29 20 7c 7c 20 28 56 |ist > 50|0) || (V|
|00003550| 53 69 7a 65 28 45 6e 65 | 6d 79 46 6c 61 67 2e 48 |Size(Ene|myFlag.H|
|00003560| 6f 6c 64 65 72 2e 56 65 | 6c 6f 63 69 74 79 29 20 |older.Ve|locity) |
|00003570| 3e 20 32 33 30 29 0d 0a | 09 09 09 7c 7c 20 21 61 |> 230)..|...|| !a|
|00003580| 42 6f 74 2e 4c 69 6e 65 | 4f 66 53 69 67 68 74 54 |Bot.Line|OfSightT|
|00003590| 6f 28 45 6e 65 6d 79 46 | 6c 61 67 2e 48 6f 6c 64 |o(EnemyF|lag.Hold|
|000035a0| 65 72 29 20 29 0d 0a 09 | 09 7b 0d 0a 09 09 09 61 |er) )...|.{.....a|
|000035b0| 42 6f 74 2e 4d 6f 76 65 | 54 61 72 67 65 74 20 3d |Bot.Move|Target =|
|000035c0| 20 61 42 6f 74 2e 46 69 | 6e 64 50 61 74 68 54 6f | aBot.Fi|ndPathTo|
|000035d0| 77 61 72 64 28 45 6e 65 | 6d 79 46 6c 61 67 2e 48 |ward(Ene|myFlag.H|
|000035e0| 6f 6c 64 65 72 29 3b 0d | 0a 09 09 09 69 66 20 28 |older);.|....if (|
|000035f0| 20 21 61 42 6f 74 2e 49 | 73 49 6e 53 74 61 74 65 | !aBot.I|sInState|
|00003600| 28 27 52 6f 61 6d 69 6e | 67 27 29 20 29 0d 0a 09 |('Roamin|g') )...|
|00003610| 09 09 7b 0d 0a 09 09 09 | 09 61 42 6f 74 2e 62 4e |..{.....|.aBot.bN|
|00003620| 6f 43 6c 65 61 72 53 70 | 65 63 69 61 6c 20 3d 20 |oClearSp|ecial = |
|00003630| 74 72 75 65 3b 0d 0a 09 | 09 09 09 61 42 6f 74 2e |true;...|...aBot.|
|00003640| 54 77 65 65 6e 54 6f 52 | 75 6e 6e 69 6e 67 28 30 |TweenToR|unning(0|
|00003650| 2e 31 29 3b 0d 0a 09 09 | 09 09 61 42 6f 74 2e 47 |.1);....|..aBot.G|
|00003660| 6f 74 6f 53 74 61 74 65 | 28 27 52 6f 61 6d 69 6e |otoState|('Roamin|
|00003670| 67 27 2c 20 27 53 70 65 | 63 69 61 6c 4e 61 76 69 |g', 'Spe|cialNavi|
|00003680| 67 27 29 3b 0d 0a 09 09 | 09 09 72 65 74 75 72 6e |g');....|..return|
|00003690| 20 74 72 75 65 3b 0d 0a | 09 09 09 7d 0d 0a 09 09 | true;..|...}....|
|000036a0| 09 72 65 74 75 72 6e 20 | 28 61 42 6f 74 2e 4d 6f |.return |(aBot.Mo|
|000036b0| 76 65 54 61 72 67 65 74 | 20 21 3d 20 4e 6f 6e 65 |veTarget| != None|
|000036c0| 29 3b 0d 0a 09 09 7d 0d | 0a 09 09 65 6c 73 65 0d |);....}.|...else.|
|000036d0| 0a 09 09 7b 0d 0a 09 09 | 09 69 66 20 28 20 21 61 |...{....|.if ( !a|
|000036e0| 42 6f 74 2e 62 49 6e 69 | 74 4c 69 66 65 4d 65 73 |Bot.bIni|tLifeMes|
|000036f0| 73 61 67 65 20 29 0d 0a | 09 09 09 7b 0d 0a 09 09 |sage )..|...{....|
|00003700| 09 09 61 42 6f 74 2e 62 | 49 6e 69 74 4c 69 66 65 |..aBot.b|InitLife|
|00003710| 4d 65 73 73 61 67 65 20 | 3d 20 74 72 75 65 3b 0d |Message |= true;.|
|00003720| 0a 09 09 09 09 61 42 6f | 74 2e 53 65 6e 64 54 65 |.....aBo|t.SendTe|
|00003730| 61 6d 4d 65 73 73 61 67 | 65 28 45 6e 65 6d 79 46 |amMessag|e(EnemyF|
|00003740| 6c 61 67 2e 48 6f 6c 64 | 65 72 2e 50 6c 61 79 65 |lag.Hold|er.Playe|
|00003750| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00003760| 2c 20 27 4f 54 48 45 52 | 27 2c 20 33 2c 20 31 30 |, 'OTHER|', 3, 10|
|00003770| 29 3b 0d 0a 09 09 09 7d | 0d 0a 09 09 09 69 66 20 |);.....}|.....if |
|00003780| 28 20 46 52 61 6e 64 28 | 29 20 3c 20 30 2e 33 35 |( FRand(|) < 0.35|
|00003790| 20 29 0d 0a 09 09 09 09 | 61 42 6f 74 2e 47 6f 74 | )......|aBot.Got|
|000037a0| 6f 53 74 61 74 65 28 27 | 57 61 6e 64 65 72 69 6e |oState('|Wanderin|
|000037b0| 67 27 29 3b 0d 0a 09 09 | 09 65 6c 73 65 0d 0a 09 |g');....|.else...|
|000037c0| 09 09 7b 0d 0a 09 09 09 | 09 61 42 6f 74 2e 43 61 |..{.....|.aBot.Ca|
|000037d0| 6d 70 54 69 6d 65 20 3d | 20 31 2e 30 3b 0d 0a 09 |mpTime =| 1.0;...|
|000037e0| 09 09 09 61 42 6f 74 2e | 62 43 61 6d 70 4f 6e 6c |...aBot.|bCampOnl|
|000037f0| 79 4f 6e 63 65 20 3d 20 | 74 72 75 65 3b 0d 0a 09 |yOnce = |true;...|
|00003800| 09 09 09 61 42 6f 74 2e | 47 6f 74 6f 53 74 61 74 |...aBot.|GotoStat|
|00003810| 65 28 27 52 6f 61 6d 69 | 6e 67 27 2c 20 27 43 61 |e('Roami|ng', 'Ca|
|00003820| 6d 70 27 29 3b 0d 0a 09 | 09 09 7d 0d 0a 09 09 09 |mp');...|..}.....|
|00003830| 72 65 74 75 72 6e 20 74 | 72 75 65 3b 0d 0a 09 09 |return t|rue;....|
|00003840| 7d 0d 0a 09 7d 0d 0a 09 | 72 65 74 75 72 6e 20 66 |}...}...|return f|
|00003850| 61 6c 73 65 3b 0d 0a 7d | 09 09 0d 0a 0d 0a 66 75 |alse;..}|......fu|
|00003860| 6e 63 74 69 6f 6e 20 62 | 6f 6f 6c 20 52 65 73 74 |nction b|ool Rest|
|00003870| 61 72 74 50 6c 61 79 65 | 72 28 50 61 77 6e 20 61 |artPlaye|r(Pawn a|
|00003880| 50 6c 61 79 65 72 29 0d | 0a 7b 0d 0a 09 6c 6f 63 |Player).|.{...loc|
|00003890| 61 6c 20 4e 61 76 69 67 | 61 74 69 6f 6e 50 6f 69 |al Navig|ationPoi|
|000038a0| 6e 74 20 4e 3b 0d 0a 09 | 6c 6f 63 61 6c 20 69 6e |nt N;...|local in|
|000038b0| 74 20 6e 75 6d 3b 0d 0a | 09 6c 6f 63 61 6c 20 66 |t num;..|.local f|
|000038c0| 6c 6f 61 74 20 74 6f 74 | 61 6c 57 65 69 67 68 74 |loat tot|alWeight|
|000038d0| 2c 20 73 65 6c 65 63 74 | 69 6f 6e 2c 20 70 61 72 |, select|ion, par|
|000038e0| 74 69 61 6c 57 65 69 67 | 68 74 3b 0d 0a 09 6c 6f |tialWeig|ht;...lo|
|000038f0| 63 61 6c 20 62 6f 6f 6c | 20 62 52 65 73 75 6c 74 |cal bool| bResult|
|00003900| 2c 20 62 50 6f 77 65 72 | 50 6c 61 79 3b 0d 0a 09 |, bPower|Play;...|
|00003910| 6c 6f 63 61 6c 20 62 6f | 74 20 42 3b 0d 0a 09 6c |local bo|t B;...l|
|00003920| 6f 63 61 6c 20 50 61 77 | 6e 20 50 3b 0d 0a 09 0d |ocal Paw|n P;....|
|00003930| 0a 09 62 52 65 73 75 6c | 74 20 3d 20 53 75 70 65 |..bResul|t = Supe|
|00003940| 72 2e 52 65 73 74 61 72 | 74 50 6c 61 79 65 72 28 |r.Restar|tPlayer(|
|00003950| 61 50 6c 61 79 65 72 29 | 3b 0d 0a 0d 0a 09 42 20 |aPlayer)|;.....B |
|00003960| 3d 20 42 6f 74 28 61 50 | 6c 61 79 65 72 29 3b 0d |= Bot(aP|layer);.|
|00003970| 0a 09 69 66 20 28 20 42 | 20 3d 3d 20 4e 6f 6e 65 |..if ( B| == None|
|00003980| 20 29 0d 0a 09 09 72 65 | 74 75 72 6e 20 62 52 65 | )....re|turn bRe|
|00003990| 73 75 6c 74 3b 0d 0a 0d | 0a 09 42 2e 41 6c 74 65 |sult;...|..B.Alte|
|000039a0| 72 6e 61 74 65 50 61 74 | 68 20 3d 20 4e 6f 6e 65 |rnatePat|h = None|
|000039b0| 3b 0d 0a 09 0d 0a 09 69 | 66 20 28 20 42 2e 62 50 |;......i|f ( B.bP|
|000039c0| 6f 77 65 72 50 6c 61 79 | 20 7c 7c 20 28 42 6f 74 |owerPlay| || (Bot|
|000039d0| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 28 |Replicat|ionInfo(|
|000039e0| 42 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |B.Player|Replicat|
|000039f0| 69 6f 6e 49 6e 66 6f 29 | 2e 52 65 61 6c 4f 72 64 |ionInfo)|.RealOrd|
|00003a00| 65 72 73 20 3d 3d 20 27 | 44 65 66 65 6e 64 27 29 |ers == '|Defend')|
|00003a10| 20 29 0d 0a 09 7b 0d 0a | 09 09 2f 2f 20 69 66 20 | )...{..|..// if |
|00003a20| 62 6f 74 20 6f 6e 6c 79 | 20 74 65 61 6d 20 61 6e |bot only| team an|
|00003a30| 64 20 61 6c 72 65 61 64 | 79 20 6f 6e 65 20 64 65 |d alread|y one de|
|00003a40| 66 65 6e 64 65 72 2c 20 | 35 30 25 20 63 68 61 6e |fender, |50% chan|
|00003a50| 63 65 20 6f 66 20 70 6f | 77 65 72 70 6c 61 79 20 |ce of po|werplay |
|00003a60| 66 6f 72 20 74 68 69 73 | 20 67 75 79 20 69 66 20 |for this| guy if |
|00003a70| 64 65 66 65 6e 64 65 72 | 0d 0a 09 09 69 66 20 28 |defender|....if (|
|00003a80| 20 46 52 61 6e 64 28 29 | 20 3c 20 30 2e 35 20 29 | FRand()| < 0.5 )|
|00003a90| 0d 0a 09 09 7b 0d 0a 09 | 09 09 42 2e 62 50 6f 77 |....{...|..B.bPow|
|00003aa0| 65 72 50 6c 61 79 20 3d | 20 66 61 6c 73 65 3b 0d |erPlay =| false;.|
|00003ab0| 0a 09 09 09 42 2e 53 65 | 74 4f 72 64 65 72 73 28 |....B.Se|tOrders(|
|00003ac0| 27 44 65 66 65 6e 64 27 | 2c 20 4e 6f 6e 65 2c 20 |'Defend'|, None, |
|00003ad0| 74 72 75 65 29 3b 0d 0a | 09 09 7d 0d 0a 09 09 65 |true);..|..}....e|
|00003ae0| 6c 73 65 0d 0a 09 09 7b | 0d 0a 09 09 09 2f 2f 20 |lse....{|.....// |
|00003af0| 63 68 65 63 6b 20 66 6f | 72 20 62 6f 74 20 6f 6e |check fo|r bot on|
|00003b00| 6c 79 20 74 65 61 6d 20 | 61 6e 64 20 61 6c 72 65 |ly team |and alre|
|00003b10| 61 64 79 20 61 20 76 61 | 6c 69 64 20 64 65 66 65 |ady a va|lid defe|
|00003b20| 6e 64 65 72 0d 0a 09 09 | 09 66 6f 72 20 28 20 50 |nder....|.for ( P|
|00003b30| 3d 4c 65 76 65 6c 2e 50 | 61 77 6e 4c 69 73 74 3b |=Level.P|awnList;|
|00003b40| 20 50 21 3d 4e 6f 6e 65 | 3b 20 50 3d 50 2e 4e 65 | P!=None|; P=P.Ne|
|00003b50| 78 74 50 61 77 6e 20 29 | 0d 0a 09 09 09 7b 0d 0a |xtPawn )|.....{..|
|00003b60| 09 09 09 09 69 66 20 28 | 20 50 2e 62 49 73 50 6c |....if (| P.bIsPl|
|00003b70| 61 79 65 72 20 26 26 20 | 28 50 2e 50 6c 61 79 65 |ayer && |(P.Playe|
|00003b80| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00003b90| 2e 54 65 61 6d 20 3d 3d | 20 42 2e 50 6c 61 79 65 |.Team ==| B.Playe|
|00003ba0| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00003bb0| 2e 54 65 61 6d 29 20 29 | 0d 0a 09 09 09 09 7b 0d |.Team) )|......{.|
|00003bc0| 0a 09 09 09 09 09 69 66 | 20 28 20 50 2e 49 73 41 |......if| ( P.IsA|
|00003bd0| 28 27 50 6c 61 79 65 72 | 50 61 77 6e 27 29 20 29 |('Player|Pawn') )|
|00003be0| 0d 0a 09 09 09 09 09 7b | 0d 0a 09 09 09 09 09 09 |.......{|........|
|00003bf0| 62 50 6f 77 65 72 50 6c | 61 79 20 3d 20 66 61 6c |bPowerPl|ay = fal|
|00003c00| 73 65 3b 0d 0a 09 09 09 | 09 09 09 62 72 65 61 6b |se;.....|...break|
|00003c10| 3b 0d 0a 09 09 09 09 09 | 7d 0d 0a 09 09 09 09 09 |;.......|}.......|
|00003c20| 65 6c 73 65 20 69 66 20 | 28 20 50 2e 49 73 41 28 |else if |( P.IsA(|
|00003c30| 27 42 6f 74 27 29 20 26 | 26 20 28 42 6f 74 28 50 |'Bot') &|& (Bot(P|
|00003c40| 29 2e 4f 72 64 65 72 73 | 20 3d 3d 20 27 44 65 66 |).Orders| == 'Def|
|00003c50| 65 6e 64 27 29 20 29 0d | 0a 09 09 09 09 09 09 62 |end') ).|.......b|
|00003c60| 50 6f 77 65 72 50 6c 61 | 79 20 3d 20 74 72 75 65 |PowerPla|y = true|
|00003c70| 3b 0d 0a 09 09 09 09 7d | 0d 0a 09 09 09 7d 0d 0a |;......}|.....}..|
|00003c80| 09 09 09 69 66 20 28 20 | 62 50 6f 77 65 72 50 6c |...if ( |bPowerPl|
|00003c90| 61 79 20 29 0d 0a 09 09 | 09 7b 0d 0a 09 09 09 09 |ay )....|.{......|
|00003ca0| 42 2e 62 50 6f 77 65 72 | 50 6c 61 79 20 3d 20 74 |B.bPower|Play = t|
|00003cb0| 72 75 65 3b 0d 0a 09 09 | 09 09 42 2e 53 65 74 4f |rue;....|..B.SetO|
|00003cc0| 72 64 65 72 73 28 27 41 | 74 74 61 63 6b 27 2c 20 |rders('A|ttack', |
|00003cd0| 4e 6f 6e 65 2c 20 74 72 | 75 65 29 3b 0d 0a 09 09 |None, tr|ue);....|
|00003ce0| 09 7d 0d 0a 09 09 7d 0d | 0a 09 7d 0d 0a 0d 0a 09 |.}....}.|..}.....|
|00003cf0| 69 66 20 28 20 42 6f 74 | 52 65 70 6c 69 63 61 74 |if ( Bot|Replicat|
|00003d00| 69 6f 6e 49 6e 66 6f 28 | 42 2e 50 6c 61 79 65 72 |ionInfo(|B.Player|
|00003d10| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 29 |Replicat|ionInfo)|
|00003d20| 2e 52 65 61 6c 4f 72 64 | 65 72 73 20 21 3d 20 27 |.RealOrd|ers != '|
|00003d30| 41 74 74 61 63 6b 27 20 | 29 0d 0a 09 09 72 65 74 |Attack' |)....ret|
|00003d40| 75 72 6e 20 62 52 65 73 | 75 6c 74 3b 0d 0a 0d 0a |urn bRes|ult;....|
|00003d50| 09 69 66 20 28 20 46 52 | 61 6e 64 28 29 20 3c 20 |.if ( FR|and() < |
|00003d60| 30 2e 38 20 29 0d 0a 09 | 7b 0d 0a 09 09 66 6f 72 |0.8 )...|{....for|
|00003d70| 20 28 20 4e 3d 4c 65 76 | 65 6c 2e 4e 61 76 69 67 | ( N=Lev|el.Navig|
|00003d80| 61 74 69 6f 6e 50 6f 69 | 6e 74 4c 69 73 74 3b 20 |ationPoi|ntList; |
|00003d90| 4e 21 3d 4e 6f 6e 65 3b | 20 4e 3d 4e 2e 6e 65 78 |N!=None;| N=N.nex|
|00003da0| 74 4e 61 76 69 67 61 74 | 69 6f 6e 50 6f 69 6e 74 |tNavigat|ionPoint|
|00003db0| 20 29 0d 0a 09 09 09 69 | 66 20 28 20 4e 2e 49 73 | ).....i|f ( N.Is|
|00003dc0| 41 28 27 41 6c 74 65 72 | 6e 61 74 65 50 61 74 68 |A('Alter|natePath|
|00003dd0| 27 29 20 26 26 20 28 41 | 6c 74 65 72 6e 61 74 65 |') && (A|lternate|
|00003de0| 50 61 74 68 28 4e 29 2e | 74 65 61 6d 20 21 3d 20 |Path(N).|team != |
|00003df0| 42 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |B.Player|Replicat|
|00003e00| 69 6f 6e 49 6e 66 6f 2e | 74 65 61 6d 29 0d 0a 09 |ionInfo.|team)...|
|00003e10| 09 09 09 26 26 20 21 41 | 6c 74 65 72 6e 61 74 65 |...&& !A|lternate|
|00003e20| 50 61 74 68 28 4e 29 2e | 62 52 65 74 75 72 6e 4f |Path(N).|bReturnO|
|00003e30| 6e 6c 79 20 29 0d 0a 09 | 09 09 09 54 6f 74 61 6c |nly )...|...Total|
|00003e40| 57 65 69 67 68 74 20 2b | 3d 20 41 6c 74 65 72 6e |Weight +|= Altern|
|00003e50| 61 74 65 50 61 74 68 28 | 4e 29 2e 53 65 6c 65 63 |atePath(|N).Selec|
|00003e60| 74 69 6f 6e 57 65 69 67 | 68 74 3b 0d 0a 09 09 73 |tionWeig|ht;....s|
|00003e70| 65 6c 65 63 74 69 6f 6e | 20 3d 20 46 52 61 6e 64 |election| = FRand|
|00003e80| 28 29 20 2a 20 54 6f 74 | 61 6c 57 65 69 67 68 74 |() * Tot|alWeight|
|00003e90| 3b 0d 0a 09 09 66 6f 72 | 20 28 20 4e 3d 4c 65 76 |;....for| ( N=Lev|
|00003ea0| 65 6c 2e 4e 61 76 69 67 | 61 74 69 6f 6e 50 6f 69 |el.Navig|ationPoi|
|00003eb0| 6e 74 4c 69 73 74 3b 20 | 4e 21 3d 4e 6f 6e 65 3b |ntList; |N!=None;|
|00003ec0| 20 4e 3d 4e 2e 6e 65 78 | 74 4e 61 76 69 67 61 74 | N=N.nex|tNavigat|
|00003ed0| 69 6f 6e 50 6f 69 6e 74 | 20 29 0d 0a 09 09 09 69 |ionPoint| ).....i|
|00003ee0| 66 20 28 20 4e 2e 49 73 | 41 28 27 41 6c 74 65 72 |f ( N.Is|A('Alter|
|00003ef0| 6e 61 74 65 50 61 74 68 | 27 29 20 26 26 20 28 41 |natePath|') && (A|
|00003f00| 6c 74 65 72 6e 61 74 65 | 50 61 74 68 28 4e 29 2e |lternate|Path(N).|
|00003f10| 74 65 61 6d 20 21 3d 20 | 42 2e 50 6c 61 79 65 72 |team != |B.Player|
|00003f20| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|00003f30| 74 65 61 6d 29 20 29 0d | 0a 09 09 09 7b 0d 0a 09 |team) ).|....{...|
|00003f40| 09 09 09 42 2e 41 6c 74 | 65 72 6e 61 74 65 50 61 |...B.Alt|ernatePa|
|00003f50| 74 68 20 3d 20 41 6c 74 | 65 72 6e 61 74 65 50 61 |th = Alt|ernatePa|
|00003f60| 74 68 28 4e 29 3b 0d 0a | 09 09 09 09 50 61 72 74 |th(N);..|....Part|
|00003f70| 69 61 6c 57 65 69 67 68 | 74 20 2b 3d 20 41 6c 74 |ialWeigh|t += Alt|
|00003f80| 65 72 6e 61 74 65 50 61 | 74 68 28 4e 29 2e 53 65 |ernatePa|th(N).Se|
|00003f90| 6c 65 63 74 69 6f 6e 57 | 65 69 67 68 74 3b 0d 0a |lectionW|eight;..|
|00003fa0| 09 09 09 09 69 66 20 28 | 20 50 61 72 74 69 61 6c |....if (| Partial|
|00003fb0| 57 65 69 67 68 74 20 3e | 20 73 65 6c 65 63 74 69 |Weight >| selecti|
|00003fc0| 6f 6e 20 29 0d 0a 09 09 | 09 09 09 62 72 65 61 6b |on )....|...break|
|00003fd0| 3b 0d 0a 09 09 09 7d 0d | 0a 09 7d 0d 0a 09 72 65 |;.....}.|..}...re|
|00003fe0| 74 75 72 6e 20 62 52 65 | 73 75 6c 74 3b 0d 0a 7d |turn bRe|sult;..}|
|00003ff0| 0d 0a 0d 0a 66 75 6e 63 | 74 69 6f 6e 20 53 65 74 |....func|tion Set|
|00004000| 42 6f 74 4f 72 64 65 72 | 73 28 42 6f 74 20 4e 65 |BotOrder|s(Bot Ne|
|00004010| 77 42 6f 74 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |wBot)..{|...local|
|00004020| 20 50 61 77 6e 20 50 2c | 20 4c 2c 20 4d 3b 0d 0a | Pawn P,| L, M;..|
|00004030| 09 6c 6f 63 61 6c 20 69 | 6e 74 20 6e 75 6d 3b 0d |.local i|nt num;.|
|00004040| 0a 09 6c 6f 63 61 6c 20 | 62 6f 6f 6c 20 62 41 76 |..local |bool bAv|
|00004050| 61 69 6c 61 62 6c 65 3b | 0d 0a 0d 0a 09 69 66 20 |ailable;|.....if |
|00004060| 28 20 43 75 72 72 65 6e | 74 4f 72 64 65 72 73 5b |( Curren|tOrders[|
|00004070| 4e 65 77 42 6f 74 2e 50 | 6c 61 79 65 72 52 65 70 |NewBot.P|layerRep|
|00004080| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 54 65 61 |lication|Info.Tea|
|00004090| 6d 5d 20 3d 3d 20 27 46 | 72 65 65 6c 61 6e 63 65 |m] == 'F|reelance|
|000040a0| 27 20 29 0d 0a 09 09 43 | 75 72 72 65 6e 74 4f 72 |' )....C|urrentOr|
|000040b0| 64 65 72 73 5b 4e 65 77 | 42 6f 74 2e 50 6c 61 79 |ders[New|Bot.Play|
|000040c0| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|000040d0| 6f 2e 54 65 61 6d 5d 20 | 3d 20 27 41 74 74 61 63 |o.Team] |= 'Attac|
|000040e0| 6b 27 3b 0d 0a 09 65 6c | 73 65 20 69 66 20 28 20 |k';...el|se if ( |
|000040f0| 43 75 72 72 65 6e 74 4f | 72 64 65 72 73 5b 4e 65 |CurrentO|rders[Ne|
|00004100| 77 42 6f 74 2e 50 6c 61 | 79 65 72 52 65 70 6c 69 |wBot.Pla|yerRepli|
|00004110| 63 61 74 69 6f 6e 49 6e | 66 6f 2e 54 65 61 6d 5d |cationIn|fo.Team]|
|00004120| 20 3d 3d 20 27 44 65 66 | 65 6e 64 27 20 29 0d 0a | == 'Def|end' )..|
|00004130| 09 09 43 75 72 72 65 6e | 74 4f 72 64 65 72 73 5b |..Curren|tOrders[|
|00004140| 4e 65 77 42 6f 74 2e 50 | 6c 61 79 65 72 52 65 70 |NewBot.P|layerRep|
|00004150| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 54 65 61 |lication|Info.Tea|
|00004160| 6d 5d 20 3d 20 27 46 72 | 65 65 6c 61 6e 63 65 27 |m] = 'Fr|eelance'|
|00004170| 3b 0d 0a 09 65 6c 73 65 | 20 0d 0a 09 7b 0d 0a 09 |;...else| ...{...|
|00004180| 09 43 75 72 72 65 6e 74 | 4f 72 64 65 72 73 5b 4e |.Current|Orders[N|
|00004190| 65 77 42 6f 74 2e 50 6c | 61 79 65 72 52 65 70 6c |ewBot.Pl|ayerRepl|
|000041a0| 69 63 61 74 69 6f 6e 49 | 6e 66 6f 2e 54 65 61 6d |icationI|nfo.Team|
|000041b0| 5d 20 3d 20 27 44 65 66 | 65 6e 64 27 3b 09 09 0d |] = 'Def|end';...|
|000041c0| 0a 09 09 69 66 20 28 20 | 62 4e 6f 76 69 63 65 4d |...if ( |bNoviceM|
|000041d0| 6f 64 65 20 29 0d 0a 09 | 09 09 66 6f 72 20 28 20 |ode )...|..for ( |
|000041e0| 50 3d 4c 65 76 65 6c 2e | 50 61 77 6e 4c 69 73 74 |P=Level.|PawnList|
|000041f0| 3b 20 50 21 3d 4e 6f 6e | 65 3b 20 50 3d 20 50 2e |; P!=Non|e; P= P.|
|00004200| 4e 65 78 74 50 61 77 6e | 20 29 0d 0a 09 09 09 09 |NextPawn| )......|
|00004210| 69 66 20 28 20 50 2e 62 | 49 73 50 6c 61 79 65 72 |if ( P.b|IsPlayer|
|00004220| 20 26 26 20 28 50 20 21 | 3d 20 4e 65 77 42 6f 74 | && (P !|= NewBot|
|00004230| 29 20 26 26 20 28 50 2e | 50 6c 61 79 65 72 52 65 |) && (P.|PlayerRe|
|00004240| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 2e 54 65 |plicatio|nInfo.Te|
|00004250| 61 6d 20 3d 3d 20 4e 65 | 77 42 6f 74 2e 50 6c 61 |am == Ne|wBot.Pla|
|00004260| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|00004270| 66 6f 2e 54 65 61 6d 29 | 0d 0a 09 09 09 09 09 26 |fo.Team)|.......&|
|00004280| 26 20 50 2e 49 73 41 28 | 27 42 6f 74 27 29 20 26 |& P.IsA(|'Bot') &|
|00004290| 26 20 28 42 6f 74 52 65 | 70 6c 69 63 61 74 69 6f |& (BotRe|plicatio|
|000042a0| 6e 49 6e 66 6f 28 50 2e | 50 6c 61 79 65 72 52 65 |nInfo(P.|PlayerRe|
|000042b0| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 29 2e 52 |plicatio|nInfo).R|
|000042c0| 65 61 6c 4f 72 64 65 72 | 73 20 3d 3d 20 27 44 65 |ealOrder|s == 'De|
|000042d0| 66 65 6e 64 27 29 20 26 | 26 20 28 46 52 61 6e 64 |fend') &|& (FRand|
|000042e0| 28 29 20 3c 20 30 2e 35 | 29 20 29 0d 0a 09 09 09 |() < 0.5|) ).....|
|000042f0| 09 09 7b 09 0d 0a 09 09 | 09 09 09 09 43 75 72 72 |..{.....|....Curr|
|00004300| 65 6e 74 4f 72 64 65 72 | 73 5b 4e 65 77 42 6f 74 |entOrder|s[NewBot|
|00004310| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00004320| 6f 6e 49 6e 66 6f 2e 54 | 65 61 6d 5d 20 3d 20 27 |onInfo.T|eam] = '|
|00004330| 41 74 74 61 63 6b 27 3b | 0d 0a 09 09 09 09 09 09 |Attack';|........|
|00004340| 62 72 65 61 6b 3b 0d 0a | 09 09 09 09 09 7d 0d 0a |break;..|.....}..|
|00004350| 09 7d 09 09 0d 0a 0d 0a | 09 69 66 20 28 20 28 28 |.}......|.if ( ((|
|00004360| 43 75 72 72 65 6e 74 4f | 72 64 65 72 73 5b 4e 65 |CurrentO|rders[Ne|
|00004370| 77 42 6f 74 2e 50 6c 61 | 79 65 72 52 65 70 6c 69 |wBot.Pla|yerRepli|
|00004380| 63 61 74 69 6f 6e 49 6e | 66 6f 2e 54 65 61 6d 5d |cationIn|fo.Team]|
|00004390| 20 3d 3d 20 27 41 74 74 | 61 63 6b 27 29 20 7c 7c | == 'Att|ack') |||
|000043a0| 20 28 43 75 72 72 65 6e | 74 4f 72 64 65 72 73 5b | (Curren|tOrders[|
|000043b0| 4e 65 77 42 6f 74 2e 50 | 6c 61 79 65 72 52 65 70 |NewBot.P|layerRep|
|000043c0| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 54 65 61 |lication|Info.Tea|
|000043d0| 6d 5d 20 3d 3d 20 27 46 | 72 65 65 6c 61 6e 63 65 |m] == 'F|reelance|
|000043e0| 27 29 29 09 0d 0a 09 09 | 26 26 20 28 4e 75 6d 53 |')).....|&& (NumS|
|000043f0| 75 70 70 6f 72 74 69 6e | 67 50 6c 61 79 65 72 20 |upportin|gPlayer |
|00004400| 3d 3d 20 30 29 20 29 0d | 0a 09 7b 0d 0a 09 09 46 |== 0) ).|..{....F|
|00004410| 6f 72 20 28 20 50 3d 4c | 65 76 65 6c 2e 50 61 77 |or ( P=L|evel.Paw|
|00004420| 6e 4c 69 73 74 3b 20 50 | 21 3d 4e 6f 6e 65 3b 20 |nList; P|!=None; |
|00004430| 50 3d 50 2e 4e 65 78 74 | 50 61 77 6e 20 29 0d 0a |P=P.Next|Pawn )..|
|00004440| 09 09 09 69 66 20 28 20 | 50 2e 49 73 41 28 27 50 |...if ( |P.IsA('P|
|00004450| 6c 61 79 65 72 50 61 77 | 6e 27 29 20 26 26 20 28 |layerPaw|n') && (|
|00004460| 50 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |P.Player|Replicat|
|00004470| 69 6f 6e 49 6e 66 6f 2e | 54 65 61 6d 20 3d 3d 20 |ionInfo.|Team == |
|00004480| 4e 65 77 42 6f 74 2e 50 | 6c 61 79 65 72 52 65 70 |NewBot.P|layerRep|
|00004490| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 54 65 61 |lication|Info.Tea|
|000044a0| 6d 29 0d 0a 09 09 09 09 | 26 26 20 21 50 2e 49 73 |m)......|&& !P.Is|
|000044b0| 41 28 27 53 70 65 63 74 | 61 74 6f 72 27 29 20 29 |A('Spect|ator') )|
|000044c0| 0d 0a 09 09 7b 0d 0a 09 | 09 09 6e 75 6d 2b 2b 3b |....{...|..num++;|
|000044d0| 0d 0a 09 09 09 69 66 20 | 28 20 28 4c 20 3d 3d 20 |.....if |( (L == |
|000044e0| 4e 6f 6e 65 29 20 7c 7c | 20 28 46 52 61 6e 64 28 |None) ||| (FRand(|
|000044f0| 29 20 3c 20 31 2e 30 2f | 66 6c 6f 61 74 28 6e 75 |) < 1.0/|float(nu|
|00004500| 6d 29 29 20 29 0d 0a 09 | 09 09 09 4c 20 3d 20 50 |m)) )...|...L = P|
|00004510| 3b 0d 0a 09 09 7d 0d 0a | 0d 0a 09 09 69 66 20 28 |;....}..|....if (|
|00004520| 20 4c 20 21 3d 20 4e 6f | 6e 65 20 29 0d 0a 09 09 | L != No|ne )....|
|00004530| 7b 0d 0a 09 09 09 4e 75 | 6d 53 75 70 70 6f 72 74 |{.....Nu|mSupport|
|00004540| 69 6e 67 50 6c 61 79 65 | 72 2b 2b 3b 0d 0a 09 09 |ingPlaye|r++;....|
|00004550| 09 4e 65 77 42 6f 74 2e | 53 65 74 4f 72 64 65 72 |.NewBot.|SetOrder|
|00004560| 73 28 27 46 6f 6c 6c 6f | 77 27 2c 4c 2c 20 74 72 |s('Follo|w',L, tr|
|00004570| 75 65 29 3b 0d 0a 09 09 | 09 72 65 74 75 72 6e 3b |ue);....|.return;|
|00004580| 0d 0a 09 09 7d 0d 0a 09 | 09 65 6c 73 65 20 69 66 |....}...|.else if|
|00004590| 20 28 20 46 52 61 6e 64 | 28 29 20 3c 20 30 2e 38 | ( FRand|() < 0.8|
|000045a0| 20 29 0d 0a 09 09 7b 0d | 0a 09 09 09 2f 2f 20 6e | )....{.|....// n|
|000045b0| 6f 20 70 6c 61 79 65 72 | 73 20 6f 6e 20 74 68 69 |o player|s on thi|
|000045c0| 73 20 74 65 61 6d 20 2d | 20 70 6f 73 73 69 62 6c |s team -| possibl|
|000045d0| 79 20 73 75 70 70 6f 72 | 74 20 6f 74 68 65 72 20 |y suppor|t other |
|000045e0| 62 6f 74 0d 0a 09 09 09 | 6e 75 6d 20 3d 20 30 3b |bot.....|num = 0;|
|000045f0| 0d 0a 09 09 09 46 6f 72 | 20 28 20 50 3d 4c 65 76 |.....For| ( P=Lev|
|00004600| 65 6c 2e 50 61 77 6e 4c | 69 73 74 3b 20 50 21 3d |el.PawnL|ist; P!=|
|00004610| 4e 6f 6e 65 3b 20 50 3d | 50 2e 4e 65 78 74 50 61 |None; P=|P.NextPa|
|00004620| 77 6e 20 29 0d 0a 09 09 | 09 09 69 66 20 28 20 50 |wn )....|..if ( P|
|00004630| 2e 49 73 41 28 27 42 6f | 74 27 29 20 26 26 20 28 |.IsA('Bo|t') && (|
|00004640| 50 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |P.Player|Replicat|
|00004650| 69 6f 6e 49 6e 66 6f 2e | 54 65 61 6d 20 3d 3d 20 |ionInfo.|Team == |
|00004660| 4e 65 77 42 6f 74 2e 50 | 6c 61 79 65 72 52 65 70 |NewBot.P|layerRep|
|00004670| 6c 69 63 61 74 69 6f 6e | 49 6e 66 6f 2e 54 65 61 |lication|Info.Tea|
|00004680| 6d 29 20 0d 0a 09 09 09 | 09 09 26 26 20 28 42 6f |m) .....|..&& (Bo|
|00004690| 74 28 50 29 2e 4f 72 64 | 65 72 73 20 3d 3d 20 27 |t(P).Ord|ers == '|
|000046a0| 41 74 74 61 63 6b 27 29 | 20 29 0d 0a 09 09 09 7b |Attack')| ).....{|
|000046b0| 0d 0a 09 09 09 09 6e 75 | 6d 2b 2b 3b 0d 0a 09 09 |......nu|m++;....|
|000046c0| 09 09 69 66 20 28 20 28 | 4c 20 3d 3d 20 4e 6f 6e |..if ( (|L == Non|
|000046d0| 65 29 20 7c 7c 20 28 46 | 52 61 6e 64 28 29 20 3c |e) || (F|Rand() <|
|000046e0| 20 31 2e 30 2f 66 6c 6f | 61 74 28 6e 75 6d 29 29 | 1.0/flo|at(num))|
|000046f0| 20 29 0d 0a 09 09 09 09 | 7b 0d 0a 09 09 09 09 09 | )......|{.......|
|00004700| 2f 2f 20 6d 61 6b 65 20 | 73 75 72 65 20 50 20 64 |// make |sure P d|
|00004710| 6f 65 73 6e 27 74 20 61 | 6c 72 65 61 64 79 20 68 |oesn't a|lready h|
|00004720| 61 76 65 20 61 20 66 6f | 6c 6c 6f 77 65 72 0d 0a |ave a fo|llower..|
|00004730| 09 09 09 09 09 62 41 76 | 61 69 6c 61 62 6c 65 20 |.....bAv|ailable |
|00004740| 3d 20 74 72 75 65 3b 0d | 0a 09 09 09 09 09 66 6f |= true;.|......fo|
|00004750| 72 20 28 20 4d 3d 4c 65 | 76 65 6c 2e 50 61 77 6e |r ( M=Le|vel.Pawn|
|00004760| 4c 69 73 74 3b 20 4d 21 | 3d 4e 6f 6e 65 3b 20 4d |List; M!|=None; M|
|00004770| 3d 4d 2e 4e 65 78 74 50 | 61 77 6e 20 29 0d 0a 09 |=M.NextP|awn )...|
|00004780| 09 09 09 09 09 69 66 20 | 28 20 4d 2e 49 73 41 28 |.....if |( M.IsA(|
|00004790| 27 42 6f 74 27 29 20 26 | 26 20 28 4d 2e 50 6c 61 |'Bot') &|& (M.Pla|
|000047a0| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|000047b0| 66 6f 2e 54 65 61 6d 20 | 3d 3d 20 4e 65 77 42 6f |fo.Team |== NewBo|
|000047c0| 74 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |t.Player|Replicat|
|000047d0| 69 6f 6e 49 6e 66 6f 2e | 54 65 61 6d 29 20 0d 0a |ionInfo.|Team) ..|
|000047e0| 09 09 09 09 09 09 09 26 | 26 20 28 42 6f 74 28 4d |.......&|& (Bot(M|
|000047f0| 29 2e 4f 72 64 65 72 73 | 20 3d 3d 20 27 46 6f 6c |).Orders| == 'Fol|
|00004800| 6c 6f 77 27 29 20 26 26 | 20 28 42 6f 74 28 4d 29 |low') &&| (Bot(M)|
|00004810| 2e 4f 72 64 65 72 4f 62 | 6a 65 63 74 20 3d 3d 20 |.OrderOb|ject == |
|00004820| 50 29 20 29 0d 0a 09 09 | 09 09 09 09 09 62 41 76 |P) )....|.....bAv|
|00004830| 61 69 6c 61 62 6c 65 20 | 3d 20 66 61 6c 73 65 3b |ailable |= false;|
|00004840| 0d 0a 09 09 09 09 09 69 | 66 20 28 20 62 41 76 61 |.......i|f ( bAva|
|00004850| 69 6c 61 62 6c 65 20 29 | 0d 0a 09 09 09 09 09 09 |ilable )|........|
|00004860| 4c 20 3d 20 50 3b 0d 0a | 09 09 09 09 7d 0d 0a 09 |L = P;..|....}...|
|00004870| 09 09 7d 0d 0a 0d 0a 09 | 09 09 69 66 20 28 20 4c |..}.....|..if ( L|
|00004880| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 09 7b | != None| ).....{|
|00004890| 0d 0a 09 09 09 09 4e 65 | 77 42 6f 74 2e 53 65 74 |......Ne|wBot.Set|
|000048a0| 4f 72 64 65 72 73 28 27 | 46 6f 6c 6c 6f 77 27 2c |Orders('|Follow',|
|000048b0| 4c 2c 20 74 72 75 65 29 | 3b 0d 0a 09 09 09 09 72 |L, true)|;......r|
|000048c0| 65 74 75 72 6e 3b 0d 0a | 09 09 09 7d 0d 0a 09 09 |eturn;..|...}....|
|000048d0| 7d 0d 0a 09 7d 0d 0a 09 | 0d 0a 09 69 66 20 28 20 |}...}...|...if ( |
|000048e0| 43 75 72 72 65 6e 74 4f | 72 64 65 72 73 5b 4e 65 |CurrentO|rders[Ne|
|000048f0| 77 42 6f 74 2e 50 6c 61 | 79 65 72 52 65 70 6c 69 |wBot.Pla|yerRepli|
|00004900| 63 61 74 69 6f 6e 49 6e | 66 6f 2e 54 65 61 6d 5d |cationIn|fo.Team]|
|00004910| 20 3d 3d 20 27 46 72 65 | 65 6c 61 6e 63 65 27 20 | == 'Fre|elance' |
|00004920| 29 0d 0a 09 09 4e 65 77 | 42 6f 74 2e 53 65 74 4f |)....New|Bot.SetO|
|00004930| 72 64 65 72 73 28 27 41 | 74 74 61 63 6b 27 2c 20 |rders('A|ttack', |
|00004940| 4e 6f 6e 65 2c 20 74 72 | 75 65 29 3b 0d 0a 09 65 |None, tr|ue);...e|
|00004950| 6c 73 65 09 0d 0a 09 09 | 4e 65 77 42 6f 74 2e 53 |lse.....|NewBot.S|
|00004960| 65 74 4f 72 64 65 72 73 | 28 43 75 72 72 65 6e 74 |etOrders|(Current|
|00004970| 4f 72 64 65 72 73 5b 4e | 65 77 42 6f 74 2e 50 6c |Orders[N|ewBot.Pl|
|00004980| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|00004990| 6e 66 6f 2e 54 65 61 6d | 5d 2c 20 4e 6f 6e 65 2c |nfo.Team|], None,|
|000049a0| 20 74 72 75 65 29 3b 0d | 0a 7d 0d 0a 0d 0a 2f 2f | true);.|.}....//|
|000049b0| 20 41 6c 6c 6f 77 54 72 | 61 6e 73 6c 6f 63 61 74 | AllowTr|anslocat|
|000049c0| 69 6f 6e 20 2d 20 72 65 | 74 75 72 6e 20 74 72 75 |ion - re|turn tru|
|000049d0| 65 20 69 66 20 4f 74 68 | 65 72 20 63 61 6e 20 74 |e if Oth|er can t|
|000049e0| 65 6c 65 70 6f 72 74 20 | 74 6f 20 44 65 73 74 0d |eleport |to Dest.|
|000049f0| 0a 66 75 6e 63 74 69 6f | 6e 20 62 6f 6f 6c 20 41 |.functio|n bool A|
|00004a00| 6c 6c 6f 77 54 72 61 6e | 73 6c 6f 63 61 74 69 6f |llowTran|slocatio|
|00004a10| 6e 28 50 61 77 6e 20 4f | 74 68 65 72 2c 20 76 65 |n(Pawn O|ther, ve|
|00004a20| 63 74 6f 72 20 44 65 73 | 74 20 29 0d 0a 7b 0d 0a |ctor Des|t )..{..|
|00004a30| 09 69 66 20 28 20 4f 74 | 68 65 72 2e 50 6c 61 79 |.if ( Ot|her.Play|
|00004a40| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00004a50| 6f 2e 48 61 73 46 6c 61 | 67 20 21 3d 20 4e 6f 6e |o.HasFla|g != Non|
|00004a60| 65 20 29 0d 0a 09 09 43 | 54 46 46 6c 61 67 28 4f |e )....C|TFFlag(O|
|00004a70| 74 68 65 72 2e 50 6c 61 | 79 65 72 52 65 70 6c 69 |ther.Pla|yerRepli|
|00004a80| 63 61 74 69 6f 6e 49 6e | 66 6f 2e 48 61 73 46 6c |cationIn|fo.HasFl|
|00004a90| 61 67 29 2e 44 72 6f 70 | 28 30 2e 35 20 2a 20 4f |ag).Drop|(0.5 * O|
|00004aa0| 74 68 65 72 2e 56 65 6c | 6f 63 69 74 79 29 3b 0d |ther.Vel|ocity);.|
|00004ab0| 0a 0d 0a 09 72 65 74 75 | 72 6e 20 74 72 75 65 3b |....retu|rn true;|
|00004ac0| 0d 0a 7d 0d 0a 0d 0a 2f | 2f 20 53 68 6f 75 6c 64 |..}..../|/ Should|
|00004ad0| 54 72 61 6e 73 6c 6f 63 | 61 74 65 20 2d 20 72 65 |Transloc|ate - re|
|00004ae0| 74 75 72 6e 20 74 72 75 | 65 20 69 66 20 61 62 6f |turn tru|e if abo|
|00004af0| 74 20 73 68 6f 75 6c 64 | 20 75 73 65 20 74 72 61 |t should| use tra|
|00004b00| 6e 73 6c 6f 63 61 74 69 | 6f 6e 0d 0a 66 75 6e 63 |nslocati|on..func|
|00004b10| 74 69 6f 6e 20 62 6f 6f | 6c 20 43 61 6e 54 72 61 |tion boo|l CanTra|
|00004b20| 6e 73 6c 6f 63 61 74 65 | 28 42 6f 74 20 61 42 6f |nslocate|(Bot aBo|
|00004b30| 74 29 0d 0a 7b 0d 0a 09 | 69 66 20 28 20 61 42 6f |t)..{...|if ( aBo|
|00004b40| 74 2e 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |t.Player|Replicat|
|00004b50| 69 6f 6e 49 6e 66 6f 2e | 48 61 73 46 6c 61 67 20 |ionInfo.|HasFlag |
|00004b60| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 72 65 74 |!= None |)....ret|
|00004b70| 75 72 6e 20 66 61 6c 73 | 65 3b 0d 0a 0d 0a 09 72 |urn fals|e;.....r|
|00004b80| 65 74 75 72 6e 20 53 75 | 70 65 72 2e 43 61 6e 54 |eturn Su|per.CanT|
|00004b90| 72 61 6e 73 6c 6f 63 61 | 74 65 28 61 42 6f 74 29 |ransloca|te(aBot)|
|00004ba0| 3b 0d 0a 7d 0d 0a 0d 0a | 66 75 6e 63 74 69 6f 6e |;..}....|function|
|00004bb0| 20 69 6e 74 20 52 65 64 | 75 63 65 44 61 6d 61 67 | int Red|uceDamag|
|00004bc0| 65 28 69 6e 74 20 44 61 | 6d 61 67 65 2c 20 6e 61 |e(int Da|mage, na|
|00004bd0| 6d 65 20 44 61 6d 61 67 | 65 54 79 70 65 2c 20 70 |me Damag|eType, p|
|00004be0| 61 77 6e 20 69 6e 6a 75 | 72 65 64 2c 20 70 61 77 |awn inju|red, paw|
|00004bf0| 6e 20 69 6e 73 74 69 67 | 61 74 65 64 42 79 29 0d |n instig|atedBy).|
|00004c00| 0a 7b 0d 0a 09 69 66 20 | 28 20 28 69 6e 73 74 69 |.{...if |( (insti|
|00004c10| 67 61 74 65 64 42 79 20 | 21 3d 20 4e 6f 6e 65 29 |gatedBy |!= None)|
|00004c20| 20 0d 0a 09 09 26 26 20 | 28 69 6e 6a 75 72 65 64 | ....&& |(injured|
|00004c30| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00004c40| 6f 6e 49 6e 66 6f 2e 54 | 65 61 6d 20 21 3d 20 69 |onInfo.T|eam != i|
|00004c50| 6e 73 74 69 67 61 74 65 | 64 42 79 2e 50 6c 61 79 |nstigate|dBy.Play|
|00004c60| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00004c70| 6f 2e 54 65 61 6d 29 0d | 0a 09 09 26 26 20 69 6e |o.Team).|...&& in|
|00004c80| 6a 75 72 65 64 2e 49 73 | 41 28 27 42 6f 74 27 29 |jured.Is|A('Bot')|
|00004c90| 20 0d 0a 09 09 26 26 20 | 28 28 69 6e 6a 75 72 65 | ....&& |((injure|
|00004ca0| 64 2e 68 65 61 6c 74 68 | 20 3c 20 33 35 29 20 7c |d.health| < 35) ||
|00004cb0| 7c 20 28 69 6e 6a 75 72 | 65 64 2e 50 6c 61 79 65 || (injur|ed.Playe|
|00004cc0| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00004cd0| 2e 48 61 73 46 6c 61 67 | 20 21 3d 20 4e 6f 6e 65 |.HasFlag| != None|
|00004ce0| 29 29 20 29 0d 0a 09 09 | 09 42 6f 74 28 69 6e 6a |)) )....|.Bot(inj|
|00004cf0| 75 72 65 64 29 2e 53 65 | 6e 64 54 65 61 6d 4d 65 |ured).Se|ndTeamMe|
|00004d00| 73 73 61 67 65 28 4e 6f | 6e 65 2c 20 27 4f 54 48 |ssage(No|ne, 'OTH|
|00004d10| 45 52 27 2c 20 34 2c 20 | 31 35 29 3b 0d 0a 0d 0a |ER', 4, |15);....|
|00004d20| 09 72 65 74 75 72 6e 20 | 53 75 70 65 72 2e 52 65 |.return |Super.Re|
|00004d30| 64 75 63 65 44 61 6d 61 | 67 65 28 44 61 6d 61 67 |duceDama|ge(Damag|
|00004d40| 65 2c 20 44 61 6d 61 67 | 65 54 79 70 65 2c 20 69 |e, Damag|eType, i|
|00004d50| 6e 6a 75 72 65 64 2c 20 | 69 6e 73 74 69 67 61 74 |njured, |instigat|
|00004d60| 65 64 42 79 29 3b 0d 0a | 7d 0d 0a 0d 0a 66 75 6e |edBy);..|}....fun|
|00004d70| 63 74 69 6f 6e 20 62 79 | 74 65 20 50 72 69 6f 72 |ction by|te Prior|
|00004d80| 69 74 79 4f 62 6a 65 63 | 74 69 76 65 28 42 6f 74 |ityObjec|tive(Bot|
|00004d90| 20 61 42 6f 74 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 | aBot)..|{...loca|
|00004da0| 6c 20 43 54 46 46 6c 61 | 67 20 46 72 69 65 6e 64 |l CTFFla|g Friend|
|00004db0| 6c 79 46 6c 61 67 3b 0d | 0a 0d 0a 09 46 72 69 65 |lyFlag;.|....Frie|
|00004dc0| 6e 64 6c 79 46 6c 61 67 | 20 3d 20 43 54 46 52 65 |ndlyFlag| = CTFRe|
|00004dd0| 70 6c 69 63 61 74 69 6f | 6e 49 6e 66 6f 28 47 61 |plicatio|nInfo(Ga|
|00004de0| 6d 65 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |meReplic|ationInf|
|00004df0| 6f 29 2e 46 6c 61 67 4c | 69 73 74 5b 61 42 6f 74 |o).FlagL|ist[aBot|
|00004e00| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00004e10| 6f 6e 49 6e 66 6f 2e 54 | 65 61 6d 5d 3b 20 0d 0a |onInfo.T|eam]; ..|
|00004e20| 0d 0a 09 69 66 20 28 20 | 61 42 6f 74 2e 50 6c 61 |...if ( |aBot.Pla|
|00004e30| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|00004e40| 66 6f 2e 48 61 73 46 6c | 61 67 20 21 3d 20 4e 6f |fo.HasFl|ag != No|
|00004e50| 6e 65 20 29 0d 0a 09 7b | 0d 0a 09 09 69 66 20 28 |ne )...{|....if (|
|00004e60| 20 28 56 53 69 7a 65 28 | 61 42 6f 74 2e 4c 6f 63 | (VSize(|aBot.Loc|
|00004e70| 61 74 69 6f 6e 20 2d 20 | 46 72 69 65 6e 64 6c 79 |ation - |Friendly|
|00004e80| 46 6c 61 67 2e 48 6f 6d | 65 42 61 73 65 2e 4c 6f |Flag.Hom|eBase.Lo|
|00004e90| 63 61 74 69 6f 6e 29 20 | 3c 20 32 30 30 30 29 0d |cation) |< 2000).|
|00004ea0| 0a 09 09 09 26 26 20 61 | 42 6f 74 2e 4c 69 6e 65 |....&& a|Bot.Line|
|00004eb0| 4f 66 53 69 67 68 74 54 | 6f 28 46 72 69 65 6e 64 |OfSightT|o(Friend|
|00004ec0| 6c 79 46 6c 61 67 2e 48 | 6f 6d 65 42 61 73 65 29 |lyFlag.H|omeBase)|
|00004ed0| 20 29 0d 0a 09 09 09 72 | 65 74 75 72 6e 20 32 35 | ).....r|eturn 25|
|00004ee0| 35 3b 0d 0a 09 09 72 65 | 74 75 72 6e 20 32 3b 0d |5;....re|turn 2;.|
|00004ef0| 0a 09 7d 0d 0a 0d 0a 09 | 69 66 20 28 20 46 72 69 |..}.....|if ( Fri|
|00004f00| 65 6e 64 6c 79 46 6c 61 | 67 2e 48 6f 6c 64 65 72 |endlyFla|g.Holder|
|00004f10| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 72 65 | != None| )....re|
|00004f20| 74 75 72 6e 20 31 3b 0d | 0a 0d 0a 09 72 65 74 75 |turn 1;.|....retu|
|00004f30| 72 6e 20 30 3b 0d 0a 7d | 0d 0a 0d 0a 66 75 6e 63 |rn 0;..}|....func|
|00004f40| 74 69 6f 6e 20 50 69 63 | 6b 41 6d 62 75 73 68 53 |tion Pic|kAmbushS|
|00004f50| 70 6f 74 46 6f 72 28 42 | 6f 74 20 61 42 6f 74 29 |potFor(B|ot aBot)|
|00004f60| 0d 0a 7b 0d 0a 09 69 66 | 20 28 20 43 68 65 63 6b |..{...if| ( Check|
|00004f70| 46 6f 72 54 72 61 6e 73 | 6c 6f 63 61 74 6f 72 73 |ForTrans|locators|
|00004f80| 28 61 42 6f 74 29 20 29 | 0d 0a 09 7b 0d 0a 09 09 |(aBot) )|...{....|
|00004f90| 61 42 6f 74 2e 62 53 70 | 65 63 69 61 6c 41 6d 62 |aBot.bSp|ecialAmb|
|00004fa0| 75 73 68 20 3d 20 74 72 | 75 65 3b 0d 0a 09 09 72 |ush = tr|ue;....r|
|00004fb0| 65 74 75 72 6e 3b 0d 0a | 09 7d 0d 0a 09 53 75 70 |eturn;..|.}...Sup|
|00004fc0| 65 72 2e 50 69 63 6b 41 | 6d 62 75 73 68 53 70 6f |er.PickA|mbushSpo|
|00004fd0| 74 46 6f 72 28 61 42 6f | 74 29 3b 0d 0a 7d 0d 0a |tFor(aBo|t);..}..|
|00004fe0| 0d 0a 66 75 6e 63 74 69 | 6f 6e 20 62 6f 6f 6c 20 |..functi|on bool |
|00004ff0| 43 68 65 63 6b 46 6f 72 | 54 72 61 6e 73 6c 6f 63 |CheckFor|Transloc|
|00005000| 61 74 6f 72 73 28 42 6f | 74 20 61 42 6f 74 29 0d |ators(Bo|t aBot).|
|00005010| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 54 72 61 6e 73 |.{...loc|al Trans|
|00005020| 6c 6f 63 61 74 6f 72 54 | 61 72 67 65 74 20 54 3b |locatorT|arget T;|
|00005030| 0d 0a 0d 0a 09 2f 2f 20 | 63 68 65 63 6b 20 66 6f |.....// |check fo|
|00005040| 72 20 74 72 61 6e 73 6c | 6f 63 61 74 6f 72 73 20 |r transl|ocators |
|00005050| 6e 65 61 72 20 62 61 73 | 65 0d 0a 09 46 6f 72 45 |near bas|e...ForE|
|00005060| 61 63 68 20 41 6c 6c 41 | 63 74 6f 72 73 28 63 6c |ach AllA|ctors(cl|
|00005070| 61 73 73 27 54 72 61 6e | 73 6c 6f 63 61 74 6f 72 |ass'Tran|slocator|
|00005080| 54 61 72 67 65 74 27 2c | 20 54 29 0d 0a 09 09 69 |Target',| T)....i|
|00005090| 66 20 28 20 43 68 65 63 | 6b 54 68 69 73 54 72 61 |f ( Chec|kThisTra|
|000050a0| 6e 73 6c 6f 63 61 74 6f | 72 28 61 42 6f 74 2c 20 |nslocato|r(aBot, |
|000050b0| 54 29 20 29 0d 0a 09 09 | 09 72 65 74 75 72 6e 20 |T) )....|.return |
|000050c0| 74 72 75 65 3b 0d 0a 0d | 0a 09 72 65 74 75 72 6e |true;...|..return|
|000050d0| 20 66 61 6c 73 65 3b 0d | 0a 7d 0d 0a 0d 0a 66 75 | false;.|.}....fu|
|000050e0| 6e 63 74 69 6f 6e 20 62 | 6f 6f 6c 20 43 68 65 63 |nction b|ool Chec|
|000050f0| 6b 54 68 69 73 54 72 61 | 6e 73 6c 6f 63 61 74 6f |kThisTra|nslocato|
|00005100| 72 28 42 6f 74 20 61 42 | 6f 74 2c 20 54 72 61 6e |r(Bot aB|ot, Tran|
|00005110| 73 6c 6f 63 61 74 6f 72 | 54 61 72 67 65 74 20 54 |slocator|Target T|
|00005120| 29 0d 0a 7b 0d 0a 09 6c | 6f 63 61 6c 20 46 6c 61 |)..{...l|ocal Fla|
|00005130| 67 42 61 73 65 20 46 3b | 0d 0a 0d 0a 09 69 66 20 |gBase F;|.....if |
|00005140| 28 20 61 42 6f 74 2e 57 | 65 61 70 6f 6e 2e 62 4d |( aBot.W|eapon.bM|
|00005150| 65 6c 65 65 57 65 61 70 | 6f 6e 20 29 0d 0a 09 09 |eleeWeap|on )....|
|00005160| 72 65 74 75 72 6e 20 66 | 61 6c 73 65 3b 0d 0a 09 |return f|alse;...|
|00005170| 46 20 3d 20 43 54 46 52 | 65 70 6c 69 63 61 74 69 |F = CTFR|eplicati|
|00005180| 6f 6e 49 6e 66 6f 28 47 | 61 6d 65 52 65 70 6c 69 |onInfo(G|ameRepli|
|00005190| 63 61 74 69 6f 6e 49 6e | 66 6f 29 2e 46 6c 61 67 |cationIn|fo).Flag|
|000051a0| 4c 69 73 74 5b 61 42 6f | 74 2e 50 6c 61 79 65 72 |List[aBo|t.Player|
|000051b0| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 2e |Replicat|ionInfo.|
|000051c0| 54 65 61 6d 5d 2e 48 6f | 6d 65 42 61 73 65 3b 0d |Team].Ho|meBase;.|
|000051d0| 0a 0d 0a 09 69 66 20 28 | 20 28 54 2e 52 65 67 69 |....if (| (T.Regi|
|000051e0| 6f 6e 2e 5a 6f 6e 65 20 | 3d 3d 20 46 2e 52 65 67 |on.Zone |== F.Reg|
|000051f0| 69 6f 6e 2e 5a 6f 6e 65 | 29 0d 0a 09 09 26 26 20 |ion.Zone|)....&& |
|00005200| 28 54 2e 49 6e 73 74 69 | 67 61 74 6f 72 2e 50 6c |(T.Insti|gator.Pl|
|00005210| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|00005220| 6e 66 6f 2e 54 65 61 6d | 20 21 3d 20 61 42 6f 74 |nfo.Team| != aBot|
|00005230| 2e 50 6c 61 79 65 72 52 | 65 70 6c 69 63 61 74 69 |.PlayerR|eplicati|
|00005240| 6f 6e 49 6e 66 6f 2e 54 | 65 61 6d 29 0d 0a 09 09 |onInfo.T|eam)....|
|00005250| 26 26 20 21 54 2e 44 69 | 73 72 75 70 74 65 64 28 |&& !T.Di|srupted(|
|00005260| 29 0d 0a 09 09 26 26 20 | 28 56 53 69 7a 65 28 54 |)....&& |(VSize(T|
|00005270| 2e 4c 6f 63 61 74 69 6f | 6e 20 2d 20 46 2e 4c 6f |.Locatio|n - F.Lo|
|00005280| 63 61 74 69 6f 6e 29 20 | 3c 20 31 30 30 30 29 20 |cation) |< 1000) |
|00005290| 29 0d 0a 09 7b 0d 0a 09 | 09 69 66 20 28 20 28 56 |)...{...|.if ( (V|
|000052a0| 53 69 7a 65 28 61 42 6f | 74 2e 4c 6f 63 61 74 69 |Size(aBo|t.Locati|
|000052b0| 6f 6e 20 2d 20 54 2e 4c | 6f 63 61 74 69 6f 6e 29 |on - T.L|ocation)|
|000052c0| 20 3c 20 38 35 30 29 0d | 0a 09 09 09 09 26 26 20 | < 850).|.....&& |
|000052d0| 61 42 6f 74 2e 4c 69 6e | 65 4f 66 53 69 67 68 74 |aBot.Lin|eOfSight|
|000052e0| 54 6f 28 54 29 20 29 0d | 0a 09 09 7b 0d 0a 09 09 |To(T) ).|...{....|
|000052f0| 09 61 42 6f 74 2e 41 6d | 62 75 73 68 53 70 6f 74 |.aBot.Am|bushSpot|
|00005300| 20 3d 20 4e 6f 6e 65 3b | 0d 0a 09 09 09 61 42 6f | = None;|.....aBo|
|00005310| 74 2e 53 68 6f 6f 74 54 | 61 72 67 65 74 28 54 29 |t.ShootT|arget(T)|
|00005320| 3b 0d 0a 09 09 09 72 65 | 74 75 72 6e 20 74 72 75 |;.....re|turn tru|
|00005330| 65 3b 0d 0a 09 09 7d 0d | 0a 09 09 65 6c 73 65 0d |e;....}.|...else.|
|00005340| 0a 09 09 7b 0d 0a 09 09 | 09 61 42 6f 74 2e 4d 6f |...{....|.aBot.Mo|
|00005350| 76 65 54 61 72 67 65 74 | 20 3d 20 61 42 6f 74 2e |veTarget| = aBot.|
|00005360| 46 69 6e 64 50 61 74 68 | 54 6f 77 61 72 64 28 54 |FindPath|Toward(T|
|00005370| 29 3b 0d 0a 09 09 09 69 | 66 20 28 20 61 42 6f 74 |);.....i|f ( aBot|
|00005380| 2e 4d 6f 76 65 54 61 72 | 67 65 74 20 21 3d 20 4e |.MoveTar|get != N|
|00005390| 6f 6e 65 20 29 0d 0a 09 | 09 09 7b 0d 0a 09 09 09 |one )...|..{.....|
|000053a0| 09 69 66 20 28 20 56 53 | 69 7a 65 28 61 42 6f 74 |.if ( VS|ize(aBot|
|000053b0| 2e 4c 6f 63 61 74 69 6f | 6e 20 2d 20 61 42 6f 74 |.Locatio|n - aBot|
|000053c0| 2e 4d 6f 76 65 54 61 72 | 67 65 74 2e 4c 6f 63 61 |.MoveTar|get.Loca|
|000053d0| 74 69 6f 6e 29 20 3c 20 | 31 2e 35 20 2a 20 61 42 |tion) < |1.5 * aB|
|000053e0| 6f 74 2e 43 6f 6c 6c 69 | 73 69 6f 6e 52 61 64 69 |ot.Colli|sionRadi|
|000053f0| 75 73 20 29 0d 0a 09 09 | 09 09 7b 0d 0a 09 09 09 |us )....|..{.....|
|00005400| 09 09 61 42 6f 74 2e 43 | 61 6d 70 54 69 6d 65 20 |..aBot.C|ampTime |
|00005410| 3d 20 33 2e 30 3b 0d 0a | 09 09 09 09 09 61 42 6f |= 3.0;..|.....aBo|
|00005420| 74 2e 47 6f 74 6f 53 74 | 61 74 65 28 27 52 6f 61 |t.GotoSt|ate('Roa|
|00005430| 6d 69 6e 67 27 2c 20 27 | 43 61 6d 70 27 29 3b 0d |ming', '|Camp');.|
|00005440| 0a 09 09 09 09 7d 0d 0a | 09 09 09 09 61 42 6f 74 |.....}..|....aBot|
|00005450| 2e 41 6d 62 75 73 68 53 | 70 6f 74 20 3d 20 4e 6f |.AmbushS|pot = No|
|00005460| 6e 65 3b 0d 0a 09 09 09 | 09 72 65 74 75 72 6e 20 |ne;.....|.return |
|00005470| 74 72 75 65 3b 0d 0a 09 | 09 09 7d 0d 0a 09 09 7d |true;...|..}....}|
|00005480| 0d 0a 09 7d 0d 0a 09 72 | 65 74 75 72 6e 20 66 61 |...}...r|eturn fa|
|00005490| 6c 73 65 3b 0d 0a 7d 0d | 0a 0d 0a 00 |lse;..}.|.... |
+--------+-------------------------+-------------------------+--------+--------+