home *** CD-ROM | disk | FTP | other *** search
Unknown | 2004-05-10 | 3.9 KB |
view JSON data
|
view as text
|
open on a Mac
|
open on a PC
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 | 4f 3e 2f 2f 2a 2a 2a 2a |........|O>//****|
|00000010| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000020| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000030| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000040| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000050| 0d 0a 2f 2f 20 41 73 73 | 61 75 6c 74 50 61 74 68 |..// Ass|aultPath|
|00000060| 0d 0a 2f 2f 20 75 73 65 | 64 20 74 6f 20 73 70 65 |..// use|d to spe|
|00000070| 63 69 66 79 20 61 6c 74 | 65 72 6e 61 74 65 20 72 |cify alt|ernate r|
|00000080| 6f 75 74 65 73 20 66 6f | 72 20 61 74 74 61 63 6b |outes fo|r attack|
|00000090| 65 72 73 0d 0a 2f 2f 0d | 0a 2f 2f 2a 2a 2a 2a 2a |ers..//.|.//*****|
|000000a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0d |********|*******.|
|000000e0| 0a 63 6c 61 73 73 20 41 | 73 73 61 75 6c 74 50 61 |.class A|ssaultPa|
|000000f0| 74 68 20 65 78 74 65 6e | 64 73 20 4e 61 76 69 67 |th exten|ds Navig|
|00000100| 61 74 69 6f 6e 50 6f 69 | 6e 74 0d 0a 09 70 6c 61 |ationPoi|nt...pla|
|00000110| 63 65 61 62 6c 65 3b 0d | 0a 0d 0a 76 61 72 09 09 |ceable;.|...var..|
|00000120| 47 61 6d 65 4f 62 6a 65 | 63 74 69 76 65 09 41 73 |GameObje|ctive.As|
|00000130| 73 6f 63 69 61 74 65 64 | 4f 62 6a 65 63 74 69 76 |sociated|Objectiv|
|00000140| 65 3b 0d 0a 76 61 72 09 | 09 41 73 73 61 75 6c 74 |e;..var.|.Assault|
|00000150| 50 61 74 68 09 09 4e 65 | 78 74 50 61 74 68 3b 0d |Path..Ne|xtPath;.|
|00000160| 0a 76 61 72 28 29 09 69 | 6e 74 09 09 09 09 50 6f |.var().i|nt....Po|
|00000170| 73 69 74 69 6f 6e 3b 09 | 2f 2f 20 73 70 65 63 69 |sition;.|// speci|
|00000180| 66 69 65 73 20 72 65 6c | 61 74 69 76 65 20 70 6f |fies rel|ative po|
|00000190| 73 69 74 69 6f 6e 20 69 | 6e 20 61 20 63 68 61 69 |sition i|n a chai|
|000001a0| 6e 20 6f 66 20 41 73 73 | 61 75 6c 74 50 61 74 68 |n of Ass|aultPath|
|000001b0| 73 20 77 69 74 68 20 74 | 68 65 20 73 61 6d 65 20 |s with t|he same |
|000001c0| 50 61 74 68 54 61 67 20 | 61 6e 64 20 74 68 65 20 |PathTag |and the |
|000001d0| 73 61 6d 65 20 4f 62 6a | 65 63 74 69 76 65 54 61 |same Obj|ectiveTa|
|000001e0| 67 0d 0a 76 61 72 28 29 | 09 6e 61 6d 65 09 09 09 |g..var()|.name...|
|000001f0| 4f 62 6a 65 63 74 69 76 | 65 54 61 67 3b 0d 0a 76 |Objectiv|eTag;..v|
|00000200| 61 72 28 29 09 6e 61 6d | 65 09 09 09 50 61 74 68 |ar().nam|e...Path|
|00000210| 54 61 67 5b 34 5d 3b 09 | 09 2f 2f 20 70 61 74 68 |Tag[4];.|.// path|
|00000220| 73 20 74 68 61 74 20 66 | 61 6e 20 6f 75 74 20 66 |s that f|an out f|
|00000230| 72 6f 6d 20 74 68 65 20 | 73 61 6d 65 20 66 69 72 |rom the |same fir|
|00000240| 73 74 20 41 73 73 61 75 | 6c 74 50 61 74 68 20 73 |st Assau|ltPath s|
|00000250| 68 61 72 65 20 74 68 65 | 20 73 61 6d 65 20 50 61 |hare the| same Pa|
|00000260| 74 68 54 61 67 2c 20 6d | 6f 72 65 20 74 68 61 6e |thTag, m|ore than|
|00000270| 20 6f 6e 65 20 70 61 74 | 68 20 63 61 6e 20 67 6f | one pat|h can go|
|00000280| 20 74 68 72 6f 75 67 68 | 20 61 20 67 69 76 65 6e | through| a given|
|00000290| 20 61 73 73 61 75 6c 74 | 70 61 74 68 0d 0a 0d 0a | assault|path....|
|000002a0| 76 61 72 28 29 09 62 6f | 6f 6c 09 09 09 62 45 6e |var().bo|ol...bEn|
|000002b0| 61 62 6c 65 64 3b 0d 0a | 76 61 72 28 29 09 62 6f |abled;..|var().bo|
|000002c0| 6f 6c 09 09 09 62 4e 6f | 52 65 74 75 72 6e 3b 0d |ol...bNo|Return;.|
|000002d0| 0a 76 61 72 28 29 09 62 | 6f 6f 6c 09 09 09 62 52 |.var().b|ool...bR|
|000002e0| 65 74 75 72 6e 4f 6e 6c | 79 3b 0d 0a 76 61 72 09 |eturnOnl|y;..var.|
|000002f0| 09 62 6f 6f 6c 09 09 09 | 62 46 69 72 73 74 50 61 |.bool...|bFirstPa|
|00000300| 74 68 3b 0d 0a 76 61 72 | 09 09 62 6f 6f 6c 09 09 |th;..var|..bool..|
|00000310| 09 62 4c 61 73 74 50 61 | 74 68 3b 0d 0a 76 61 72 |.bLastPa|th;..var|
|00000320| 28 29 09 62 6f 6f 6c 09 | 09 09 62 4e 6f 47 72 6f |().bool.|..bNoGro|
|00000330| 75 70 69 6e 67 3b 09 2f | 2f 20 62 6f 74 73 20 77 |uping;./|/ bots w|
|00000340| 6f 6e 27 74 20 77 61 69 | 74 20 74 6f 20 72 65 66 |on't wai|t to ref|
|00000350| 6f 72 6d 20 73 71 75 61 | 64 73 20 61 74 20 74 68 |orm squa|ds at th|
|00000360| 69 73 20 61 73 73 61 75 | 6c 74 20 70 61 74 68 0d |is assau|lt path.|
|00000370| 0a 09 0d 0a 76 61 72 28 | 29 09 66 6c 6f 61 74 09 |....var(|).float.|
|00000380| 09 09 50 72 69 6f 72 69 | 74 79 3b 09 2f 2f 20 30 |..Priori|ty;.// 0|
|00000390| 20 74 6f 20 31 2c 20 68 | 69 67 68 65 72 20 6d 65 | to 1, h|igher me|
|000003a0| 61 6e 73 20 68 65 61 76 | 69 65 72 20 77 65 69 67 |ans heav|ier weig|
|000003b0| 68 74 69 6e 67 20 77 68 | 65 6e 20 64 65 74 65 72 |hting wh|en deter|
|000003c0| 6d 69 6e 69 6e 67 20 77 | 68 65 74 68 65 72 20 74 |mining w|hether t|
|000003d0| 6f 20 75 73 65 20 74 68 | 69 73 20 70 61 74 68 0d |o use th|is path.|
|000003e0| 0a 0d 0a 65 76 65 6e 74 | 20 54 72 69 67 67 65 72 |...event| Trigger|
|000003f0| 28 20 41 63 74 6f 72 20 | 4f 74 68 65 72 2c 20 50 |( Actor |Other, P|
|00000400| 61 77 6e 20 45 76 65 6e | 74 49 6e 73 74 69 67 61 |awn Even|tInstiga|
|00000410| 74 6f 72 20 29 0d 0a 7b | 0d 0a 09 62 45 6e 61 62 |tor )..{|...bEnab|
|00000420| 6c 65 64 20 3d 20 21 62 | 45 6e 61 62 6c 65 64 3b |led = !b|Enabled;|
|00000430| 0d 0a 7d 0d 0a 0d 0a 66 | 75 6e 63 74 69 6f 6e 20 |..}....f|unction |
|00000440| 56 61 6c 69 64 61 74 65 | 50 61 74 68 54 61 67 73 |Validate|PathTags|
|00000450| 28 29 0d 0a 7b 0d 0a 09 | 69 66 20 28 20 50 61 74 |()..{...|if ( Pat|
|00000460| 68 54 61 67 5b 30 5d 20 | 3d 3d 20 27 27 20 29 0d |hTag[0] |== '' ).|
|00000470| 0a 09 09 50 61 74 68 54 | 61 67 5b 30 5d 20 3d 20 |...PathT|ag[0] = |
|00000480| 4e 61 6d 65 3b 0d 0a 7d | 0d 0a 0d 0a 66 75 6e 63 |Name;..}|....func|
|00000490| 74 69 6f 6e 20 41 64 64 | 54 6f 28 47 61 6d 65 4f |tion Add|To(GameO|
|000004a0| 62 6a 65 63 74 69 76 65 | 20 4f 29 0d 0a 7b 0d 0a |bjective| O)..{..|
|000004b0| 09 6c 6f 63 61 6c 20 41 | 73 73 61 75 6c 74 50 61 |.local A|ssaultPa|
|000004c0| 74 68 20 41 3b 0d 0a 09 | 6c 6f 63 61 6c 20 69 6e |th A;...|local in|
|000004d0| 74 20 69 3b 0d 0a 0d 0a | 09 4e 65 78 74 50 61 74 |t i;....|.NextPat|
|000004e0| 68 20 3d 20 4e 6f 6e 65 | 3b 0d 0a 09 41 73 73 6f |h = None|;...Asso|
|000004f0| 63 69 61 74 65 64 4f 62 | 6a 65 63 74 69 76 65 20 |ciatedOb|jective |
|00000500| 3d 20 4f 3b 0d 0a 09 69 | 66 20 28 20 4f 2e 41 6c |= O;...i|f ( O.Al|
|00000510| 74 65 72 6e 61 74 65 50 | 61 74 68 73 20 3d 3d 20 |ternateP|aths == |
|00000520| 4e 6f 6e 65 20 29 0d 0a | 09 7b 0d 0a 09 09 4f 2e |None )..|.{....O.|
|00000530| 41 6c 74 65 72 6e 61 74 | 65 50 61 74 68 73 20 3d |Alternat|ePaths =|
|00000540| 20 73 65 6c 66 3b 0d 0a | 09 09 72 65 74 75 72 6e | self;..|..return|
|00000550| 3b 0d 0a 09 7d 0d 0a 09 | 56 61 6c 69 64 61 74 65 |;...}...|Validate|
|00000560| 50 61 74 68 54 61 67 73 | 28 29 3b 0d 0a 09 66 6f |PathTags|();...fo|
|00000570| 72 20 28 20 41 3d 4f 2e | 41 6c 74 65 72 6e 61 74 |r ( A=O.|Alternat|
|00000580| 65 50 61 74 68 73 3b 20 | 41 21 3d 4e 6f 6e 65 3b |ePaths; |A!=None;|
|00000590| 20 41 3d 41 2e 4e 65 78 | 74 50 61 74 68 20 29 0d | A=A.Nex|tPath ).|
|000005a0| 0a 09 7b 0d 0a 09 09 66 | 6f 72 20 28 20 69 3d 30 |..{....f|or ( i=0|
|000005b0| 3b 20 69 3c 34 3b 20 69 | 2b 2b 20 29 0d 0a 09 09 |; i<4; i|++ )....|
|000005c0| 09 69 66 20 28 20 28 50 | 61 74 68 54 61 67 5b 69 |.if ( (P|athTag[i|
|000005d0| 5d 20 21 3d 20 27 27 29 | 20 26 26 20 41 2e 48 61 |] != '')| && A.Ha|
|000005e0| 73 50 61 74 68 54 61 67 | 28 50 61 74 68 54 61 67 |sPathTag|(PathTag|
|000005f0| 5b 69 5d 29 20 29 0d 0a | 09 09 09 7b 0d 0a 09 09 |[i]) )..|...{....|
|00000600| 09 09 69 66 20 28 20 41 | 2e 50 6f 73 69 74 69 6f |..if ( A|.Positio|
|00000610| 6e 20 3c 20 50 6f 73 69 | 74 69 6f 6e 20 29 0d 0a |n < Posi|tion )..|
|00000620| 09 09 09 09 7b 0d 0a 09 | 09 09 09 09 41 2e 62 4c |....{...|....A.bL|
|00000630| 61 73 74 50 61 74 68 20 | 3d 20 66 61 6c 73 65 3b |astPath |= false;|
|00000640| 0d 0a 09 09 09 09 09 62 | 46 69 72 73 74 50 61 74 |.......b|FirstPat|
|00000650| 68 20 3d 20 66 61 6c 73 | 65 3b 0d 0a 09 09 09 09 |h = fals|e;......|
|00000660| 7d 0d 0a 09 09 09 09 65 | 6c 73 65 20 69 66 20 28 |}......e|lse if (|
|00000670| 20 41 2e 50 6f 73 69 74 | 69 6f 6e 20 3e 20 50 6f | A.Posit|ion > Po|
|00000680| 73 69 74 69 6f 6e 20 29 | 0d 0a 09 09 09 09 7b 0d |sition )|......{.|
|00000690| 0a 09 09 09 09 09 41 2e | 62 46 69 72 73 74 50 61 |......A.|bFirstPa|
|000006a0| 74 68 20 3d 20 66 61 6c | 73 65 3b 0d 0a 09 09 09 |th = fal|se;.....|
|000006b0| 09 09 62 4c 61 73 74 50 | 61 74 68 20 3d 20 66 61 |..bLastP|ath = fa|
|000006c0| 6c 73 65 3b 0d 0a 09 09 | 09 09 7d 0d 0a 09 09 09 |lse;....|..}.....|
|000006d0| 7d 0d 0a 09 09 69 66 20 | 28 20 41 2e 4e 65 78 74 |}....if |( A.Next|
|000006e0| 50 61 74 68 20 3d 3d 20 | 4e 6f 6e 65 20 29 0d 0a |Path == |None )..|
|000006f0| 09 09 7b 0d 0a 09 09 09 | 41 2e 4e 65 78 74 50 61 |..{.....|A.NextPa|
|00000700| 74 68 20 3d 20 73 65 6c | 66 3b 0d 0a 09 09 09 72 |th = sel|f;.....r|
|00000710| 65 74 75 72 6e 3b 0d 0a | 09 09 7d 0d 0a 09 7d 0d |eturn;..|..}...}.|
|00000720| 0a 7d 0d 0a 0d 0a 66 75 | 6e 63 74 69 6f 6e 20 6e |.}....fu|nction n|
|00000730| 61 6d 65 20 50 69 63 6b | 54 61 67 28 29 0d 0a 7b |ame Pick|Tag()..{|
|00000740| 0d 0a 09 6c 6f 63 61 6c | 20 6e 61 6d 65 20 52 65 |...local| name Re|
|00000750| 73 75 6c 74 3b 0d 0a 09 | 6c 6f 63 61 6c 20 69 6e |sult;...|local in|
|00000760| 74 20 69 2c 20 6e 75 6d | 3b 0d 0a 0d 0a 09 56 61 |t i, num|;.....Va|
|00000770| 6c 69 64 61 74 65 50 61 | 74 68 54 61 67 73 28 29 |lidatePa|thTags()|
|00000780| 3b 0d 0a 09 52 65 73 75 | 6c 74 20 3d 20 50 61 74 |;...Resu|lt = Pat|
|00000790| 68 54 61 67 5b 30 5d 3b | 0d 0a 0d 0a 09 66 6f 72 |hTag[0];|.....for|
|000007a0| 20 28 20 69 3d 30 3b 20 | 69 3c 34 3b 20 69 2b 2b | ( i=0; |i<4; i++|
|000007b0| 20 29 0d 0a 09 09 69 66 | 20 28 20 50 61 74 68 54 | )....if| ( PathT|
|000007c0| 61 67 5b 69 5d 20 21 3d | 20 27 4e 6f 6e 65 27 20 |ag[i] !=| 'None' |
|000007d0| 29 0d 0a 09 09 7b 0d 0a | 09 09 09 6e 75 6d 2b 2b |)....{..|...num++|
|000007e0| 3b 0d 0a 09 09 09 69 66 | 20 28 20 46 52 61 6e 64 |;.....if| ( FRand|
|000007f0| 28 29 20 3c 20 31 2f 6e | 75 6d 20 29 0d 0a 09 09 |() < 1/n|um )....|
|00000800| 09 09 52 65 73 75 6c 74 | 20 3d 20 50 61 74 68 54 |..Result| = PathT|
|00000810| 61 67 5b 69 5d 3b 0d 0a | 09 09 7d 0d 0a 09 09 09 |ag[i];..|..}.....|
|00000820| 0d 0a 09 72 65 74 75 72 | 6e 20 52 65 73 75 6c 74 |...retur|n Result|
|00000830| 3b 0d 0a 7d 0d 0a 0d 0a | 66 75 6e 63 74 69 6f 6e |;..}....|function|
|00000840| 20 62 6f 6f 6c 20 48 61 | 73 50 61 74 68 54 61 67 | bool Ha|sPathTag|
|00000850| 28 6e 61 6d 65 20 61 50 | 61 74 68 54 61 67 29 0d |(name aP|athTag).|
|00000860| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 69 6e 74 20 69 |.{...loc|al int i|
|00000870| 3b 0d 0a 0d 0a 09 56 61 | 6c 69 64 61 74 65 50 61 |;.....Va|lidatePa|
|00000880| 74 68 54 61 67 73 28 29 | 3b 0d 0a 09 66 6f 72 20 |thTags()|;...for |
|00000890| 28 20 69 3d 30 3b 20 69 | 3c 34 3b 20 69 2b 2b 20 |( i=0; i|<4; i++ |
|000008a0| 29 0d 0a 09 09 69 66 20 | 28 20 50 61 74 68 54 61 |)....if |( PathTa|
|000008b0| 67 5b 69 5d 20 3d 3d 20 | 61 50 61 74 68 54 61 67 |g[i] == |aPathTag|
|000008c0| 20 29 0d 0a 09 09 09 72 | 65 74 75 72 6e 20 74 72 | ).....r|eturn tr|
|000008d0| 75 65 3b 0d 0a 0d 0a 09 | 72 65 74 75 72 6e 20 66 |ue;.....|return f|
|000008e0| 61 6c 73 65 3b 0d 0a 7d | 0d 0a 0d 0a 66 75 6e 63 |alse;..}|....func|
|000008f0| 74 69 6f 6e 20 41 73 73 | 61 75 6c 74 50 61 74 68 |tion Ass|aultPath|
|00000900| 20 46 69 6e 64 4e 65 78 | 74 50 61 74 68 28 6e 61 | FindNex|tPath(na|
|00000910| 6d 65 20 41 6c 74 65 72 | 6e 61 74 65 50 61 74 68 |me Alter|natePath|
|00000920| 54 61 67 29 0d 0a 7b 0d | 0a 09 6c 6f 63 61 6c 20 |Tag)..{.|..local |
|00000930| 41 73 73 61 75 6c 74 50 | 61 74 68 20 41 3b 0d 0a |AssaultP|ath A;..|
|00000940| 09 6c 6f 63 61 6c 20 41 | 73 73 61 75 6c 74 50 61 |.local A|ssaultPa|
|00000950| 74 68 20 4c 69 73 74 5b | 31 36 5d 3b 0d 0a 09 6c |th List[|16];...l|
|00000960| 6f 63 61 6c 20 69 6e 74 | 20 69 2c 6e 75 6d 3b 0d |ocal int| i,num;.|
|00000970| 0a 09 6c 6f 63 61 6c 20 | 66 6c 6f 61 74 20 73 75 |..local |float su|
|00000980| 6d 2c 72 3b 0d 0a 0d 0a | 09 66 6f 72 20 28 20 41 |m,r;....|.for ( A|
|00000990| 3d 41 73 73 6f 63 69 61 | 74 65 64 4f 62 6a 65 63 |=Associa|tedObjec|
|000009a0| 74 69 76 65 2e 41 6c 74 | 65 72 6e 61 74 65 50 61 |tive.Alt|ernatePa|
|000009b0| 74 68 73 3b 20 41 21 3d | 4e 6f 6e 65 3b 20 41 3d |ths; A!=|None; A=|
|000009c0| 41 2e 4e 65 78 74 50 61 | 74 68 20 29 0d 0a 09 7b |A.NextPa|th )...{|
|000009d0| 0d 0a 09 09 69 66 20 28 | 20 41 2e 62 45 6e 61 62 |....if (| A.bEnab|
|000009e0| 6c 65 64 20 26 26 20 28 | 41 2e 50 6f 73 69 74 69 |led && (|A.Positi|
|000009f0| 6f 6e 20 3e 20 50 6f 73 | 69 74 69 6f 6e 29 20 26 |on > Pos|ition) &|
|00000a00| 26 20 21 41 2e 62 52 65 | 74 75 72 6e 4f 6e 6c 79 |& !A.bRe|turnOnly|
|00000a10| 0d 0a 09 09 09 26 26 20 | 41 2e 48 61 73 50 61 74 |.....&& |A.HasPat|
|00000a20| 68 54 61 67 28 41 6c 74 | 65 72 6e 61 74 65 50 61 |hTag(Alt|ernatePa|
|00000a30| 74 68 54 61 67 29 20 29 | 0d 0a 09 09 7b 0d 0a 09 |thTag) )|....{...|
|00000a40| 09 09 69 66 20 28 20 28 | 4c 69 73 74 5b 30 5d 20 |..if ( (|List[0] |
|00000a50| 3d 3d 20 4e 6f 6e 65 29 | 20 7c 7c 20 28 41 2e 50 |== None)| || (A.P|
|00000a60| 6f 73 69 74 69 6f 6e 20 | 3c 20 4c 69 73 74 5b 30 |osition |< List[0|
|00000a70| 5d 2e 50 6f 73 69 74 69 | 6f 6e 29 20 29 0d 0a 09 |].Positi|on) )...|
|00000a80| 09 09 7b 0d 0a 09 09 09 | 09 66 6f 72 20 28 20 69 |..{.....|.for ( i|
|00000a90| 3d 30 3b 20 69 3c 6e 75 | 6d 3b 20 69 2b 2b 20 29 |=0; i<nu|m; i++ )|
|00000aa0| 0d 0a 09 09 09 09 09 4c | 69 73 74 5b 69 5d 20 3d |.......L|ist[i] =|
|00000ab0| 20 4e 6f 6e 65 3b 0d 0a | 09 09 09 09 4c 69 73 74 | None;..|....List|
|00000ac0| 5b 30 5d 20 3d 20 41 3b | 0d 0a 09 09 09 09 6e 75 |[0] = A;|......nu|
|00000ad0| 6d 20 3d 20 31 3b 0d 0a | 09 09 09 7d 0d 0a 09 09 |m = 1;..|...}....|
|00000ae0| 09 65 6c 73 65 20 69 66 | 20 28 20 41 2e 50 6f 73 |.else if| ( A.Pos|
|00000af0| 69 74 69 6f 6e 20 3d 3d | 20 4c 69 73 74 5b 30 5d |ition ==| List[0]|
|00000b00| 2e 50 6f 73 69 74 69 6f | 6e 20 29 0d 0a 09 09 09 |.Positio|n ).....|
|00000b10| 7b 0d 0a 09 09 09 09 4c | 69 73 74 5b 6e 75 6d 5d |{......L|ist[num]|
|00000b20| 20 3d 20 41 3b 0d 0a 09 | 09 09 09 6e 75 6d 2b 2b | = A;...|...num++|
|00000b30| 3b 0d 0a 09 09 09 09 69 | 66 20 28 20 6e 75 6d 20 |;......i|f ( num |
|00000b40| 3e 20 31 35 20 29 0d 0a | 09 09 09 09 09 62 72 65 |> 15 )..|.....bre|
|00000b50| 61 6b 3b 0d 0a 09 09 09 | 7d 0d 0a 09 09 7d 0d 0a |ak;.....|}....}..|
|00000b60| 09 7d 0d 0a 09 09 09 0d | 0a 09 69 66 20 28 20 6e |.}......|..if ( n|
|00000b70| 75 6d 20 3e 20 30 20 29 | 0d 0a 09 7b 0d 0a 09 09 |um > 0 )|...{....|
|00000b80| 66 6f 72 20 28 20 69 3d | 30 3b 20 69 3c 6e 75 6d |for ( i=|0; i<num|
|00000b90| 3b 20 69 2b 2b 20 29 0d | 0a 09 09 09 73 75 6d 20 |; i++ ).|....sum |
|00000ba0| 2b 3d 20 4c 69 73 74 5b | 69 5d 2e 50 72 69 6f 72 |+= List[|i].Prior|
|00000bb0| 69 74 79 3b 0d 0a 09 09 | 72 20 3d 20 46 52 61 6e |ity;....|r = FRan|
|00000bc0| 64 28 29 20 2a 20 73 75 | 6d 3b 0d 0a 09 09 73 75 |d() * su|m;....su|
|00000bd0| 6d 20 3d 20 30 3b 0d 0a | 09 09 66 6f 72 20 28 20 |m = 0;..|..for ( |
|00000be0| 69 3d 30 3b 20 69 3c 6e | 75 6d 3b 20 69 2b 2b 20 |i=0; i<n|um; i++ |
|00000bf0| 29 0d 0a 09 09 7b 0d 0a | 09 09 09 73 75 6d 20 2b |)....{..|...sum +|
|00000c00| 3d 20 4c 69 73 74 5b 69 | 5d 2e 50 72 69 6f 72 69 |= List[i|].Priori|
|00000c10| 74 79 3b 0d 0a 09 09 09 | 69 66 20 28 20 72 20 3c |ty;.....|if ( r <|
|00000c20| 3d 20 73 75 6d 20 29 0d | 0a 09 09 09 09 72 65 74 |= sum ).|.....ret|
|00000c30| 75 72 6e 20 4c 69 73 74 | 5b 69 5d 3b 0d 0a 09 09 |urn List|[i];....|
|00000c40| 7d 0d 0a 09 09 72 65 74 | 75 72 6e 20 4c 69 73 74 |}....ret|urn List|
|00000c50| 5b 30 5d 3b 0d 0a 09 7d | 0d 0a 09 72 65 74 75 72 |[0];...}|...retur|
|00000c60| 6e 20 6e 6f 6e 65 3b 0d | 0a 7d 0d 0a 0d 0a 66 75 |n none;.|.}....fu|
|00000c70| 6e 63 74 69 6f 6e 20 41 | 73 73 61 75 6c 74 50 61 |nction A|ssaultPa|
|00000c80| 74 68 20 46 69 6e 64 50 | 72 65 76 69 6f 75 73 50 |th FindP|reviousP|
|00000c90| 61 74 68 28 6e 61 6d 65 | 20 41 6c 74 65 72 6e 61 |ath(name| Alterna|
|00000ca0| 74 65 50 61 74 68 54 61 | 67 29 0d 0a 7b 0d 0a 09 |tePathTa|g)..{...|
|00000cb0| 6c 6f 63 61 6c 20 41 73 | 73 61 75 6c 74 50 61 74 |local As|saultPat|
|00000cc0| 68 20 41 3b 0d 0a 09 6c | 6f 63 61 6c 20 41 73 73 |h A;...l|ocal Ass|
|00000cd0| 61 75 6c 74 50 61 74 68 | 20 4c 69 73 74 5b 31 36 |aultPath| List[16|
|00000ce0| 5d 3b 0d 0a 09 6c 6f 63 | 61 6c 20 69 6e 74 20 69 |];...loc|al int i|
|00000cf0| 2c 6e 75 6d 3b 0d 0a 09 | 6c 6f 63 61 6c 20 66 6c |,num;...|local fl|
|00000d00| 6f 61 74 20 73 75 6d 2c | 72 3b 0d 0a 0d 0a 09 66 |oat sum,|r;.....f|
|00000d10| 6f 72 20 28 20 41 3d 41 | 73 73 6f 63 69 61 74 65 |or ( A=A|ssociate|
|00000d20| 64 4f 62 6a 65 63 74 69 | 76 65 2e 41 6c 74 65 72 |dObjecti|ve.Alter|
|00000d30| 6e 61 74 65 50 61 74 68 | 73 3b 20 41 21 3d 4e 6f |natePath|s; A!=No|
|00000d40| 6e 65 3b 20 41 3d 41 2e | 4e 65 78 74 50 61 74 68 |ne; A=A.|NextPath|
|00000d50| 20 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 20 41 | )...{..|..if ( A|
|00000d60| 2e 62 45 6e 61 62 6c 65 | 64 20 26 26 20 28 41 2e |.bEnable|d && (A.|
|00000d70| 50 6f 73 69 74 69 6f 6e | 20 3c 20 50 6f 73 69 74 |Position| < Posit|
|00000d80| 69 6f 6e 29 20 26 26 20 | 41 2e 48 61 73 50 61 74 |ion) && |A.HasPat|
|00000d90| 68 54 61 67 28 41 6c 74 | 65 72 6e 61 74 65 50 61 |hTag(Alt|ernatePa|
|00000da0| 74 68 54 61 67 29 20 26 | 26 20 21 41 2e 62 4e 6f |thTag) &|& !A.bNo|
|00000db0| 52 65 74 75 72 6e 20 29 | 0d 0a 09 09 7b 0d 0a 09 |Return )|....{...|
|00000dc0| 09 09 69 66 20 28 20 28 | 4c 69 73 74 5b 30 5d 20 |..if ( (|List[0] |
|00000dd0| 3d 3d 20 4e 6f 6e 65 29 | 20 7c 7c 20 28 41 2e 50 |== None)| || (A.P|
|00000de0| 6f 73 69 74 69 6f 6e 20 | 3d 3d 20 4c 69 73 74 5b |osition |== List[|
|00000df0| 30 5d 2e 50 6f 73 69 74 | 69 6f 6e 29 20 29 0d 0a |0].Posit|ion) )..|
|00000e00| 09 09 09 7b 0d 0a 09 09 | 09 09 4c 69 73 74 5b 6e |...{....|..List[n|
|00000e10| 75 6d 5d 20 3d 20 41 3b | 0d 0a 09 09 09 09 6e 75 |um] = A;|......nu|
|00000e20| 6d 2b 2b 3b 0d 0a 09 09 | 09 09 69 66 20 28 20 6e |m++;....|..if ( n|
|00000e30| 75 6d 20 3e 20 31 35 20 | 29 0d 0a 09 09 09 09 09 |um > 15 |).......|
|00000e40| 62 72 65 61 6b 3b 0d 0a | 09 09 09 7d 0d 0a 09 09 |break;..|...}....|
|00000e50| 09 65 6c 73 65 20 69 66 | 20 28 20 41 2e 50 6f 73 |.else if| ( A.Pos|
|00000e60| 69 74 69 6f 6e 20 3c 20 | 4c 69 73 74 5b 30 5d 2e |ition < |List[0].|
|00000e70| 50 6f 73 69 74 69 6f 6e | 20 29 0d 0a 09 09 09 09 |Position| )......|
|00000e80| 62 72 65 61 6b 3b 0d 0a | 09 09 7d 0d 0a 09 7d 0d |break;..|..}...}.|
|00000e90| 0a 0d 0a 09 69 66 20 28 | 20 6e 75 6d 20 3e 20 30 |....if (| num > 0|
|00000ea0| 20 29 0d 0a 09 7b 0d 0a | 09 09 66 6f 72 20 28 20 | )...{..|..for ( |
|00000eb0| 69 3d 30 3b 20 69 3c 6e | 75 6d 3b 20 69 2b 2b 20 |i=0; i<n|um; i++ |
|00000ec0| 29 0d 0a 09 09 09 73 75 | 6d 20 2b 3d 20 4c 69 73 |).....su|m += Lis|
|00000ed0| 74 5b 69 5d 2e 50 72 69 | 6f 72 69 74 79 3b 0d 0a |t[i].Pri|ority;..|
|00000ee0| 09 09 72 20 3d 20 46 52 | 61 6e 64 28 29 20 2a 20 |..r = FR|and() * |
|00000ef0| 73 75 6d 3b 0d 0a 09 09 | 73 75 6d 20 3d 20 30 3b |sum;....|sum = 0;|
|00000f00| 0d 0a 09 09 66 6f 72 20 | 28 20 69 3d 30 3b 20 69 |....for |( i=0; i|
|00000f10| 3c 6e 75 6d 3b 20 69 2b | 2b 20 29 0d 0a 09 09 7b |<num; i+|+ )....{|
|00000f20| 0d 0a 09 09 09 73 75 6d | 20 2b 3d 20 4c 69 73 74 |.....sum| += List|
|00000f30| 5b 69 5d 2e 50 72 69 6f | 72 69 74 79 3b 0d 0a 09 |[i].Prio|rity;...|
|00000f40| 09 09 69 66 20 28 20 72 | 20 3c 3d 20 73 75 6d 20 |..if ( r| <= sum |
|00000f50| 29 0d 0a 09 09 09 09 72 | 65 74 75 72 6e 20 4c 69 |)......r|eturn Li|
|00000f60| 73 74 5b 69 5d 3b 0d 0a | 09 09 7d 0d 0a 09 09 72 |st[i];..|..}....r|
|00000f70| 65 74 75 72 6e 20 4c 69 | 73 74 5b 30 5d 3b 0d 0a |eturn Li|st[0];..|
|00000f80| 09 7d 0d 0a 09 72 65 74 | 75 72 6e 20 6e 6f 6e 65 |.}...ret|urn none|
|00000f90| 3b 0d 0a 7d 0d 0a 0d 0a | 00 |;..}....|. |
+--------+-------------------------+-------------------------+--------+--------+