home *** CD-ROM | disk | FTP | other *** search
Unknown | 2004-05-10 | 10.7 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 | 50 aa 01 2f 2f 3d 3d 3d |........|P..//===|
|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 3d 0d 0a 2f 2f 09 |========|===..//.|
|00000060| 50 72 69 6d 61 72 79 20 | 56 6f 69 63 65 43 68 61 |Primary |VoiceCha|
|00000070| 74 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |tReplica|tionInfo|
|00000080| 20 66 6f 72 20 55 54 32 | 30 30 34 0d 0a 2f 2f 0d | for UT2|004..//.|
|00000090| 0a 2f 2f 09 43 72 65 61 | 74 65 64 20 62 79 20 52 |.//.Crea|ted by R|
|000000a0| 6f 6e 20 50 72 65 73 74 | 65 6e 62 61 63 6b 0d 0a |on Prest|enback..|
|000000b0| 2f 2f 09 a9 20 32 30 30 | 33 2c 20 45 70 69 63 20 |//.. 200|3, Epic |
|000000c0| 47 61 6d 65 73 2c 20 49 | 6e 63 2e 20 20 41 6c 6c |Games, I|nc. All|
|000000d0| 20 52 69 67 68 74 73 20 | 52 65 73 65 72 76 65 64 | Rights |Reserved|
|000000e0| 0d 0a 2f 2f 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..//====|========|
|000000f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000100| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000110| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000120| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000130| 3d 3d 0d 0a 63 6c 61 73 | 73 20 55 6e 72 65 61 6c |==..clas|s Unreal|
|00000140| 56 6f 69 63 65 52 65 70 | 6c 69 63 61 74 69 6f 6e |VoiceRep|lication|
|00000150| 49 6e 66 6f 20 65 78 74 | 65 6e 64 73 20 56 6f 69 |Info ext|ends Voi|
|00000160| 63 65 43 68 61 74 52 65 | 70 6c 69 63 61 74 69 6f |ceChatRe|plicatio|
|00000170| 6e 49 6e 66 6f 3b 0d 0a | 0d 0a 76 61 72 28 29 20 |nInfo;..|..var() |
|00000180| 63 6c 61 73 73 3c 55 6e | 72 65 61 6c 43 68 61 74 |class<Un|realChat|
|00000190| 48 61 6e 64 6c 65 72 3e | 20 09 43 68 61 74 42 72 |Handler>| .ChatBr|
|000001a0| 6f 61 64 63 61 73 74 43 | 6c 61 73 73 3b 0d 0a 76 |oadcastC|lass;..v|
|000001b0| 61 72 20 55 6e 72 65 61 | 6c 43 68 61 74 48 61 6e |ar Unrea|lChatHan|
|000001c0| 64 6c 65 72 20 20 20 20 | 20 20 20 20 20 20 20 43 |dler | C|
|000001d0| 68 61 74 42 72 6f 61 64 | 63 61 73 74 48 61 6e 64 |hatBroad|castHand|
|000001e0| 6c 65 72 3b 0d 0a 0d 0a | 73 69 6d 75 6c 61 74 65 |ler;....|simulate|
|000001f0| 64 20 66 75 6e 63 74 69 | 6f 6e 20 44 69 73 70 6c |d functi|on Displ|
|00000200| 61 79 44 65 62 75 67 28 | 43 61 6e 76 61 73 20 43 |ayDebug(|Canvas C|
|00000210| 61 6e 76 61 73 2c 20 6f | 75 74 20 66 6c 6f 61 74 |anvas, o|ut float|
|00000220| 20 59 4c 2c 20 6f 75 74 | 20 66 6c 6f 61 74 20 59 | YL, out| float Y|
|00000230| 50 6f 73 29 0d 0a 7b 0d | 0a 09 6c 6f 63 61 6c 20 |Pos)..{.|..local |
|00000240| 69 6e 74 20 69 2c 20 6a | 3b 0d 0a 09 6c 6f 63 61 |int i, j|;...loca|
|00000250| 6c 20 61 72 72 61 79 3c | 56 6f 69 63 65 43 68 61 |l array<|VoiceCha|
|00000260| 74 52 6f 6f 6d 3e 20 52 | 6f 6f 6d 73 3b 0d 0a 09 |tRoom> R|ooms;...|
|00000270| 6c 6f 63 61 6c 20 61 72 | 72 61 79 3c 50 6c 61 79 |local ar|ray<Play|
|00000280| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00000290| 6f 3e 20 4d 65 6d 62 65 | 72 73 3b 0d 0a 09 6c 6f |o> Membe|rs;...lo|
|000002a0| 63 61 6c 20 73 74 72 69 | 6e 67 20 54 65 61 6d 53 |cal stri|ng TeamS|
|000002b0| 74 72 69 6e 67 3b 0d 0a | 0d 0a 09 43 61 6e 76 61 |tring;..|...Canva|
|000002c0| 73 2e 53 65 74 44 72 61 | 77 43 6f 6c 6f 72 28 32 |s.SetDra|wColor(2|
|000002d0| 35 35 2c 32 32 30 2c 31 | 30 30 2c 32 33 30 29 3b |55,220,1|00,230);|
|000002e0| 0d 0a 09 43 61 6e 76 61 | 73 2e 44 72 61 77 54 65 |...Canva|s.DrawTe|
|000002f0| 78 74 28 22 56 4f 49 43 | 45 43 48 41 54 20 7c 20 |xt("VOIC|ECHAT | |
|00000300| 62 50 72 69 76 61 74 65 | 43 68 61 74 3a 22 24 62 |bPrivate|Chat:"$b|
|00000310| 50 72 69 76 61 74 65 43 | 68 61 74 29 3b 0d 0a 0d |PrivateC|hat);...|
|00000320| 0a 09 52 6f 6f 6d 73 20 | 3d 20 47 65 74 43 68 61 |..Rooms |= GetCha|
|00000330| 6e 6e 65 6c 73 28 29 3b | 0d 0a 09 66 6f 72 20 28 |nnels();|...for (|
|00000340| 69 20 3d 20 30 3b 20 69 | 20 3c 20 52 6f 6f 6d 73 |i = 0; i| < Rooms|
|00000350| 2e 4c 65 6e 67 74 68 3b | 20 69 2b 2b 29 0d 0a 09 |.Length;| i++)...|
|00000360| 7b 0d 0a 09 09 59 50 6f | 73 20 2b 3d 20 59 4c 3b |{....YPo|s += YL;|
|00000370| 0d 0a 09 09 43 61 6e 76 | 61 73 2e 53 65 74 50 6f |....Canv|as.SetPo|
|00000380| 73 28 34 2c 59 50 6f 73 | 29 3b 0d 0a 09 09 69 66 |s(4,YPos|);....if|
|00000390| 20 28 20 52 6f 6f 6d 73 | 5b 69 5d 20 21 3d 20 4e | ( Rooms|[i] != N|
|000003a0| 6f 6e 65 20 29 0d 0a 09 | 09 7b 0d 0a 09 09 09 4d |one )...|.{.....M|
|000003b0| 65 6d 62 65 72 73 20 3d | 20 52 6f 6f 6d 73 5b 69 |embers =| Rooms[i|
|000003c0| 5d 2e 47 65 74 4d 65 6d | 62 65 72 73 28 29 3b 0d |].GetMem|bers();.|
|000003d0| 0a 09 09 09 43 61 6e 76 | 61 73 2e 44 72 61 77 54 |....Canv|as.DrawT|
|000003e0| 65 78 74 28 22 20 4e 61 | 6d 65 3a 22 40 52 6f 6f |ext(" Na|me:"@Roo|
|000003f0| 6d 73 5b 69 5d 2e 47 65 | 74 54 69 74 6c 65 28 29 |ms[i].Ge|tTitle()|
|00000400| 40 22 4d 65 6d 62 65 72 | 73 3a 22 24 4d 65 6d 62 |@"Member|s:"$Memb|
|00000410| 65 72 73 2e 4c 65 6e 67 | 74 68 40 22 20 20 49 6e |ers.Leng|th@" In|
|00000420| 64 65 78 3a 22 24 52 6f | 6f 6d 73 5b 69 5d 2e 43 |dex:"$Ro|oms[i].C|
|00000430| 68 61 6e 6e 65 6c 49 6e | 64 65 78 40 22 20 54 65 |hannelIn|dex@" Te|
|00000440| 61 6d 3a 22 24 63 6c 61 | 73 73 27 54 65 61 6d 49 |am:"$cla|ss'TeamI|
|00000450| 6e 66 6f 27 2e 64 65 66 | 61 75 6c 74 2e 43 6f 6c |nfo'.def|ault.Col|
|00000460| 6f 72 4e 61 6d 65 73 5b | 52 6f 6f 6d 73 5b 69 5d |orNames[|Rooms[i]|
|00000470| 2e 47 65 74 54 65 61 6d | 28 29 5d 40 22 20 4d 61 |.GetTeam|()]@" Ma|
|00000480| 73 6b 3a 22 24 52 6f 6f | 6d 73 5b 69 5d 2e 47 65 |sk:"$Roo|ms[i].Ge|
|00000490| 74 4d 61 73 6b 28 29 40 | 22 20 50 3a 22 24 52 6f |tMask()@|" P:"$Ro|
|000004a0| 6f 6d 73 5b 69 5d 2e 49 | 73 50 75 62 6c 69 63 43 |oms[i].I|sPublicC|
|000004b0| 68 61 6e 6e 65 6c 28 29 | 40 22 20 54 3a 22 24 52 |hannel()|@" T:"$R|
|000004c0| 6f 6f 6d 73 5b 69 5d 2e | 49 73 54 65 61 6d 43 68 |ooms[i].|IsTeamCh|
|000004d0| 61 6e 6e 65 6c 28 29 29 | 3b 0d 0a 09 09 09 66 6f |annel())|;.....fo|
|000004e0| 72 20 28 6a 20 3d 20 30 | 3b 20 6a 20 3c 20 4d 65 |r (j = 0|; j < Me|
|000004f0| 6d 62 65 72 73 2e 4c 65 | 6e 67 74 68 3b 20 6a 2b |mbers.Le|ngth; j+|
|00000500| 2b 29 0d 0a 09 09 09 7b | 0d 0a 09 09 09 09 59 50 |+).....{|......YP|
|00000510| 6f 73 20 2b 3d 20 59 4c | 3b 0d 0a 09 09 09 09 43 |os += YL|;......C|
|00000520| 61 6e 76 61 73 2e 53 65 | 74 50 6f 73 28 34 2c 59 |anvas.Se|tPos(4,Y|
|00000530| 50 6f 73 29 3b 0d 0a 09 | 09 09 09 69 66 20 28 20 |Pos);...|...if ( |
|00000540| 4d 65 6d 62 65 72 73 5b | 6a 5d 2e 54 65 61 6d 20 |Members[|j].Team |
|00000550| 3d 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 09 09 09 |== None |).......|
|00000560| 54 65 61 6d 53 74 72 69 | 6e 67 20 3d 20 22 4e 6f |TeamStri|ng = "No|
|00000570| 6e 65 22 3b 0d 0a 09 09 | 09 09 65 6c 73 65 20 54 |ne";....|..else T|
|00000580| 65 61 6d 53 74 72 69 6e | 67 20 3d 20 63 6c 61 73 |eamStrin|g = clas|
|00000590| 73 27 54 65 61 6d 49 6e | 66 6f 27 2e 64 65 66 61 |s'TeamIn|fo'.defa|
|000005a0| 75 6c 74 2e 43 6f 6c 6f | 72 4e 61 6d 65 73 5b 4d |ult.Colo|rNames[M|
|000005b0| 65 6d 62 65 72 73 5b 6a | 5d 2e 54 65 61 6d 2e 54 |embers[j|].Team.T|
|000005c0| 65 61 6d 49 6e 64 65 78 | 5d 3b 0d 0a 09 09 09 09 |eamIndex|];......|
|000005d0| 43 61 6e 76 61 73 2e 44 | 72 61 77 54 65 78 74 28 |Canvas.D|rawText(|
|000005e0| 22 20 20 20 20 20 20 20 | 20 20 20 22 24 4d 65 6d |" | "$Mem|
|000005f0| 62 65 72 73 5b 6a 5d 2e | 50 6c 61 79 65 72 4e 61 |bers[j].|PlayerNa|
|00000600| 6d 65 40 22 49 44 3a 22 | 24 4d 65 6d 62 65 72 73 |me@"ID:"|$Members|
|00000610| 5b 6a 5d 2e 50 6c 61 79 | 65 72 49 44 40 22 4d 61 |[j].Play|erID@"Ma|
|00000620| 73 6b 3a 22 24 4d 65 6d | 62 65 72 73 5b 6a 5d 2e |sk:"$Mem|bers[j].|
|00000630| 56 6f 69 63 65 49 44 40 | 22 54 65 61 6d 3a 22 24 |VoiceID@|"Team:"$|
|00000640| 54 65 61 6d 53 74 72 69 | 6e 67 29 3b 0d 0a 09 09 |TeamStri|ng);....|
|00000650| 09 7d 0d 0a 09 09 7d 0d | 0a 0d 0a 09 09 65 6c 73 |.}....}.|.....els|
|00000660| 65 0d 0a 09 09 7b 0d 0a | 09 09 09 43 61 6e 76 61 |e....{..|...Canva|
|00000670| 73 2e 44 72 61 77 54 65 | 78 74 28 22 43 48 41 4e |s.DrawTe|xt("CHAN|
|00000680| 4e 45 4c 22 40 69 40 22 | 49 53 20 4e 4f 4e 45 21 |NEL"@i@"|IS NONE!|
|00000690| 22 29 3b 0d 0a 09 09 7d | 0d 0a 09 7d 0d 0a 0d 0a |");....}|...}....|
|000006a0| 09 59 50 6f 73 20 2b 3d | 20 59 4c 3b 0d 0a 09 43 |.YPos +=| YL;...C|
|000006b0| 61 6e 76 61 73 2e 53 65 | 74 50 6f 73 28 34 2c 59 |anvas.Se|tPos(4,Y|
|000006c0| 50 6f 73 29 3b 0d 0a 7d | 0d 0a 0d 0a 65 76 65 6e |Pos);..}|....even|
|000006d0| 74 20 50 6f 73 74 42 65 | 67 69 6e 50 6c 61 79 28 |t PostBe|ginPlay(|
|000006e0| 29 0d 0a 7b 0d 0a 09 53 | 75 70 65 72 2e 50 6f 73 |)..{...S|uper.Pos|
|000006f0| 74 42 65 67 69 6e 50 6c | 61 79 28 29 3b 0d 0a 0d |tBeginPl|ay();...|
|00000700| 0a 09 69 66 20 28 20 43 | 68 61 74 42 72 6f 61 64 |..if ( C|hatBroad|
|00000710| 63 61 73 74 43 6c 61 73 | 73 20 21 3d 20 4e 6f 6e |castClas|s != Non|
|00000720| 65 20 29 0d 0a 09 09 43 | 68 61 74 42 72 6f 61 64 |e )....C|hatBroad|
|00000730| 63 61 73 74 48 61 6e 64 | 6c 65 72 20 3d 20 53 70 |castHand|ler = Sp|
|00000740| 61 77 6e 28 43 68 61 74 | 42 72 6f 61 64 63 61 73 |awn(Chat|Broadcas|
|00000750| 74 43 6c 61 73 73 29 3b | 0d 0a 0d 0a 09 65 6c 73 |tClass);|.....els|
|00000760| 65 20 43 68 61 74 42 72 | 6f 61 64 63 61 73 74 48 |e ChatBr|oadcastH|
|00000770| 61 6e 64 6c 65 72 20 3d | 20 53 70 61 77 6e 28 63 |andler =| Spawn(c|
|00000780| 6c 61 73 73 27 55 6e 72 | 65 61 6c 43 68 61 74 48 |lass'Unr|ealChatH|
|00000790| 61 6e 64 6c 65 72 27 29 | 3b 0d 0a 09 69 66 20 28 |andler')|;...if (|
|000007a0| 20 4c 65 76 65 6c 2e 47 | 61 6d 65 2e 42 72 6f 61 | Level.G|ame.Broa|
|000007b0| 64 63 61 73 74 48 61 6e | 64 6c 65 72 20 21 3d 20 |dcastHan|dler != |
|000007c0| 4e 6f 6e 65 20 29 0d 0a | 09 09 4c 65 76 65 6c 2e |None )..|..Level.|
|000007d0| 47 61 6d 65 2e 42 72 6f | 61 64 63 61 73 74 48 61 |Game.Bro|adcastHa|
|000007e0| 6e 64 6c 65 72 2e 52 65 | 67 69 73 74 65 72 42 72 |ndler.Re|gisterBr|
|000007f0| 6f 61 64 63 61 73 74 48 | 61 6e 64 6c 65 72 28 43 |oadcastH|andler(C|
|00000800| 68 61 74 42 72 6f 61 64 | 63 61 73 74 48 61 6e 64 |hatBroad|castHand|
|00000810| 6c 65 72 29 3b 0d 0a 7d | 0d 0a 0d 0a 73 69 6d 75 |ler);..}|....simu|
|00000820| 6c 61 74 65 64 20 65 76 | 65 6e 74 20 50 6f 73 74 |lated ev|ent Post|
|00000830| 4e 65 74 42 65 67 69 6e | 50 6c 61 79 28 29 0d 0a |NetBegin|Play()..|
|00000840| 7b 0d 0a 09 6c 6f 63 61 | 6c 20 50 6c 61 79 65 72 |{...loca|l Player|
|00000850| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 20 |Replicat|ionInfo |
|00000860| 50 52 49 3b 0d 0a 0d 0a | 09 6c 6f 67 28 4e 61 6d |PRI;....|.log(Nam|
|00000870| 65 40 22 5f 5f 5f 5f 5f | 5f 5f 5f 5f 5f 5f 5f 5f |e@"_____|________|
|00000880| 5f 5f 5f 5f 5f 5f 50 6f | 73 74 4e 65 74 42 65 67 |______Po|stNetBeg|
|00000890| 69 6e 50 6c 61 79 22 2c | 27 56 6f 69 63 65 43 68 |inPlay",|'VoiceCh|
|000008a0| 61 74 27 29 3b 0d 0a 09 | 53 75 70 65 72 2e 50 6f |at');...|Super.Po|
|000008b0| 73 74 4e 65 74 42 65 67 | 69 6e 50 6c 61 79 28 29 |stNetBeg|inPlay()|
|000008c0| 3b 0d 0a 0d 0a 09 66 6f | 72 65 61 63 68 20 44 79 |;.....fo|reach Dy|
|000008d0| 6e 61 6d 69 63 41 63 74 | 6f 72 73 28 63 6c 61 73 |namicAct|ors(clas|
|000008e0| 73 27 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |s'Player|Replicat|
|000008f0| 69 6f 6e 49 6e 66 6f 27 | 2c 20 50 52 49 29 0d 0a |ionInfo'|, PRI)..|
|00000900| 09 09 50 52 49 2e 56 6f | 69 63 65 49 6e 66 6f 20 |..PRI.Vo|iceInfo |
|00000910| 3d 20 53 65 6c 66 3b 0d | 0a 7d 0d 0a 0d 0a 73 69 |= Self;.|.}....si|
|00000920| 6d 75 6c 61 74 65 64 20 | 65 76 65 6e 74 20 53 65 |mulated |event Se|
|00000930| 74 47 52 49 28 47 61 6d | 65 52 65 70 6c 69 63 61 |tGRI(Gam|eReplica|
|00000940| 74 69 6f 6e 49 6e 66 6f | 20 4e 65 77 47 52 49 29 |tionInfo| NewGRI)|
|00000950| 0d 0a 7b 0d 0a 09 2f 2f | 20 53 65 74 47 52 49 20 |..{...//| SetGRI |
|00000960| 69 73 20 63 61 6c 6c 65 | 64 20 61 74 20 74 68 65 |is calle|d at the|
|00000970| 20 65 6e 64 20 6f 66 20 | 47 61 6d 65 52 65 70 6c | end of |GameRepl|
|00000980| 69 63 61 74 69 6f 6e 49 | 6e 66 6f 2e 50 6f 73 74 |icationI|nfo.Post|
|00000990| 4e 65 74 42 65 67 69 6e | 50 6c 61 79 28 29 0d 0a |NetBegin|Play()..|
|000009a0| 09 47 52 49 20 3d 20 4e | 65 77 47 52 49 3b 0d 0a |.GRI = N|ewGRI;..|
|000009b0| 09 47 52 49 2e 56 6f 69 | 63 65 52 65 70 6c 69 63 |.GRI.Voi|ceReplic|
|000009c0| 61 74 69 6f 6e 49 6e 66 | 6f 20 3d 20 53 65 6c 66 |ationInf|o = Self|
|000009d0| 3b 0d 0a 7d 0d 0a 0d 0a | 73 69 6d 75 6c 61 74 65 |;..}....|simulate|
|000009e0| 64 20 66 75 6e 63 74 69 | 6f 6e 20 49 6e 69 74 43 |d functi|on InitC|
|000009f0| 68 61 6e 6e 65 6c 73 28 | 29 0d 0a 7b 0d 0a 09 6c |hannels(|)..{...l|
|00000a00| 6f 63 61 6c 20 56 6f 69 | 63 65 43 68 61 74 52 6f |ocal Voi|ceChatRo|
|00000a10| 6f 6d 20 56 43 52 3b 0d | 0a 0d 0a 09 53 75 70 65 |om VCR;.|....Supe|
|00000a20| 72 2e 49 6e 69 74 43 68 | 61 6e 6e 65 6c 73 28 29 |r.InitCh|annels()|
|00000a30| 3b 0d 0a 0d 0a 09 2f 2f | 20 41 64 64 20 50 75 62 |;.....//| Add Pub|
|00000a40| 6c 69 63 20 63 68 61 6e | 6e 65 6c 0d 0a 09 41 64 |lic chan|nel...Ad|
|00000a50| 64 56 6f 69 63 65 43 68 | 61 6e 6e 65 6c 28 29 3b |dVoiceCh|annel();|
|00000a60| 0d 0a 09 69 66 20 28 20 | 62 41 6c 6c 6f 77 4c 6f |...if ( |bAllowLo|
|00000a70| 63 61 6c 42 72 6f 61 64 | 63 61 73 74 20 29 0d 0a |calBroad|cast )..|
|00000a80| 09 7b 0d 0a 09 09 2f 2f | 20 41 64 64 20 4c 6f 63 |.{....//| Add Loc|
|00000a90| 61 6c 20 63 68 61 6e 6e | 65 6c 0d 0a 09 09 56 43 |al chann|el....VC|
|00000aa0| 52 20 3d 20 41 64 64 56 | 6f 69 63 65 43 68 61 6e |R = AddV|oiceChan|
|00000ab0| 6e 65 6c 28 29 3b 0d 0a | 09 09 56 43 52 2e 62 4c |nel();..|..VCR.bL|
|00000ac0| 6f 63 61 6c 20 3d 20 54 | 72 75 65 3b 0d 0a 09 7d |ocal = T|rue;...}|
|00000ad0| 0d 0a 7d 0d 0a 0d 0a 73 | 69 6d 75 6c 61 74 65 64 |..}....s|imulated|
|00000ae0| 20 66 75 6e 63 74 69 6f | 6e 20 41 64 64 56 6f 69 | functio|n AddVoi|
|00000af0| 63 65 43 68 61 74 74 65 | 72 28 50 6c 61 79 65 72 |ceChatte|r(Player|
|00000b00| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 20 |Replicat|ionInfo |
|00000b10| 4e 65 77 50 52 49 29 0d | 0a 7b 0d 0a 09 69 66 20 |NewPRI).|.{...if |
|00000b20| 28 20 4e 65 77 50 52 49 | 20 3d 3d 20 4e 6f 6e 65 |( NewPRI| == None|
|00000b30| 20 29 0d 0a 09 7b 0d 0a | 09 09 6c 6f 67 28 22 41 | )...{..|..log("A|
|00000b40| 64 64 56 6f 69 63 65 43 | 68 61 74 74 65 72 28 29 |ddVoiceC|hatter()|
|00000b50| 20 6e 6f 74 20 65 78 65 | 63 75 74 69 6e 67 3a 20 | not exe|cuting: |
|00000b60| 4e 65 77 50 52 49 20 69 | 73 20 4e 4f 4e 45 21 22 |NewPRI i|s NONE!"|
|00000b70| 2c 27 56 6f 69 63 65 43 | 68 61 74 27 29 3b 0d 0a |,'VoiceC|hat');..|
|00000b80| 09 09 72 65 74 75 72 6e | 3b 0d 0a 09 7d 0d 0a 0d |..return|;...}...|
|00000b90| 0a 0d 0a 09 69 66 20 28 | 21 62 45 6e 61 62 6c 65 |....if (|!bEnable|
|00000ba0| 56 6f 69 63 65 43 68 61 | 74 20 7c 7c 20 4e 65 77 |VoiceCha|t || New|
|00000bb0| 50 52 49 2e 62 4f 6e 6c | 79 53 70 65 63 74 61 74 |PRI.bOnl|ySpectat|
|00000bc0| 6f 72 20 7c 7c 20 4e 65 | 77 50 52 49 2e 62 42 6f |or || Ne|wPRI.bBo|
|00000bd0| 74 20 7c 7c 20 28 4e 65 | 77 50 52 49 2e 4f 77 6e |t || (Ne|wPRI.Own|
|00000be0| 65 72 20 21 3d 20 4e 6f | 6e 65 20 26 26 20 55 6e |er != No|ne && Un|
|00000bf0| 72 65 61 6c 50 6c 61 79 | 65 72 28 4e 65 77 50 52 |realPlay|er(NewPR|
|00000c00| 49 2e 4f 77 6e 65 72 29 | 20 3d 3d 20 4e 6f 6e 65 |I.Owner)| == None|
|00000c10| 29 20 29 0d 0a 09 09 72 | 65 74 75 72 6e 3b 0d 0a |) )....r|eturn;..|
|00000c20| 0d 0a 09 6c 6f 67 28 22 | 41 64 64 56 6f 69 63 65 |...log("|AddVoice|
|00000c30| 43 68 61 74 74 65 72 3a | 22 24 4e 65 77 50 52 49 |Chatter:|"$NewPRI|
|00000c40| 40 4e 65 77 50 52 49 2e | 50 6c 61 79 65 72 4e 61 |@NewPRI.|PlayerNa|
|00000c50| 6d 65 40 4e 65 77 50 52 | 49 2e 56 6f 69 63 65 49 |me@NewPR|I.VoiceI|
|00000c60| 44 2c 27 56 6f 69 63 65 | 43 68 61 74 27 29 3b 0d |D,'Voice|Chat');.|
|00000c70| 0a 09 41 64 64 56 6f 69 | 63 65 43 68 61 6e 6e 65 |..AddVoi|ceChanne|
|00000c80| 6c 28 4e 65 77 50 52 49 | 29 3b 0d 0a 7d 0d 0a 73 |l(NewPRI|);..}..s|
|00000c90| 69 6d 75 6c 61 74 65 64 | 20 66 75 6e 63 74 69 6f |imulated| functio|
|00000ca0| 6e 20 52 65 6d 6f 76 65 | 56 6f 69 63 65 43 68 61 |n Remove|VoiceCha|
|00000cb0| 74 74 65 72 28 50 6c 61 | 79 65 72 52 65 70 6c 69 |tter(Pla|yerRepli|
|00000cc0| 63 61 74 69 6f 6e 49 6e | 66 6f 20 50 52 49 29 0d |cationIn|fo PRI).|
|00000cd0| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 50 6c 61 79 65 |.{...loc|al Playe|
|00000ce0| 72 43 6f 6e 74 72 6f 6c | 6c 65 72 20 50 43 3b 0d |rControl|ler PC;.|
|00000cf0| 0a 09 69 66 20 28 50 52 | 49 20 3d 3d 20 4e 6f 6e |..if (PR|I == Non|
|00000d00| 65 29 0d 0a 09 09 72 65 | 74 75 72 6e 3b 0d 0a 0d |e)....re|turn;...|
|00000d10| 0a 09 6c 6f 67 28 22 52 | 65 6d 6f 76 65 56 6f 69 |..log("R|emoveVoi|
|00000d20| 63 65 43 68 61 74 74 65 | 72 3a 22 24 50 52 49 40 |ceChatte|r:"$PRI@|
|00000d30| 50 52 49 2e 50 6c 61 79 | 65 72 4e 61 6d 65 2c 27 |PRI.Play|erName,'|
|00000d40| 56 6f 69 63 65 43 68 61 | 74 27 29 3b 0d 0a 0d 0a |VoiceCha|t');....|
|00000d50| 09 2f 2f 20 50 6c 61 79 | 65 72 20 6c 6f 67 67 69 |.// Play|er loggi|
|00000d60| 6e 67 20 6f 75 74 20 2d | 20 72 65 6d 6f 76 65 20 |ng out -| remove |
|00000d70| 74 68 65 69 72 20 62 61 | 6e 20 74 72 61 63 6b 69 |their ba|n tracki|
|00000d80| 6e 67 20 69 6e 66 6f 72 | 6d 61 74 69 6f 6e 20 61 |ng infor|mation a|
|00000d90| 6e 64 20 74 68 65 69 72 | 20 70 65 72 73 6f 6e 61 |nd their| persona|
|00000da0| 6c 20 63 68 61 74 20 63 | 68 61 6e 6e 65 6c 0d 0a |l chat c|hannel..|
|00000db0| 09 69 66 20 28 20 52 6f | 6c 65 20 3c 20 52 4f 4c |.if ( Ro|le < ROL|
|00000dc0| 45 5f 41 75 74 68 6f 72 | 69 74 79 20 29 0d 0a 09 |E_Author|ity )...|
|00000dd0| 7b 0d 0a 09 09 50 43 20 | 3d 20 4c 65 76 65 6c 2e |{....PC |= Level.|
|00000de0| 47 65 74 4c 6f 63 61 6c | 50 6c 61 79 65 72 43 6f |GetLocal|PlayerCo|
|00000df0| 6e 74 72 6f 6c 6c 65 72 | 28 29 3b 0d 0a 09 09 69 |ntroller|();....i|
|00000e00| 66 20 28 20 50 43 20 21 | 3d 20 4e 6f 6e 65 20 26 |f ( PC !|= None &|
|00000e10| 26 20 50 43 2e 43 68 61 | 74 4d 61 6e 61 67 65 72 |& PC.Cha|tManager|
|00000e20| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 09 50 | != None| ).....P|
|00000e30| 43 2e 43 68 61 74 4d 61 | 6e 61 67 65 72 2e 55 6e |C.ChatMa|nager.Un|
|00000e40| 74 72 61 63 6b 50 6c 61 | 79 65 72 28 50 52 49 2e |trackPla|yer(PRI.|
|00000e50| 50 6c 61 79 65 72 49 44 | 29 3b 0d 0a 09 7d 0d 0a |PlayerID|);...}..|
|00000e60| 0d 0a 09 52 65 6d 6f 76 | 65 56 6f 69 63 65 43 68 |...Remov|eVoiceCh|
|00000e70| 61 6e 6e 65 6c 28 50 52 | 49 29 3b 0d 0a 7d 0d 0a |annel(PR|I);..}..|
|00000e80| 0d 0a 73 69 6d 75 6c 61 | 74 65 64 20 66 75 6e 63 |..simula|ted func|
|00000e90| 74 69 6f 6e 20 62 6f 6f | 6c 20 43 61 6e 4a 6f 69 |tion boo|l CanJoi|
|00000ea0| 6e 43 68 61 6e 6e 65 6c | 28 73 74 72 69 6e 67 20 |nChannel|(string |
|00000eb0| 43 68 61 6e 6e 65 6c 54 | 69 74 6c 65 2c 20 50 6c |ChannelT|itle, Pl|
|00000ec0| 61 79 65 72 52 65 70 6c | 69 63 61 74 69 6f 6e 49 |ayerRepl|icationI|
|00000ed0| 6e 66 6f 20 50 52 49 29 | 0d 0a 7b 0d 0a 09 6c 6f |nfo PRI)|..{...lo|
|00000ee0| 63 61 6c 20 56 6f 69 63 | 65 43 68 61 74 52 6f 6f |cal Voic|eChatRoo|
|00000ef0| 6d 20 56 43 52 3b 0d 0a | 09 6c 6f 63 61 6c 20 69 |m VCR;..|.local i|
|00000f00| 6e 74 20 69 3b 0d 0a 0d | 0a 09 69 66 20 28 20 50 |nt i;...|..if ( P|
|00000f10| 52 49 20 21 3d 20 4e 6f | 6e 65 20 26 26 20 50 52 |RI != No|ne && PR|
|00000f20| 49 2e 54 65 61 6d 20 21 | 3d 20 4e 6f 6e 65 29 0d |I.Team !|= None).|
|00000f30| 0a 09 09 69 20 3d 20 50 | 52 49 2e 54 65 61 6d 2e |...i = P|RI.Team.|
|00000f40| 54 65 61 6d 49 6e 64 65 | 78 3b 0d 0a 0d 0a 09 56 |TeamInde|x;.....V|
|00000f50| 43 52 20 3d 20 47 65 74 | 43 68 61 6e 6e 65 6c 28 |CR = Get|Channel(|
|00000f60| 43 68 61 6e 6e 65 6c 54 | 69 74 6c 65 2c 20 69 29 |ChannelT|itle, i)|
|00000f70| 3b 0d 0a 09 69 66 20 28 | 56 43 52 20 3d 3d 20 4e |;...if (|VCR == N|
|00000f80| 6f 6e 65 29 0d 0a 09 09 | 72 65 74 75 72 6e 20 66 |one)....|return f|
|00000f90| 61 6c 73 65 3b 0d 0a 0d | 0a 09 72 65 74 75 72 6e |alse;...|..return|
|00000fa0| 20 56 43 52 2e 43 61 6e | 4a 6f 69 6e 43 68 61 6e | VCR.Can|JoinChan|
|00000fb0| 6e 65 6c 28 50 52 49 29 | 3b 0d 0a 7d 0d 0a 0d 0a |nel(PRI)|;..}....|
|00000fc0| 2f 2f 20 4a 6f 69 6e 73 | 20 2f 20 4c 65 61 76 65 |// Joins| / Leave|
|00000fd0| 73 0d 0a 66 75 6e 63 74 | 69 6f 6e 20 56 6f 69 63 |s..funct|ion Voic|
|00000fe0| 65 43 68 61 74 52 6f 6f | 6d 2e 45 4a 6f 69 6e 43 |eChatRoo|m.EJoinC|
|00000ff0| 68 61 74 52 65 73 75 6c | 74 20 4a 6f 69 6e 43 68 |hatResul|t JoinCh|
|00001000| 61 6e 6e 65 6c 28 73 74 | 72 69 6e 67 20 43 68 61 |annel(st|ring Cha|
|00001010| 6e 6e 65 6c 54 69 74 6c | 65 2c 20 50 6c 61 79 65 |nnelTitl|e, Playe|
|00001020| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00001030| 20 50 52 49 2c 20 73 74 | 72 69 6e 67 20 50 61 73 | PRI, st|ring Pas|
|00001040| 73 77 6f 72 64 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |sword)..|{...loca|
|00001050| 6c 20 56 6f 69 63 65 43 | 68 61 74 52 6f 6f 6d 20 |l VoiceC|hatRoom |
|00001060| 56 43 52 3b 0d 0a 09 6c | 6f 63 61 6c 20 69 6e 74 |VCR;...l|ocal int|
|00001070| 20 69 3b 0d 0a 0d 0a 09 | 69 66 20 28 50 52 49 20 | i;.....|if (PRI |
|00001080| 21 3d 20 4e 6f 6e 65 20 | 26 26 20 50 52 49 2e 54 |!= None |&& PRI.T|
|00001090| 65 61 6d 20 21 3d 20 4e | 6f 6e 65 29 0d 0a 09 09 |eam != N|one)....|
|000010a0| 69 20 3d 20 50 52 49 2e | 54 65 61 6d 2e 54 65 61 |i = PRI.|Team.Tea|
|000010b0| 6d 49 6e 64 65 78 3b 0d | 0a 0d 0a 09 56 43 52 20 |mIndex;.|....VCR |
|000010c0| 3d 20 47 65 74 43 68 61 | 6e 6e 65 6c 28 43 68 61 |= GetCha|nnel(Cha|
|000010d0| 6e 6e 65 6c 54 69 74 6c | 65 2c 20 69 29 3b 0d 0a |nnelTitl|e, i);..|
|000010e0| 09 69 66 20 28 56 43 52 | 20 3d 3d 20 4e 6f 6e 65 |.if (VCR| == None|
|000010f0| 29 0d 0a 09 09 72 65 74 | 75 72 6e 20 4a 43 52 5f |)....ret|urn JCR_|
|00001100| 49 6e 76 61 6c 69 64 3b | 0d 0a 0d 0a 09 72 65 74 |Invalid;|.....ret|
|00001110| 75 72 6e 20 56 43 52 2e | 4a 6f 69 6e 43 68 61 6e |urn VCR.|JoinChan|
|00001120| 6e 65 6c 28 50 52 49 2c | 20 50 61 73 73 77 6f 72 |nel(PRI,| Passwor|
|00001130| 64 29 3b 0d 0a 7d 0d 0a | 66 75 6e 63 74 69 6f 6e |d);..}..|function|
|00001140| 20 56 6f 69 63 65 43 68 | 61 74 52 6f 6f 6d 2e 45 | VoiceCh|atRoom.E|
|00001150| 4a 6f 69 6e 43 68 61 74 | 52 65 73 75 6c 74 20 4a |JoinChat|Result J|
|00001160| 6f 69 6e 43 68 61 6e 6e | 65 6c 41 74 28 69 6e 74 |oinChann|elAt(int|
|00001170| 20 43 68 61 6e 6e 65 6c | 49 6e 64 65 78 2c 20 50 | Channel|Index, P|
|00001180| 6c 61 79 65 72 52 65 70 | 6c 69 63 61 74 69 6f 6e |layerRep|lication|
|00001190| 49 6e 66 6f 20 50 52 49 | 2c 20 73 74 72 69 6e 67 |Info PRI|, string|
|000011a0| 20 50 61 73 73 77 6f 72 | 64 29 0d 0a 7b 0d 0a 09 | Passwor|d)..{...|
|000011b0| 6c 6f 63 61 6c 20 56 6f | 69 63 65 43 68 61 74 52 |local Vo|iceChatR|
|000011c0| 6f 6f 6d 20 56 43 52 3b | 0d 0a 0d 0a 09 56 43 52 |oom VCR;|.....VCR|
|000011d0| 20 3d 20 47 65 74 43 68 | 61 6e 6e 65 6c 41 74 28 | = GetCh|annelAt(|
|000011e0| 43 68 61 6e 6e 65 6c 49 | 6e 64 65 78 29 3b 0d 0a |ChannelI|ndex);..|
|000011f0| 09 69 66 20 28 20 56 43 | 52 20 3d 3d 20 4e 6f 6e |.if ( VC|R == Non|
|00001200| 65 20 29 0d 0a 09 09 72 | 65 74 75 72 6e 20 4a 43 |e )....r|eturn JC|
|00001210| 52 5f 49 6e 76 61 6c 69 | 64 3b 0d 0a 0d 0a 09 72 |R_Invali|d;.....r|
|00001220| 65 74 75 72 6e 20 56 43 | 52 2e 4a 6f 69 6e 43 68 |eturn VC|R.JoinCh|
|00001230| 61 6e 6e 65 6c 28 50 52 | 49 2c 20 50 61 73 73 77 |annel(PR|I, Passw|
|00001240| 6f 72 64 29 3b 0d 0a 7d | 0d 0a 66 75 6e 63 74 69 |ord);..}|..functi|
|00001250| 6f 6e 20 62 6f 6f 6c 20 | 4c 65 61 76 65 43 68 61 |on bool |LeaveCha|
|00001260| 6e 6e 65 6c 28 73 74 72 | 69 6e 67 20 43 68 61 6e |nnel(str|ing Chan|
|00001270| 6e 65 6c 54 69 74 6c 65 | 2c 20 50 6c 61 79 65 72 |nelTitle|, Player|
|00001280| 52 65 70 6c 69 63 61 74 | 69 6f 6e 49 6e 66 6f 20 |Replicat|ionInfo |
|00001290| 50 52 49 29 0d 0a 7b 0d | 0a 09 6c 6f 63 61 6c 20 |PRI)..{.|..local |
|000012a0| 56 6f 69 63 65 43 68 61 | 74 52 6f 6f 6d 20 56 43 |VoiceCha|tRoom VC|
|000012b0| 52 3b 0d 0a 09 6c 6f 63 | 61 6c 20 69 6e 74 20 69 |R;...loc|al int i|
|000012c0| 3b 0d 0a 0d 0a 09 69 66 | 20 28 50 52 49 20 21 3d |;.....if| (PRI !=|
|000012d0| 20 4e 6f 6e 65 20 26 26 | 20 50 52 49 2e 54 65 61 | None &&| PRI.Tea|
|000012e0| 6d 20 21 3d 20 4e 6f 6e | 65 29 0d 0a 09 09 69 20 |m != Non|e)....i |
|000012f0| 3d 20 50 52 49 2e 54 65 | 61 6d 2e 54 65 61 6d 49 |= PRI.Te|am.TeamI|
|00001300| 6e 64 65 78 3b 0d 0a 0d | 0a 09 56 43 52 20 3d 20 |ndex;...|..VCR = |
|00001310| 47 65 74 43 68 61 6e 6e | 65 6c 28 43 68 61 6e 6e |GetChann|el(Chann|
|00001320| 65 6c 54 69 74 6c 65 2c | 20 69 29 3b 0d 0a 09 72 |elTitle,| i);...r|
|00001330| 65 74 75 72 6e 20 56 43 | 52 2e 4c 65 61 76 65 43 |eturn VC|R.LeaveC|
|00001340| 68 61 6e 6e 65 6c 28 50 | 52 49 29 3b 0d 0a 7d 0d |hannel(P|RI);..}.|
|00001350| 0a 0d 0a 2f 2f 20 43 68 | 61 6e 6e 65 6c 20 6d 61 |...// Ch|annel ma|
|00001360| 6e 61 67 65 6d 65 6e 74 | 0d 0a 2f 2f 20 70 6c 61 |nagement|..// pla|
|00001370| 79 65 72 20 6a 6f 69 6e | 65 64 20 2d 20 63 72 65 |yer join|ed - cre|
|00001380| 61 74 65 20 61 20 70 72 | 69 76 61 74 65 20 63 68 |ate a pr|ivate ch|
|00001390| 61 74 72 6f 6f 6d 20 66 | 6f 72 20 74 68 61 74 20 |atroom f|or that |
|000013a0| 70 6c 61 79 65 72 0d 0a | 2f 2f 20 4d 75 73 74 20 |player..|// Must |
|000013b0| 68 61 70 70 65 6e 20 61 | 66 74 65 72 20 50 52 49 |happen a|fter PRI|
|000013c0| 2e 50 6c 61 79 65 72 49 | 44 20 68 61 73 20 62 65 |.PlayerI|D has be|
|000013d0| 65 6e 20 61 73 73 69 67 | 6e 65 64 20 61 6e 64 20 |en assig|ned and |
|000013e0| 72 65 70 6c 69 63 61 74 | 65 64 0d 0a 73 69 6d 75 |replicat|ed..simu|
|000013f0| 6c 61 74 65 64 20 66 75 | 6e 63 74 69 6f 6e 20 56 |lated fu|nction V|
|00001400| 6f 69 63 65 43 68 61 74 | 52 6f 6f 6d 20 41 64 64 |oiceChat|Room Add|
|00001410| 56 6f 69 63 65 43 68 61 | 6e 6e 65 6c 28 6f 70 74 |VoiceCha|nnel(opt|
|00001420| 69 6f 6e 61 6c 20 50 6c | 61 79 65 72 52 65 70 6c |ional Pl|ayerRepl|
|00001430| 69 63 61 74 69 6f 6e 49 | 6e 66 6f 20 50 52 49 29 |icationI|nfo PRI)|
|00001440| 0d 0a 7b 0d 0a 09 6c 6f | 63 61 6c 20 69 6e 74 20 |..{...lo|cal int |
|00001450| 69 2c 20 63 6e 74 3b 0d | 0a 09 6c 6f 63 61 6c 20 |i, cnt;.|..local |
|00001460| 56 6f 69 63 65 43 68 61 | 74 52 6f 6f 6d 20 56 43 |VoiceCha|tRoom VC|
|00001470| 52 3b 0d 0a 0d 0a 09 6c | 6f 67 28 4e 61 6d 65 40 |R;.....l|og(Name@|
|00001480| 22 41 64 64 56 6f 69 63 | 65 43 68 61 6e 6e 65 6c |"AddVoic|eChannel|
|00001490| 20 50 52 49 3a 22 24 50 | 52 49 2c 27 56 6f 69 63 | PRI:"$P|RI,'Voic|
|000014a0| 65 43 68 61 74 27 29 3b | 0d 0a 09 56 43 52 20 3d |eChat');|...VCR =|
|000014b0| 20 43 72 65 61 74 65 4e | 65 77 56 6f 69 63 65 43 | CreateN|ewVoiceC|
|000014c0| 68 61 6e 6e 65 6c 28 50 | 52 49 29 3b 0d 0a 09 69 |hannel(P|RI);...i|
|000014d0| 66 20 28 56 43 52 20 21 | 3d 20 4e 6f 6e 65 29 0d |f (VCR !|= None).|
|000014e0| 0a 09 7b 0d 0a 09 09 56 | 43 52 2e 56 6f 69 63 65 |..{....V|CR.Voice|
|000014f0| 43 68 61 74 4d 61 6e 61 | 67 65 72 20 3d 20 53 65 |ChatMana|ger = Se|
|00001500| 6c 66 3b 0d 0a 09 09 69 | 20 3d 20 43 68 61 6e 6e |lf;....i| = Chann|
|00001510| 65 6c 73 2e 4c 65 6e 67 | 74 68 3b 0d 0a 09 09 63 |els.Leng|th;....c|
|00001520| 6e 74 20 3d 20 47 65 74 | 50 75 62 6c 69 63 43 68 |nt = Get|PublicCh|
|00001530| 61 6e 6e 65 6c 43 6f 75 | 6e 74 28 29 3b 0d 0a 09 |annelCou|nt();...|
|00001540| 09 69 66 20 28 50 52 49 | 20 3d 3d 20 4e 6f 6e 65 |.if (PRI| == None|
|00001550| 29 0d 0a 09 09 09 56 43 | 52 2e 43 68 61 6e 6e 65 |).....VC|R.Channe|
|00001560| 6c 49 6e 64 65 78 20 3d | 20 69 3b 0d 0a 09 09 65 |lIndex =| i;....e|
|00001570| 6c 73 65 0d 0a 09 09 7b | 0d 0a 09 09 09 56 43 52 |lse....{|.....VCR|
|00001580| 2e 43 68 61 6e 6e 65 6c | 49 6e 64 65 78 20 3d 20 |.Channel|Index = |
|00001590| 63 6e 74 20 2b 20 50 52 | 49 2e 50 6c 61 79 65 72 |cnt + PR|I.Player|
|000015a0| 49 44 3b 0d 0a 09 09 09 | 50 52 49 2e 50 72 69 76 |ID;.....|PRI.Priv|
|000015b0| 61 74 65 43 68 61 74 52 | 6f 6f 6d 20 3d 20 56 43 |ateChatR|oom = VC|
|000015c0| 52 3b 0d 0a 0d 0a 09 09 | 09 2f 2f 20 4f 77 6e 65 |R;......|.// Owne|
|000015d0| 72 20 6f 66 20 74 68 65 | 20 63 68 61 6e 6e 65 6c |r of the| channel|
|000015e0| 20 69 73 20 61 6c 77 61 | 79 73 20 61 20 6d 65 6d | is alwa|ys a mem|
|000015f0| 62 65 72 0d 0a 09 09 09 | 56 43 52 2e 41 64 64 4d |ber.....|VCR.AddM|
|00001600| 65 6d 62 65 72 28 50 52 | 49 29 3b 0d 0a 09 09 7d |ember(PR|I);....}|
|00001610| 0d 0a 0d 0a 09 09 66 6f | 72 20 28 20 69 20 3d 20 |......fo|r ( i = |
|00001620| 30 3b 20 69 20 3c 20 43 | 68 61 6e 6e 65 6c 73 2e |0; i < C|hannels.|
|00001630| 4c 65 6e 67 74 68 3b 20 | 69 2b 2b 20 29 0d 0a 09 |Length; |i++ )...|
|00001640| 09 09 69 66 20 28 20 43 | 68 61 6e 6e 65 6c 73 5b |..if ( C|hannels[|
|00001650| 69 5d 20 21 3d 20 4e 6f | 6e 65 20 26 26 20 43 68 |i] != No|ne && Ch|
|00001660| 61 6e 6e 65 6c 73 5b 69 | 5d 2e 43 68 61 6e 6e 65 |annels[i|].Channe|
|00001670| 6c 49 6e 64 65 78 20 3e | 20 56 43 52 2e 43 68 61 |lIndex >| VCR.Cha|
|00001680| 6e 6e 65 6c 49 6e 64 65 | 78 20 29 0d 0a 09 09 09 |nnelInde|x ).....|
|00001690| 09 62 72 65 61 6b 3b 0d | 0a 0d 0a 09 09 43 68 61 |.break;.|.....Cha|
|000016a0| 6e 6e 65 6c 73 2e 49 6e | 73 65 72 74 28 69 2c 20 |nnels.In|sert(i, |
|000016b0| 31 29 3b 0d 0a 09 09 43 | 68 61 6e 6e 65 6c 73 5b |1);....C|hannels[|
|000016c0| 69 5d 20 3d 20 56 43 52 | 3b 0d 0a 09 7d 0d 0a 0d |i] = VCR|;...}...|
|000016d0| 0a 09 72 65 74 75 72 6e | 20 56 43 52 3b 0d 0a 7d |..return| VCR;..}|
|000016e0| 0d 0a 2f 2f 20 70 6c 61 | 79 65 72 20 6c 65 66 74 |..// pla|yer left|
|000016f0| 20 2d 20 64 65 73 74 72 | 6f 79 20 74 68 65 20 70 | - destr|oy the p|
|00001700| 72 69 76 61 74 65 20 63 | 68 61 74 72 6f 6f 6d 20 |rivate c|hatroom |
|00001710| 66 6f 72 20 74 68 61 74 | 20 70 6c 61 79 65 72 0d |for that| player.|
|00001720| 0a 73 69 6d 75 6c 61 74 | 65 64 20 66 75 6e 63 74 |.simulat|ed funct|
|00001730| 69 6f 6e 20 62 6f 6f 6c | 09 52 65 6d 6f 76 65 56 |ion bool|.RemoveV|
|00001740| 6f 69 63 65 43 68 61 6e | 6e 65 6c 28 50 6c 61 79 |oiceChan|nel(Play|
|00001750| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00001760| 6f 20 50 52 49 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |o PRI)..|{...loca|
|00001770| 6c 20 56 6f 69 63 65 43 | 68 61 74 52 6f 6f 6d 20 |l VoiceC|hatRoom |
|00001780| 56 43 52 3b 0d 0a 09 6c | 6f 63 61 6c 20 69 6e 74 |VCR;...l|ocal int|
|00001790| 20 69 3b 0d 0a 0d 0a 09 | 69 66 20 28 20 50 52 49 | i;.....|if ( PRI|
|000017a0| 20 21 3d 20 4e 6f 6e 65 | 20 26 26 20 52 6f 6c 65 | != None| && Role|
|000017b0| 20 3d 3d 20 52 4f 4c 45 | 5f 41 75 74 68 6f 72 69 | == ROLE|_Authori|
|000017c0| 74 79 20 29 0d 0a 09 09 | 50 52 49 2e 41 63 74 69 |ty )....|PRI.Acti|
|000017d0| 76 65 43 68 61 6e 6e 65 | 6c 20 3d 20 2d 31 3b 0d |veChanne|l = -1;.|
|000017e0| 0a 0d 0a 09 2f 2f 20 52 | 65 6d 6f 76 65 20 74 68 |....// R|emove th|
|000017f0| 69 73 20 50 52 49 20 66 | 72 6f 6d 20 61 6c 6c 20 |is PRI f|rom all |
|00001800| 63 68 61 6e 6e 65 6c 73 | 20 74 68 61 74 20 74 68 |channels| that th|
|00001810| 65 79 20 77 65 72 65 20 | 61 20 6d 65 6d 62 65 72 |ey were |a member|
|00001820| 20 6f 66 0d 0a 09 66 6f | 72 20 28 69 20 3d 20 43 | of...fo|r (i = C|
|00001830| 68 61 6e 6e 65 6c 73 2e | 4c 65 6e 67 74 68 20 2d |hannels.|Length -|
|00001840| 20 31 3b 20 69 20 3e 3d | 20 30 3b 20 69 2d 2d 29 | 1; i >=| 0; i--)|
|00001850| 0d 0a 09 7b 0d 0a 09 09 | 69 66 20 28 43 68 61 6e |...{....|if (Chan|
|00001860| 6e 65 6c 73 5b 69 5d 20 | 21 3d 20 4e 6f 6e 65 29 |nels[i] |!= None)|
|00001870| 0d 0a 09 09 7b 0d 0a 09 | 09 09 69 66 20 28 43 68 |....{...|..if (Ch|
|00001880| 61 6e 6e 65 6c 73 5b 69 | 5d 2e 4f 77 6e 65 72 20 |annels[i|].Owner |
|00001890| 3d 3d 20 50 52 49 29 0d | 0a 09 09 09 7b 0d 0a 09 |== PRI).|....{...|
|000018a0| 09 09 09 56 43 52 20 3d | 20 43 68 61 6e 6e 65 6c |...VCR =| Channel|
|000018b0| 73 5b 69 5d 3b 0d 0a 09 | 09 09 09 43 68 61 6e 6e |s[i];...|...Chann|
|000018c0| 65 6c 73 2e 52 65 6d 6f | 76 65 28 69 2c 31 29 3b |els.Remo|ve(i,1);|
|000018d0| 0d 0a 09 09 09 7d 0d 0a | 0d 0a 09 09 09 65 6c 73 |.....}..|.....els|
|000018e0| 65 20 43 68 61 6e 6e 65 | 6c 73 5b 69 5d 2e 52 65 |e Channe|ls[i].Re|
|000018f0| 6d 6f 76 65 4d 65 6d 62 | 65 72 28 50 52 49 29 3b |moveMemb|er(PRI);|
|00001900| 0d 0a 09 09 7d 0d 0a 0d | 0a 09 09 65 6c 73 65 20 |....}...|...else |
|00001910| 43 68 61 6e 6e 65 6c 73 | 2e 52 65 6d 6f 76 65 28 |Channels|.Remove(|
|00001920| 69 2c 31 29 3b 0d 0a 09 | 7d 0d 0a 0d 0a 09 2f 2f |i,1);...|}.....//|
|00001930| 20 61 6c 72 65 61 64 79 | 20 64 65 73 74 72 6f 79 | already| destroy|
|00001940| 65 64 0d 0a 09 69 66 20 | 28 56 43 52 20 3d 3d 20 |ed...if |(VCR == |
|00001950| 4e 6f 6e 65 29 0d 0a 09 | 09 72 65 74 75 72 6e 20 |None)...|.return |
|00001960| 53 75 70 65 72 2e 52 65 | 6d 6f 76 65 56 6f 69 63 |Super.Re|moveVoic|
|00001970| 65 43 68 61 6e 6e 65 6c | 28 50 52 49 29 3b 0d 0a |eChannel|(PRI);..|
|00001980| 0d 0a 09 44 65 73 74 72 | 6f 79 56 6f 69 63 65 43 |...Destr|oyVoiceC|
|00001990| 68 61 6e 6e 65 6c 28 56 | 43 52 29 3b 0d 0a 09 72 |hannel(V|CR);...r|
|000019a0| 65 74 75 72 6e 20 53 75 | 70 65 72 2e 52 65 6d 6f |eturn Su|per.Remo|
|000019b0| 76 65 56 6f 69 63 65 43 | 68 61 6e 6e 65 6c 28 50 |veVoiceC|hannel(P|
|000019c0| 52 49 29 3b 0d 0a 7d 0d | 0a 0d 0a 2f 2f 20 51 75 |RI);..}.|...// Qu|
|000019d0| 65 72 79 20 46 75 6e 63 | 74 69 6f 6e 73 0d 0a 2f |ery Func|tions../|
|000019e0| 2f 20 72 65 74 75 72 6e | 20 61 20 73 69 6e 67 6c |/ return| a singl|
|000019f0| 65 20 63 68 61 74 20 72 | 6f 6f 6d 0d 0a 73 69 6d |e chat r|oom..sim|
|00001a00| 75 6c 61 74 65 64 20 66 | 75 6e 63 74 69 6f 6e 20 |ulated f|unction |
|00001a10| 56 6f 69 63 65 43 68 61 | 74 52 6f 6f 6d 20 47 65 |VoiceCha|tRoom Ge|
|00001a20| 74 43 68 61 6e 6e 65 6c | 28 73 74 72 69 6e 67 20 |tChannel|(string |
|00001a30| 43 68 61 74 52 6f 6f 6d | 4e 61 6d 65 2c 20 6f 70 |ChatRoom|Name, op|
|00001a40| 74 69 6f 6e 61 6c 20 69 | 6e 74 20 54 65 61 6d 49 |tional i|nt TeamI|
|00001a50| 6e 64 65 78 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |ndex)..{|...local|
|00001a60| 20 69 6e 74 20 69 3b 0d | 0a 0d 0a 09 66 6f 72 20 | int i;.|....for |
|00001a70| 28 69 20 3d 20 30 3b 20 | 69 20 3c 20 43 68 61 6e |(i = 0; |i < Chan|
|00001a80| 6e 65 6c 73 2e 4c 65 6e | 67 74 68 3b 20 69 2b 2b |nels.Len|gth; i++|
|00001a90| 29 0d 0a 09 09 69 66 20 | 28 43 68 61 6e 6e 65 6c |)....if |(Channel|
|00001aa0| 73 5b 69 5d 20 21 3d 20 | 4e 6f 6e 65 20 26 26 20 |s[i] != |None && |
|00001ab0| 43 68 61 6e 6e 65 6c 73 | 5b 69 5d 2e 47 65 74 54 |Channels|[i].GetT|
|00001ac0| 69 74 6c 65 28 29 20 7e | 3d 20 43 68 61 74 52 6f |itle() ~|= ChatRo|
|00001ad0| 6f 6d 4e 61 6d 65 20 26 | 26 20 43 68 61 6e 6e 65 |omName &|& Channe|
|00001ae0| 6c 73 5b 69 5d 2e 4f 77 | 6e 65 72 20 21 3d 20 4e |ls[i].Ow|ner != N|
|00001af0| 6f 6e 65 29 0d 0a 09 09 | 09 72 65 74 75 72 6e 20 |one)....|.return |
|00001b00| 43 68 61 6e 6e 65 6c 73 | 5b 69 5d 3b 0d 0a 0d 0a |Channels|[i];....|
|00001b10| 09 72 65 74 75 72 6e 20 | 53 75 70 65 72 2e 47 65 |.return |Super.Ge|
|00001b20| 74 43 68 61 6e 6e 65 6c | 28 43 68 61 74 52 6f 6f |tChannel|(ChatRoo|
|00001b30| 6d 4e 61 6d 65 2c 20 54 | 65 61 6d 49 6e 64 65 78 |mName, T|eamIndex|
|00001b40| 29 3b 0d 0a 7d 0d 0a 73 | 69 6d 75 6c 61 74 65 64 |);..}..s|imulated|
|00001b50| 20 66 75 6e 63 74 69 6f | 6e 20 56 6f 69 63 65 43 | functio|n VoiceC|
|00001b60| 68 61 74 52 6f 6f 6d 20 | 47 65 74 43 68 61 6e 6e |hatRoom |GetChann|
|00001b70| 65 6c 41 74 28 69 6e 74 | 20 49 6e 64 65 78 29 0d |elAt(int| Index).|
|00001b80| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 69 6e 74 20 69 |.{...loc|al int i|
|00001b90| 3b 0d 0a 0d 0a 09 69 66 | 20 28 20 49 6e 64 65 78 |;.....if| ( Index|
|00001ba0| 20 3c 20 30 20 29 0d 0a | 09 09 72 65 74 75 72 6e | < 0 )..|..return|
|00001bb0| 20 4e 6f 6e 65 3b 0d 0a | 0d 0a 09 66 6f 72 20 28 | None;..|...for (|
|00001bc0| 69 20 3d 20 30 3b 20 69 | 20 3c 20 43 68 61 6e 6e |i = 0; i| < Chann|
|00001bd0| 65 6c 73 2e 4c 65 6e 67 | 74 68 3b 20 69 2b 2b 29 |els.Leng|th; i++)|
|00001be0| 0d 0a 09 09 69 66 20 28 | 43 68 61 6e 6e 65 6c 73 |....if (|Channels|
|00001bf0| 5b 69 5d 20 21 3d 20 4e | 6f 6e 65 20 26 26 20 43 |[i] != N|one && C|
|00001c00| 68 61 6e 6e 65 6c 73 5b | 69 5d 2e 43 68 61 6e 6e |hannels[|i].Chann|
|00001c10| 65 6c 49 6e 64 65 78 20 | 3d 3d 20 49 6e 64 65 78 |elIndex |== Index|
|00001c20| 20 26 26 20 43 68 61 6e | 6e 65 6c 73 5b 69 5d 2e | && Chan|nels[i].|
|00001c30| 4f 77 6e 65 72 20 21 3d | 20 4e 6f 6e 65 29 0d 0a |Owner !=| None)..|
|00001c40| 09 09 09 72 65 74 75 72 | 6e 20 43 68 61 6e 6e 65 |...retur|n Channe|
|00001c50| 6c 73 5b 69 5d 3b 0d 0a | 0d 0a 09 72 65 74 75 72 |ls[i];..|...retur|
|00001c60| 6e 20 53 75 70 65 72 2e | 47 65 74 43 68 61 6e 6e |n Super.|GetChann|
|00001c70| 65 6c 41 74 28 49 6e 64 | 65 78 29 3b 0d 0a 7d 0d |elAt(Ind|ex);..}.|
|00001c80| 0a 73 69 6d 75 6c 61 74 | 65 64 20 66 75 6e 63 74 |.simulat|ed funct|
|00001c90| 69 6f 6e 20 61 72 72 61 | 79 3c 69 6e 74 3e 20 47 |ion arra|y<int> G|
|00001ca0| 65 74 43 68 61 6e 6e 65 | 6c 4d 65 6d 62 65 72 73 |etChanne|lMembers|
|00001cb0| 28 73 74 72 69 6e 67 20 | 43 68 61 74 52 6f 6f 6d |(string |ChatRoom|
|00001cc0| 4e 61 6d 65 2c 20 6f 70 | 74 69 6f 6e 61 6c 20 69 |Name, op|tional i|
|00001cd0| 6e 74 20 54 65 61 6d 49 | 6e 64 65 78 29 0d 0a 7b |nt TeamI|ndex)..{|
|00001ce0| 0d 0a 09 6c 6f 63 61 6c | 20 56 6f 69 63 65 43 68 |...local| VoiceCh|
|00001cf0| 61 74 52 6f 6f 6d 20 52 | 6f 6f 6d 3b 0d 0a 09 6c |atRoom R|oom;...l|
|00001d00| 6f 63 61 6c 20 61 72 72 | 61 79 3c 50 6c 61 79 65 |ocal arr|ay<Playe|
|00001d10| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00001d20| 3e 20 4d 65 6d 62 65 72 | 73 3b 0d 0a 09 6c 6f 63 |> Member|s;...loc|
|00001d30| 61 6c 20 61 72 72 61 79 | 3c 69 6e 74 3e 20 4d 65 |al array|<int> Me|
|00001d40| 6d 62 65 72 49 64 73 3b | 0d 0a 09 6c 6f 63 61 6c |mberIds;|...local|
|00001d50| 20 69 6e 74 20 69 3b 0d | 0a 0d 0a 09 52 6f 6f 6d | int i;.|....Room|
|00001d60| 20 3d 20 47 65 74 43 68 | 61 6e 6e 65 6c 28 43 68 | = GetCh|annel(Ch|
|00001d70| 61 74 52 6f 6f 6d 4e 61 | 6d 65 2c 20 54 65 61 6d |atRoomNa|me, Team|
|00001d80| 49 6e 64 65 78 29 3b 0d | 0a 0d 0a 09 69 66 20 28 |Index);.|....if (|
|00001d90| 52 6f 6f 6d 20 21 3d 20 | 4e 6f 6e 65 29 0d 0a 09 |Room != |None)...|
|00001da0| 7b 0d 0a 09 09 4d 65 6d | 62 65 72 73 20 3d 20 52 |{....Mem|bers = R|
|00001db0| 6f 6f 6d 2e 47 65 74 4d | 65 6d 62 65 72 73 28 29 |oom.GetM|embers()|
|00001dc0| 3b 0d 0a 09 09 4d 65 6d | 62 65 72 49 64 73 2e 4c |;....Mem|berIds.L|
|00001dd0| 65 6e 67 74 68 20 3d 20 | 4d 65 6d 62 65 72 73 2e |ength = |Members.|
|00001de0| 4c 65 6e 67 74 68 3b 0d | 0a 09 09 66 6f 72 20 28 |Length;.|...for (|
|00001df0| 69 20 3d 20 30 3b 20 69 | 20 3c 20 4d 65 6d 62 65 |i = 0; i| < Membe|
|00001e00| 72 73 2e 4c 65 6e 67 74 | 68 3b 20 69 2b 2b 29 0d |rs.Lengt|h; i++).|
|00001e10| 0a 09 09 7b 0d 0a 09 09 | 09 69 66 20 28 20 4d 65 |...{....|.if ( Me|
|00001e20| 6d 62 65 72 73 5b 69 5d | 20 21 3d 20 4e 6f 6e 65 |mbers[i]| != None|
|00001e30| 20 29 0d 0a 09 09 09 09 | 4d 65 6d 62 65 72 49 64 | )......|MemberId|
|00001e40| 73 5b 69 5d 20 3d 20 4d | 65 6d 62 65 72 73 5b 69 |s[i] = M|embers[i|
|00001e50| 5d 2e 50 6c 61 79 65 72 | 49 44 3b 0d 0a 09 09 7d |].Player|ID;....}|
|00001e60| 0d 0a 09 7d 0d 0a 0d 0a | 09 72 65 74 75 72 6e 20 |...}....|.return |
|00001e70| 4d 65 6d 62 65 72 49 64 | 73 3b 0d 0a 7d 0d 0a 73 |MemberId|s;..}..s|
|00001e80| 69 6d 75 6c 61 74 65 64 | 20 66 75 6e 63 74 69 6f |imulated| functio|
|00001e90| 6e 20 61 72 72 61 79 3c | 69 6e 74 3e 20 47 65 74 |n array<|int> Get|
|00001ea0| 43 68 61 6e 6e 65 6c 4d | 65 6d 62 65 72 73 41 74 |ChannelM|embersAt|
|00001eb0| 28 69 6e 74 20 49 6e 64 | 65 78 29 0d 0a 7b 0d 0a |(int Ind|ex)..{..|
|00001ec0| 09 6c 6f 63 61 6c 20 56 | 6f 69 63 65 43 68 61 74 |.local V|oiceChat|
|00001ed0| 52 6f 6f 6d 20 52 6f 6f | 6d 3b 0d 0a 09 6c 6f 63 |Room Roo|m;...loc|
|00001ee0| 61 6c 20 61 72 72 61 79 | 3c 50 6c 61 79 65 72 52 |al array|<PlayerR|
|00001ef0| 65 70 6c 69 63 61 74 69 | 6f 6e 49 6e 66 6f 3e 20 |eplicati|onInfo> |
|00001f00| 4d 65 6d 62 65 72 73 3b | 0d 0a 09 6c 6f 63 61 6c |Members;|...local|
|00001f10| 20 61 72 72 61 79 3c 69 | 6e 74 3e 20 4d 65 6d 62 | array<i|nt> Memb|
|00001f20| 65 72 49 64 73 3b 0d 0a | 09 6c 6f 63 61 6c 20 69 |erIds;..|.local i|
|00001f30| 6e 74 20 69 3b 0d 0a 0d | 0a 09 52 6f 6f 6d 20 3d |nt i;...|..Room =|
|00001f40| 20 47 65 74 43 68 61 6e | 6e 65 6c 41 74 28 49 6e | GetChan|nelAt(In|
|00001f50| 64 65 78 29 3b 0d 0a 09 | 69 66 20 28 52 6f 6f 6d |dex);...|if (Room|
|00001f60| 20 21 3d 20 4e 6f 6e 65 | 29 0d 0a 09 7b 0d 0a 09 | != None|)...{...|
|00001f70| 09 4d 65 6d 62 65 72 73 | 20 3d 20 52 6f 6f 6d 2e |.Members| = Room.|
|00001f80| 47 65 74 4d 65 6d 62 65 | 72 73 28 29 3b 0d 0a 09 |GetMembe|rs();...|
|00001f90| 09 4d 65 6d 62 65 72 49 | 64 73 2e 4c 65 6e 67 74 |.MemberI|ds.Lengt|
|00001fa0| 68 20 3d 20 4d 65 6d 62 | 65 72 73 2e 4c 65 6e 67 |h = Memb|ers.Leng|
|00001fb0| 74 68 3b 0d 0a 09 09 66 | 6f 72 20 28 69 20 3d 20 |th;....f|or (i = |
|00001fc0| 30 3b 20 69 20 3c 20 4d | 65 6d 62 65 72 73 2e 4c |0; i < M|embers.L|
|00001fd0| 65 6e 67 74 68 3b 20 69 | 2b 2b 29 0d 0a 09 09 7b |ength; i|++)....{|
|00001fe0| 0d 0a 09 09 09 69 66 20 | 28 20 4d 65 6d 62 65 72 |.....if |( Member|
|00001ff0| 73 5b 69 5d 20 21 3d 20 | 4e 6f 6e 65 20 29 0d 0a |s[i] != |None )..|
|00002000| 09 09 09 09 4d 65 6d 62 | 65 72 49 64 73 5b 69 5d |....Memb|erIds[i]|
|00002010| 20 3d 20 4d 65 6d 62 65 | 72 73 5b 69 5d 2e 50 6c | = Membe|rs[i].Pl|
|00002020| 61 79 65 72 49 44 3b 0d | 0a 09 09 7d 0d 0a 09 7d |ayerID;.|...}...}|
|00002030| 0d 0a 0d 0a 09 72 65 74 | 75 72 6e 20 4d 65 6d 62 |.....ret|urn Memb|
|00002040| 65 72 49 64 73 3b 0d 0a | 7d 0d 0a 0d 0a 73 69 6d |erIds;..|}....sim|
|00002050| 75 6c 61 74 65 64 20 66 | 75 6e 63 74 69 6f 6e 20 |ulated f|unction |
|00002060| 61 72 72 61 79 3c 69 6e | 74 3e 20 47 65 74 4d 65 |array<in|t> GetMe|
|00002070| 6d 62 65 72 43 68 61 6e | 6e 65 6c 73 28 50 6c 61 |mberChan|nels(Pla|
|00002080| 79 65 72 52 65 70 6c 69 | 63 61 74 69 6f 6e 49 6e |yerRepli|cationIn|
|00002090| 66 6f 20 50 52 49 29 0d | 0a 7b 0d 0a 09 6c 6f 63 |fo PRI).|.{...loc|
|000020a0| 61 6c 20 61 72 72 61 79 | 3c 69 6e 74 3e 20 43 68 |al array|<int> Ch|
|000020b0| 61 6e 6e 65 6c 49 6e 64 | 65 78 41 72 72 61 79 3b |annelInd|exArray;|
|000020c0| 0d 0a 09 6c 6f 63 61 6c | 20 69 6e 74 20 69 3b 0d |...local| int i;.|
|000020d0| 0a 0d 0a 09 66 6f 72 20 | 28 20 69 20 3d 20 30 3b |....for |( i = 0;|
|000020e0| 20 69 20 3c 20 43 68 61 | 6e 6e 65 6c 73 2e 4c 65 | i < Cha|nnels.Le|
|000020f0| 6e 67 74 68 3b 20 69 2b | 2b 20 29 0d 0a 09 09 69 |ngth; i+|+ )....i|
|00002100| 66 20 28 20 43 68 61 6e | 6e 65 6c 73 5b 69 5d 20 |f ( Chan|nels[i] |
|00002110| 21 3d 20 4e 6f 6e 65 20 | 26 26 20 43 68 61 6e 6e |!= None |&& Chann|
|00002120| 65 6c 73 5b 69 5d 2e 49 | 73 4d 65 6d 62 65 72 28 |els[i].I|sMember(|
|00002130| 50 52 49 29 20 29 0d 0a | 09 09 09 43 68 61 6e 6e |PRI) )..|...Chann|
|00002140| 65 6c 49 6e 64 65 78 41 | 72 72 61 79 5b 43 68 61 |elIndexA|rray[Cha|
|00002150| 6e 6e 65 6c 49 6e 64 65 | 78 41 72 72 61 79 2e 4c |nnelInde|xArray.L|
|00002160| 65 6e 67 74 68 5d 20 3d | 20 43 68 61 6e 6e 65 6c |ength] =| Channel|
|00002170| 73 5b 69 5d 2e 43 68 61 | 6e 6e 65 6c 49 6e 64 65 |s[i].Cha|nnelInde|
|00002180| 78 3b 0d 0a 0d 0a 09 72 | 65 74 75 72 6e 20 43 68 |x;.....r|eturn Ch|
|00002190| 61 6e 6e 65 6c 49 6e 64 | 65 78 41 72 72 61 79 3b |annelInd|exArray;|
|000021a0| 0d 0a 7d 0d 0a 0d 0a 73 | 69 6d 75 6c 61 74 65 64 |..}....s|imulated|
|000021b0| 20 66 75 6e 63 74 69 6f | 6e 20 61 72 72 61 79 3c | functio|n array<|
|000021c0| 56 6f 69 63 65 43 68 61 | 74 52 6f 6f 6d 3e 20 47 |VoiceCha|tRoom> G|
|000021d0| 65 74 43 68 61 6e 6e 65 | 6c 73 28 29 0d 0a 7b 0d |etChanne|ls()..{.|
|000021e0| 0a 09 72 65 74 75 72 6e | 20 43 68 61 6e 6e 65 6c |..return| Channel|
|000021f0| 73 3b 0d 0a 7d 0d 0a 73 | 69 6d 75 6c 61 74 65 64 |s;..}..s|imulated|
|00002200| 20 65 76 65 6e 74 20 69 | 6e 74 20 47 65 74 43 68 | event i|nt GetCh|
|00002210| 61 6e 6e 65 6c 43 6f 75 | 6e 74 28 29 0d 0a 7b 0d |annelCou|nt()..{.|
|00002220| 0a 09 72 65 74 75 72 6e | 20 43 68 61 6e 6e 65 6c |..return| Channel|
|00002230| 73 2e 4c 65 6e 67 74 68 | 3b 0d 0a 7d 0d 0a 73 69 |s.Length|;..}..si|
|00002240| 6d 75 6c 61 74 65 64 20 | 65 76 65 6e 74 20 69 6e |mulated |event in|
|00002250| 74 20 47 65 74 43 68 61 | 6e 6e 65 6c 49 6e 64 65 |t GetCha|nnelInde|
|00002260| 78 28 73 74 72 69 6e 67 | 20 43 68 61 6e 6e 65 6c |x(string| Channel|
|00002270| 54 69 74 6c 65 2c 20 6f | 70 74 69 6f 6e 61 6c 20 |Title, o|ptional |
|00002280| 69 6e 74 20 54 65 61 6d | 49 6e 64 65 78 29 0d 0a |int Team|Index)..|
|00002290| 7b 0d 0a 09 6c 6f 63 61 | 6c 20 69 6e 74 20 69 3b |{...loca|l int i;|
|000022a0| 0d 0a 0d 0a 09 66 6f 72 | 20 28 69 20 3d 20 30 3b |.....for| (i = 0;|
|000022b0| 20 69 20 3c 20 43 68 61 | 6e 6e 65 6c 73 2e 4c 65 | i < Cha|nnels.Le|
|000022c0| 6e 67 74 68 3b 20 69 2b | 2b 29 0d 0a 09 09 69 66 |ngth; i+|+)....if|
|000022d0| 20 28 43 68 61 6e 6e 65 | 6c 73 5b 69 5d 20 21 3d | (Channe|ls[i] !=|
|000022e0| 20 4e 6f 6e 65 20 26 26 | 20 43 68 61 6e 6e 65 6c | None &&| Channel|
|000022f0| 73 5b 69 5d 2e 47 65 74 | 54 69 74 6c 65 28 29 20 |s[i].Get|Title() |
|00002300| 7e 3d 20 43 68 61 6e 6e | 65 6c 54 69 74 6c 65 29 |~= Chann|elTitle)|
|00002310| 0d 0a 09 09 09 72 65 74 | 75 72 6e 20 43 68 61 6e |.....ret|urn Chan|
|00002320| 6e 65 6c 73 5b 69 5d 2e | 43 68 61 6e 6e 65 6c 49 |nels[i].|ChannelI|
|00002330| 6e 64 65 78 3b 0d 0a 0d | 0a 09 72 65 74 75 72 6e |ndex;...|..return|
|00002340| 20 53 75 70 65 72 2e 47 | 65 74 43 68 61 6e 6e 65 | Super.G|etChanne|
|00002350| 6c 49 6e 64 65 78 28 43 | 68 61 6e 6e 65 6c 54 69 |lIndex(C|hannelTi|
|00002360| 74 6c 65 2c 20 54 65 61 | 6d 49 6e 64 65 78 29 3b |tle, Tea|mIndex);|
|00002370| 0d 0a 7d 0d 0a 73 69 6d | 75 6c 61 74 65 64 20 66 |..}..sim|ulated f|
|00002380| 75 6e 63 74 69 6f 6e 20 | 61 72 72 61 79 3c 56 6f |unction |array<Vo|
|00002390| 69 63 65 43 68 61 74 52 | 6f 6f 6d 3e 09 47 65 74 |iceChatR|oom>.Get|
|000023a0| 50 75 62 6c 69 63 43 68 | 61 6e 6e 65 6c 73 28 29 |PublicCh|annels()|
|000023b0| 0d 0a 7b 0d 0a 09 6c 6f | 63 61 6c 20 61 72 72 61 |..{...lo|cal arra|
|000023c0| 79 3c 56 6f 69 63 65 43 | 68 61 74 52 6f 6f 6d 3e |y<VoiceC|hatRoom>|
|000023d0| 20 52 6f 6f 6d 73 3b 0d | 0a 09 6c 6f 63 61 6c 20 | Rooms;.|..local |
|000023e0| 69 6e 74 20 69 3b 0d 0a | 0d 0a 09 66 6f 72 20 28 |int i;..|...for (|
|000023f0| 69 20 3d 20 30 3b 20 69 | 20 3c 20 43 68 61 6e 6e |i = 0; i| < Chann|
|00002400| 65 6c 73 2e 4c 65 6e 67 | 74 68 3b 20 69 2b 2b 29 |els.Leng|th; i++)|
|00002410| 0d 0a 09 09 69 66 20 28 | 43 68 61 6e 6e 65 6c 73 |....if (|Channels|
|00002420| 5b 69 5d 20 21 3d 20 4e | 6f 6e 65 20 26 26 20 43 |[i] != N|one && C|
|00002430| 68 61 6e 6e 65 6c 73 5b | 69 5d 2e 4f 77 6e 65 72 |hannels[|i].Owner|
|00002440| 20 3d 3d 20 53 65 6c 66 | 29 0d 0a 09 09 09 52 6f | == Self|).....Ro|
|00002450| 6f 6d 73 5b 52 6f 6f 6d | 73 2e 4c 65 6e 67 74 68 |oms[Room|s.Length|
|00002460| 5d 20 3d 20 43 68 61 6e | 6e 65 6c 73 5b 69 5d 3b |] = Chan|nels[i];|
|00002470| 0d 0a 0d 0a 09 72 65 74 | 75 72 6e 20 52 6f 6f 6d |.....ret|urn Room|
|00002480| 73 3b 0d 0a 7d 0d 0a 73 | 69 6d 75 6c 61 74 65 64 |s;..}..s|imulated|
|00002490| 20 66 75 6e 63 74 69 6f | 6e 20 61 72 72 61 79 3c | functio|n array<|
|000024a0| 56 6f 69 63 65 43 68 61 | 74 52 6f 6f 6d 3e 09 47 |VoiceCha|tRoom>.G|
|000024b0| 65 74 50 6c 61 79 65 72 | 43 68 61 6e 6e 65 6c 73 |etPlayer|Channels|
|000024c0| 28 29 0d 0a 7b 0d 0a 09 | 6c 6f 63 61 6c 20 61 72 |()..{...|local ar|
|000024d0| 72 61 79 3c 56 6f 69 63 | 65 43 68 61 74 52 6f 6f |ray<Voic|eChatRoo|
|000024e0| 6d 3e 20 52 6f 6f 6d 73 | 3b 0d 0a 09 6c 6f 63 61 |m> Rooms|;...loca|
|000024f0| 6c 20 69 6e 74 20 69 3b | 0d 0a 0d 0a 09 66 6f 72 |l int i;|.....for|
|00002500| 20 28 69 20 3d 20 30 3b | 20 69 20 3c 20 43 68 61 | (i = 0;| i < Cha|
|00002510| 6e 6e 65 6c 73 2e 4c 65 | 6e 67 74 68 3b 20 69 2b |nnels.Le|ngth; i+|
|00002520| 2b 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 43 68 |+)...{..|..if (Ch|
|00002530| 61 6e 6e 65 6c 73 5b 69 | 5d 20 21 3d 20 4e 6f 6e |annels[i|] != Non|
|00002540| 65 20 26 26 20 43 68 61 | 6e 6e 65 6c 73 5b 69 5d |e && Cha|nnels[i]|
|00002550| 2e 4f 77 6e 65 72 20 21 | 3d 20 4e 6f 6e 65 20 26 |.Owner !|= None &|
|00002560| 26 20 43 68 61 6e 6e 65 | 6c 73 5b 69 5d 2e 4f 77 |& Channe|ls[i].Ow|
|00002570| 6e 65 72 20 21 3d 20 53 | 65 6c 66 29 0d 0a 09 09 |ner != S|elf)....|
|00002580| 09 52 6f 6f 6d 73 5b 52 | 6f 6f 6d 73 2e 4c 65 6e |.Rooms[R|ooms.Len|
|00002590| 67 74 68 5d 20 3d 20 43 | 68 61 6e 6e 65 6c 73 5b |gth] = C|hannels[|
|000025a0| 69 5d 3b 0d 0a 09 7d 0d | 0a 0d 0a 09 72 65 74 75 |i];...}.|....retu|
|000025b0| 72 6e 20 52 6f 6f 6d 73 | 3b 0d 0a 7d 0d 0a 73 69 |rn Rooms|;..}..si|
|000025c0| 6d 75 6c 61 74 65 64 20 | 66 75 6e 63 74 69 6f 6e |mulated |function|
|000025d0| 20 69 6e 74 20 47 65 74 | 50 75 62 6c 69 63 43 68 | int Get|PublicCh|
|000025e0| 61 6e 6e 65 6c 43 6f 75 | 6e 74 28 6f 70 74 69 6f |annelCou|nt(optio|
|000025f0| 6e 61 6c 20 62 6f 6f 6c | 20 62 53 69 6e 67 6c 65 |nal bool| bSingle|
|00002600| 54 65 61 6d 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |Team)..{|...local|
|00002610| 20 69 6e 74 20 69 2c 20 | 63 6e 74 3b 0d 0a 0d 0a | int i, |cnt;....|
|00002620| 09 66 6f 72 20 28 20 69 | 20 3d 20 30 3b 20 69 20 |.for ( i| = 0; i |
|00002630| 3c 20 43 68 61 6e 6e 65 | 6c 73 2e 4c 65 6e 67 74 |< Channe|ls.Lengt|
|00002640| 68 3b 20 69 2b 2b 20 29 | 0d 0a 09 09 69 66 20 28 |h; i++ )|....if (|
|00002650| 20 43 68 61 6e 6e 65 6c | 73 5b 69 5d 20 21 3d 20 | Channel|s[i] != |
|00002660| 4e 6f 6e 65 20 26 26 20 | 43 68 61 6e 6e 65 6c 73 |None && |Channels|
|00002670| 5b 69 5d 2e 4f 77 6e 65 | 72 20 3d 3d 20 53 65 6c |[i].Owne|r == Sel|
|00002680| 66 20 26 26 20 28 43 68 | 61 6e 6e 65 6c 73 5b 69 |f && (Ch|annels[i|
|00002690| 5d 2e 47 65 74 54 65 61 | 6d 28 29 20 3d 3d 20 30 |].GetTea|m() == 0|
|000026a0| 20 7c 7c 20 21 62 53 69 | 6e 67 6c 65 54 65 61 6d | || !bSi|ngleTeam|
|000026b0| 29 20 29 0d 0a 09 09 09 | 63 6e 74 2b 2b 3b 0d 0a |) ).....|cnt++;..|
|000026c0| 0d 0a 09 72 65 74 75 72 | 6e 20 63 6e 74 3b 0d 0a |...retur|n cnt;..|
|000026d0| 7d 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 75 6e |}..simul|ated fun|
|000026e0| 63 74 69 6f 6e 20 69 6e | 74 20 47 65 74 50 6c 61 |ction in|t GetPla|
|000026f0| 79 65 72 43 68 61 6e 6e | 65 6c 43 6f 75 6e 74 28 |yerChann|elCount(|
|00002700| 29 0d 0a 7b 0d 0a 09 6c | 6f 63 61 6c 20 61 72 72 |)..{...l|ocal arr|
|00002710| 61 79 3c 56 6f 69 63 65 | 43 68 61 74 52 6f 6f 6d |ay<Voice|ChatRoom|
|00002720| 3e 20 41 72 72 3b 0d 0a | 09 41 72 72 20 3d 20 47 |> Arr;..|.Arr = G|
|00002730| 65 74 50 6c 61 79 65 72 | 43 68 61 6e 6e 65 6c 73 |etPlayer|Channels|
|00002740| 28 29 3b 0d 0a 09 72 65 | 74 75 72 6e 20 41 72 72 |();...re|turn Arr|
|00002750| 2e 4c 65 6e 67 74 68 3b | 0d 0a 7d 0d 0a 0d 0a 73 |.Length;|..}....s|
|00002760| 69 6d 75 6c 61 74 65 64 | 20 66 75 6e 63 74 69 6f |imulated| functio|
|00002770| 6e 20 62 6f 6f 6c 20 49 | 73 4d 65 6d 62 65 72 28 |n bool I|sMember(|
|00002780| 50 6c 61 79 65 72 52 65 | 70 6c 69 63 61 74 69 6f |PlayerRe|plicatio|
|00002790| 6e 49 6e 66 6f 20 54 65 | 73 74 50 52 49 2c 20 69 |nInfo Te|stPRI, i|
|000027a0| 6e 74 20 43 68 61 6e 6e | 65 6c 49 6e 64 65 78 2c |nt Chann|elIndex,|
|000027b0| 20 6f 70 74 69 6f 6e 61 | 6c 20 62 6f 6f 6c 20 62 | optiona|l bool b|
|000027c0| 4e 6f 43 61 73 63 61 64 | 65 29 0d 0a 7b 0d 0a 09 |NoCascad|e)..{...|
|000027d0| 6c 6f 63 61 6c 20 56 6f | 69 63 65 43 68 61 74 52 |local Vo|iceChatR|
|000027e0| 6f 6f 6d 20 56 43 52 3b | 0d 0a 0d 0a 09 69 66 20 |oom VCR;|.....if |
|000027f0| 28 20 54 65 73 74 50 52 | 49 20 3d 3d 20 4e 6f 6e |( TestPR|I == Non|
|00002800| 65 20 29 0d 0a 09 09 72 | 65 74 75 72 6e 20 66 61 |e )....r|eturn fa|
|00002810| 6c 73 65 3b 0d 0a 0d 0a | 09 56 43 52 20 3d 20 47 |lse;....|.VCR = G|
|00002820| 65 74 43 68 61 6e 6e 65 | 6c 41 74 28 43 68 61 6e |etChanne|lAt(Chan|
|00002830| 6e 65 6c 49 6e 64 65 78 | 29 3b 0d 0a 09 69 66 20 |nelIndex|);...if |
|00002840| 28 20 56 43 52 20 3d 3d | 20 4e 6f 6e 65 20 29 0d |( VCR ==| None ).|
|00002850| 0a 09 09 72 65 74 75 72 | 6e 20 66 61 6c 73 65 3b |...retur|n false;|
|00002860| 0d 0a 0d 0a 09 72 65 74 | 75 72 6e 20 56 43 52 2e |.....ret|urn VCR.|
|00002870| 49 73 4d 65 6d 62 65 72 | 28 54 65 73 74 50 52 49 |IsMember|(TestPRI|
|00002880| 2c 20 62 4e 6f 43 61 73 | 63 61 64 65 29 3b 0d 0a |, bNoCas|cade);..|
|00002890| 7d 0d 0a 0d 0a 2f 2f 20 | 49 6e 74 65 72 6e 61 6c |}....// |Internal|
|000028a0| 20 66 75 6e 63 74 69 6f | 6e 73 0d 0a 73 69 6d 75 | functio|ns..simu|
|000028b0| 6c 61 74 65 64 20 70 72 | 6f 74 65 63 74 65 64 20 |lated pr|otected |
|000028c0| 66 75 6e 63 74 69 6f 6e | 20 56 6f 69 63 65 43 68 |function| VoiceCh|
|000028d0| 61 74 52 6f 6f 6d 09 43 | 72 65 61 74 65 4e 65 77 |atRoom.C|reateNew|
|000028e0| 56 6f 69 63 65 43 68 61 | 6e 6e 65 6c 28 6f 70 74 |VoiceCha|nnel(opt|
|000028f0| 69 6f 6e 61 6c 20 50 6c | 61 79 65 72 52 65 70 6c |ional Pl|ayerRepl|
|00002900| 69 63 61 74 69 6f 6e 49 | 6e 66 6f 20 50 52 49 29 |icationI|nfo PRI)|
|00002910| 0d 0a 7b 0d 0a 09 6c 6f | 63 61 6c 20 69 6e 74 20 |..{...lo|cal int |
|00002920| 69 3b 0d 0a 0d 0a 09 69 | 66 20 28 50 52 49 20 3d |i;.....i|f (PRI =|
|00002930| 3d 20 4e 6f 6e 65 29 0d | 0a 09 09 72 65 74 75 72 |= None).|...retur|
|00002940| 6e 20 53 70 61 77 6e 28 | 43 68 61 74 52 6f 6f 6d |n Spawn(|ChatRoom|
|00002950| 43 6c 61 73 73 2c 20 53 | 65 6c 66 29 3b 0d 0a 0d |Class, S|elf);...|
|00002960| 0a 09 66 6f 72 20 28 69 | 20 3d 20 30 3b 20 69 20 |..for (i| = 0; i |
|00002970| 3c 20 43 68 61 6e 6e 65 | 6c 73 2e 4c 65 6e 67 74 |< Channe|ls.Lengt|
|00002980| 68 3b 20 69 2b 2b 29 0d | 0a 09 09 69 66 20 28 43 |h; i++).|...if (C|
|00002990| 68 61 6e 6e 65 6c 73 5b | 69 5d 2e 4f 77 6e 65 72 |hannels[|i].Owner|
|000029a0| 20 3d 3d 20 50 52 49 29 | 0d 0a 09 09 09 72 65 74 | == PRI)|.....ret|
|000029b0| 75 72 6e 20 53 75 70 65 | 72 2e 43 72 65 61 74 65 |urn Supe|r.Create|
|000029c0| 4e 65 77 56 6f 69 63 65 | 43 68 61 6e 6e 65 6c 28 |NewVoice|Channel(|
|000029d0| 50 52 49 29 3b 0d 0a 0d | 0a 09 72 65 74 75 72 6e |PRI);...|..return|
|000029e0| 20 53 70 61 77 6e 28 43 | 68 61 74 52 6f 6f 6d 43 | Spawn(C|hatRoomC|
|000029f0| 6c 61 73 73 2c 20 50 52 | 49 29 3b 0d 0a 7d 0d 0a |lass, PR|I);..}..|
|00002a00| 73 69 6d 75 6c 61 74 65 | 64 20 70 72 6f 74 65 63 |simulate|d protec|
|00002a10| 74 65 64 20 66 75 6e 63 | 74 69 6f 6e 20 44 65 73 |ted func|tion Des|
|00002a20| 74 72 6f 79 56 6f 69 63 | 65 43 68 61 6e 6e 65 6c |troyVoic|eChannel|
|00002a30| 28 56 6f 69 63 65 43 68 | 61 74 52 6f 6f 6d 20 43 |(VoiceCh|atRoom C|
|00002a40| 68 61 6e 6e 65 6c 29 0d | 0a 7b 0d 0a 09 69 66 20 |hannel).|.{...if |
|00002a50| 28 43 68 61 6e 6e 65 6c | 20 21 3d 20 4e 6f 6e 65 |(Channel| != None|
|00002a60| 29 0d 0a 09 7b 0d 0a 09 | 09 43 68 61 6e 6e 65 6c |)...{...|.Channel|
|00002a70| 2e 44 65 73 74 72 6f 79 | 28 29 3b 0d 0a 09 09 62 |.Destroy|();....b|
|00002a80| 52 65 66 72 65 73 68 20 | 3d 20 54 72 75 65 3b 0d |Refresh |= True;.|
|00002a90| 0a 09 7d 0d 0a 7d 0d 0a | 0d 0a 00 |..}..}..|... |
+--------+-------------------------+-------------------------+--------+--------+