home *** CD-ROM | disk | FTP | other *** search
Unknown | 2004-05-10 | 19.6 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 | 70 b9 02 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 0d 0a 2f 2f 20 41 |========|==..// A|
|00000060| 53 56 65 68 69 63 6c 65 | 0d 0a 2f 2f 3d 3d 3d 3d |SVehicle|..//====|
|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 | 3d 0d 0a 2f 2f 20 42 61 |========|=..// Ba|
|000000c0| 73 65 20 63 6c 61 73 73 | 20 66 6f 72 20 6e 6f 6e |se class| for non|
|000000d0| 20 4b 61 72 6d 61 20 76 | 65 68 69 63 6c 65 73 0d | Karma v|ehicles.|
|000000e0| 0a 2f 2f 3d 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| 0d 0a 2f 2f 20 43 72 65 | 61 74 65 64 20 62 79 20 |..// Cre|ated by |
|00000140| 4c 61 75 72 65 6e 74 20 | 44 65 6c 61 79 65 6e 0d |Laurent |Delayen.|
|00000150| 0a 2f 2f 20 a9 20 32 30 | 30 33 2c 20 45 70 69 63 |.// . 20|03, Epic|
|00000160| 20 47 61 6d 65 73 2c 20 | 49 6e 63 2e 20 20 41 6c | Games, |Inc. Al|
|00000170| 6c 20 52 69 67 68 74 73 | 20 52 65 73 65 72 76 65 |l Rights| Reserve|
|00000180| 64 0d 0a 2f 2f 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |d..//===|========|
|00000190| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000001a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000001b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000001c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000001d0| 3d 3d 0d 0a 0d 0a 63 6c | 61 73 73 20 41 53 56 65 |==....cl|ass ASVe|
|000001e0| 68 69 63 6c 65 20 65 78 | 74 65 6e 64 73 20 56 65 |hicle ex|tends Ve|
|000001f0| 68 69 63 6c 65 0d 0a 09 | 41 62 73 74 72 61 63 74 |hicle...|Abstract|
|00000200| 3b 0d 0a 0d 0a 23 65 78 | 65 63 20 4f 42 4a 20 4c |;....#ex|ec OBJ L|
|00000210| 4f 41 44 20 46 49 4c 45 | 3d 4f 4e 53 49 6e 74 65 |OAD FILE|=ONSInte|
|00000220| 72 66 61 63 65 2d 54 58 | 2e 75 74 78 0d 0a 0d 0a |rface-TX|.utx....|
|00000230| 76 61 72 28 29 09 53 74 | 72 69 6e 67 09 44 65 66 |var().St|ring.Def|
|00000240| 61 75 6c 74 57 65 61 70 | 6f 6e 43 6c 61 73 73 4e |aultWeap|onClassN|
|00000250| 61 6d 65 3b 09 09 2f 2f | 20 44 65 66 61 75 6c 74 |ame;..//| Default|
|00000260| 20 76 65 68 69 63 6c 65 | 20 77 65 61 70 6f 6e 20 | vehicle| weapon |
|00000270| 63 6c 61 73 73 0d 0a 09 | 09 09 09 09 09 09 09 09 |class...|........|
|00000280| 09 09 2f 2f 20 54 68 69 | 73 20 61 70 70 6c 69 65 |..// Thi|s applie|
|00000290| 73 20 77 68 65 6e 20 70 | 6c 61 79 65 72 73 20 73 |s when p|layers s|
|000002a0| 74 61 72 74 20 67 61 6d | 65 20 69 6e 20 76 65 68 |tart gam|e in veh|
|000002b0| 69 63 6c 65 20 77 69 74 | 68 6f 75 74 20 74 68 65 |icle wit|hout the|
|000002c0| 20 22 73 74 61 6e 64 61 | 72 64 22 20 70 6f 73 73 | "standa|rd" poss|
|000002d0| 65 73 73 20 70 72 6f 63 | 65 64 75 72 65 0d 0a 2f |ess proc|edure../|
|000002e0| 2f 20 46 58 0d 0a 76 61 | 72 28 29 09 56 65 63 74 |/ FX..va|r().Vect|
|000002f0| 6f 72 09 09 56 65 68 69 | 63 6c 65 50 72 6f 6a 53 |or..Vehi|cleProjS|
|00000300| 70 61 77 6e 4f 66 66 73 | 65 74 3b 09 09 2f 2f 20 |pawnOffs|et;..// |
|00000310| 50 72 6f 6a 65 63 74 69 | 6c 65 20 53 70 61 77 6e |Projecti|le Spawn|
|00000320| 20 4f 66 66 73 65 74 0d | 0a 0d 0a 76 61 72 20 50 | Offset.|...var P|
|00000330| 61 77 6e 09 44 61 6d 4c | 61 73 74 49 6e 73 74 69 |awn.DamL|astInsti|
|00000340| 67 61 74 6f 72 3b 0d 0a | 76 61 72 20 66 6c 6f 61 |gator;..|var floa|
|00000350| 74 09 44 61 6d 4c 61 73 | 74 44 61 6d 61 67 65 54 |t.DamLas|tDamageT|
|00000360| 69 6d 65 3b 0d 0a 0d 0a | 76 61 72 09 4d 61 74 65 |ime;....|var.Mate|
|00000370| 72 69 61 6c 09 44 65 66 | 61 75 6c 74 43 72 6f 73 |rial.Def|aultCros|
|00000380| 73 68 61 69 72 2c 20 43 | 72 6f 73 73 68 61 69 72 |shair, C|rosshair|
|00000390| 48 69 74 46 65 65 64 62 | 61 63 6b 54 65 78 3b 0d |HitFeedb|ackTex;.|
|000003a0| 0a 76 61 72 20 66 6c 6f | 61 74 09 09 43 72 6f 73 |.var flo|at..Cros|
|000003b0| 73 68 61 69 72 53 63 61 | 6c 65 3b 0d 0a 76 61 72 |shairSca|le;..var|
|000003c0| 09 62 6f 6f 6c 09 09 62 | 43 48 5a 65 72 6f 59 4f |.bool..b|CHZeroYO|
|000003d0| 66 66 73 65 74 3b 09 09 | 2f 2f 20 46 6f 72 20 64 |ffset;..|// For d|
|000003e0| 75 61 6c 20 63 61 6e 6e | 6f 6e 73 2c 20 6a 75 73 |ual cann|ons, jus|
|000003f0| 74 20 74 72 61 63 65 20 | 66 72 6f 6d 20 74 68 65 |t trace |from the|
|00000400| 20 63 65 6e 74 65 72 2e | 0d 0a 76 61 72 20 62 6f | center.|..var bo|
|00000410| 6f 6c 09 62 43 75 73 74 | 6f 6d 48 65 61 6c 74 68 |ol.bCust|omHealth|
|00000420| 44 69 73 70 6c 61 79 3b | 0d 0a 0d 0a 76 61 72 09 |Display;|....var.|
|00000430| 66 6c 6f 61 74 09 09 4c | 61 73 74 43 61 6c 63 57 |float..L|astCalcW|
|00000440| 65 61 70 6f 6e 46 69 72 | 65 3b 09 2f 2f 20 61 76 |eaponFir|e;.// av|
|00000450| 6f 69 64 20 6d 75 6c 74 | 69 70 6c 65 20 74 72 61 |oid mult|iple tra|
|00000460| 63 65 73 20 74 68 65 20 | 73 61 6d 65 20 74 69 63 |ces the |same tic|
|00000470| 6b 0d 0a 76 61 72 09 41 | 63 74 6f 72 09 09 4c 61 |k..var.A|ctor..La|
|00000480| 73 74 43 61 6c 63 48 41 | 3b 0d 0a 76 61 72 09 76 |stCalcHA|;..var.v|
|00000490| 65 63 74 6f 72 09 09 4c | 61 73 74 43 61 6c 63 48 |ector..L|astCalcH|
|000004a0| 4c 2c 20 4c 61 73 74 43 | 61 6c 63 48 4e 3b 0d 0a |L, LastC|alcHN;..|
|000004b0| 0d 0a 76 61 72 28 29 09 | 53 6f 75 6e 64 09 4c 6f |..var().|Sound.Lo|
|000004c0| 63 6b 65 64 4f 6e 53 6f | 75 6e 64 3b 0d 0a 0d 0a |ckedOnSo|und;....|
|000004d0| 76 61 72 20 43 6f 6e 74 | 72 6f 6c 6c 65 72 09 44 |var Cont|roller.D|
|000004e0| 65 73 74 72 6f 79 50 72 | 65 76 43 6f 6e 74 72 6f |estroyPr|evContro|
|000004f0| 6c 6c 65 72 3b 0d 0a 76 | 61 72 20 45 6d 69 74 74 |ller;..v|ar Emitt|
|00000500| 65 72 09 09 45 78 70 6c | 6f 73 69 6f 6e 45 66 66 |er..Expl|osionEff|
|00000510| 65 63 74 2c 20 44 65 62 | 75 67 46 58 3b 0d 0a 0d |ect, Deb|ugFX;...|
|00000520| 0a 76 61 72 20 76 65 63 | 74 6f 72 20 42 6f 74 45 |.var vec|tor BotE|
|00000530| 72 72 6f 72 3b 0d 0a 76 | 61 72 20 41 63 74 6f 72 |rror;..v|ar Actor|
|00000540| 20 4f 6c 64 54 61 72 67 | 65 74 3b 0d 0a 0d 0a 2f | OldTarg|et;..../|
|00000550| 2f 20 46 75 6e 63 74 69 | 6f 6e 20 6f 76 65 72 72 |/ Functi|on overr|
|00000560| 69 64 65 0d 0a 66 75 6e | 63 74 69 6f 6e 20 50 6c |ide..fun|ction Pl|
|00000570| 61 79 48 69 74 28 66 6c | 6f 61 74 20 44 61 6d 61 |ayHit(fl|oat Dama|
|00000580| 67 65 2c 20 50 61 77 6e | 20 49 6e 73 74 69 67 61 |ge, Pawn| Instiga|
|00000590| 74 65 64 42 79 2c 20 76 | 65 63 74 6f 72 20 48 69 |tedBy, v|ector Hi|
|000005a0| 74 4c 6f 63 61 74 69 6f | 6e 2c 20 63 6c 61 73 73 |tLocatio|n, class|
|000005b0| 3c 44 61 6d 61 67 65 54 | 79 70 65 3e 20 64 61 6d |<DamageT|ype> dam|
|000005c0| 61 67 65 54 79 70 65 2c | 20 76 65 63 74 6f 72 20 |ageType,| vector |
|000005d0| 4d 6f 6d 65 6e 74 75 6d | 29 20 7b 7d 0d 0a 66 75 |Momentum|) {}..fu|
|000005e0| 6e 63 74 69 6f 6e 20 43 | 6c 69 65 6e 74 44 79 69 |nction C|lientDyi|
|000005f0| 6e 67 28 63 6c 61 73 73 | 3c 44 61 6d 61 67 65 54 |ng(class|<DamageT|
|00000600| 79 70 65 3e 20 44 61 6d | 61 67 65 54 79 70 65 2c |ype> Dam|ageType,|
|00000610| 20 76 65 63 74 6f 72 20 | 48 69 74 4c 6f 63 61 74 | vector |HitLocat|
|00000620| 69 6f 6e 29 20 7b 7d 0d | 0a 73 69 6d 75 6c 61 74 |ion) {}.|.simulat|
|00000630| 65 64 20 66 75 6e 63 74 | 69 6f 6e 20 54 69 63 6b |ed funct|ion Tick|
|00000640| 28 66 6c 6f 61 74 20 44 | 65 6c 74 61 54 69 6d 65 |(float D|eltaTime|
|00000650| 29 3b 0d 0a 0d 0a 73 69 | 6d 75 6c 61 74 65 64 20 |);....si|mulated |
|00000660| 65 76 65 6e 74 20 50 6f | 73 74 42 65 67 69 6e 50 |event Po|stBeginP|
|00000670| 6c 61 79 28 29 0d 0a 7b | 0d 0a 09 73 75 70 65 72 |lay()..{|...super|
|00000680| 2e 50 6f 73 74 42 65 67 | 69 6e 50 6c 61 79 28 29 |.PostBeg|inPlay()|
|00000690| 3b 0d 0a 0d 0a 09 69 66 | 20 28 20 4c 65 76 65 6c |;.....if| ( Level|
|000006a0| 2e 47 61 6d 65 20 21 3d | 20 4e 6f 6e 65 20 29 0d |.Game !=| None ).|
|000006b0| 0a 09 09 42 6f 74 45 72 | 72 6f 72 20 3d 20 28 31 |...BotEr|ror = (1|
|000006c0| 30 30 30 20 2d 20 35 30 | 20 2a 20 4c 65 76 65 6c |000 - 50| * Level|
|000006d0| 2e 47 61 6d 65 2e 47 61 | 6d 65 44 69 66 66 69 63 |.Game.Ga|meDiffic|
|000006e0| 75 6c 74 79 29 20 2a 20 | 56 52 61 6e 64 28 29 3b |ulty) * |VRand();|
|000006f0| 0d 0a 0d 0a 09 2f 2f 20 | 48 61 63 6b 20 74 6f 20 |.....// |Hack to |
|00000700| 69 6e 73 74 61 6e 63 65 | 20 63 6f 72 72 65 63 74 |instance| correct|
|00000710| 6c 79 20 74 68 65 20 73 | 6b 65 6c 65 74 61 6c 20 |ly the s|keletal |
|00000720| 63 6f 6c 6c 69 73 69 6f | 6e 20 62 6f 78 65 73 0d |collisio|n boxes.|
|00000730| 0a 20 20 20 20 47 65 74 | 42 6f 6e 65 43 6f 6f 72 |. Get|BoneCoor|
|00000740| 64 73 28 27 27 29 3b 0d | 0a 20 20 20 20 53 65 74 |ds('');.|. Set|
|00000750| 43 6f 6c 6c 69 73 69 6f | 6e 28 66 61 6c 73 65 2c |Collisio|n(false,|
|00000760| 20 66 61 6c 73 65 29 3b | 0d 0a 20 20 20 20 53 65 | false);|.. Se|
|00000770| 74 43 6f 6c 6c 69 73 69 | 6f 6e 28 74 72 75 65 2c |tCollisi|on(true,|
|00000780| 20 74 72 75 65 29 3b 0d | 0a 7d 0d 0a 0d 0a 73 69 | true);.|.}....si|
|00000790| 6d 75 6c 61 74 65 64 20 | 65 76 65 6e 74 20 44 65 |mulated |event De|
|000007a0| 73 74 72 6f 79 65 64 28 | 29 0d 0a 7b 0d 0a 09 69 |stroyed(|)..{...i|
|000007b0| 66 20 28 20 4c 65 76 65 | 6c 2e 47 61 6d 65 20 21 |f ( Leve|l.Game !|
|000007c0| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 4c 65 76 65 |= None )|....Leve|
|000007d0| 6c 2e 47 61 6d 65 2e 44 | 69 73 63 61 72 64 49 6e |l.Game.D|iscardIn|
|000007e0| 76 65 6e 74 6f 72 79 28 | 20 53 65 6c 66 20 29 3b |ventory(| Self );|
|000007f0| 0d 0a 0d 0a 09 73 75 70 | 65 72 2e 44 65 73 74 72 |.....sup|er.Destr|
|00000800| 6f 79 65 64 28 29 3b 0d | 0a 7d 0d 0a 0d 0a 66 75 |oyed();.|.}....fu|
|00000810| 6e 63 74 69 6f 6e 20 41 | 64 64 44 65 66 61 75 6c |nction A|ddDefaul|
|00000820| 74 49 6e 76 65 6e 74 6f | 72 79 28 29 0d 0a 7b 0d |tInvento|ry()..{.|
|00000830| 0a 09 47 69 76 65 57 65 | 61 70 6f 6e 28 20 44 65 |..GiveWe|apon( De|
|00000840| 66 61 75 6c 74 57 65 61 | 70 6f 6e 43 6c 61 73 73 |faultWea|ponClass|
|00000850| 4e 61 6d 65 20 29 3b 0d | 0a 09 69 66 20 28 20 43 |Name );.|..if ( C|
|00000860| 6f 6e 74 72 6f 6c 6c 65 | 72 20 21 3d 20 4e 6f 6e |ontrolle|r != Non|
|00000870| 65 20 29 0d 0a 09 09 43 | 6f 6e 74 72 6f 6c 6c 65 |e )....C|ontrolle|
|00000880| 72 2e 43 6c 69 65 6e 74 | 53 77 69 74 63 68 54 6f |r.Client|SwitchTo|
|00000890| 42 65 73 74 57 65 61 70 | 6f 6e 28 29 3b 0d 0a 7d |BestWeap|on();..}|
|000008a0| 0d 0a 0d 0a 66 75 6e 63 | 74 69 6f 6e 20 50 6f 73 |....func|tion Pos|
|000008b0| 73 65 73 73 65 64 42 79 | 28 43 6f 6e 74 72 6f 6c |sessedBy|(Control|
|000008c0| 6c 65 72 20 43 29 0d 0a | 7b 0d 0a 09 4c 65 76 65 |ler C)..|{...Leve|
|000008d0| 6c 2e 47 61 6d 65 2e 44 | 69 73 63 61 72 64 49 6e |l.Game.D|iscardIn|
|000008e0| 76 65 6e 74 6f 72 79 28 | 20 53 65 6c 66 20 29 3b |ventory(| Self );|
|000008f0| 0d 0a 0d 0a 09 73 75 70 | 65 72 2e 50 6f 73 73 65 |.....sup|er.Posse|
|00000900| 73 73 65 64 42 79 28 20 | 43 20 29 3b 0d 0a 0d 0a |ssedBy( |C );....|
|00000910| 09 4e 65 74 55 70 64 61 | 74 65 54 69 6d 65 20 3d |.NetUpda|teTime =|
|00000920| 20 4c 65 76 65 6c 2e 54 | 69 6d 65 53 65 63 6f 6e | Level.T|imeSecon|
|00000930| 64 73 20 2d 20 31 3b 0d | 0a 09 62 53 74 61 73 69 |ds - 1;.|..bStasi|
|00000940| 73 20 3d 20 66 61 6c 73 | 65 3b 0d 0a 09 43 2e 50 |s = fals|e;...C.P|
|00000950| 61 77 6e 09 3d 20 53 65 | 6c 66 3b 0d 0a 09 41 64 |awn.= Se|lf;...Ad|
|00000960| 64 44 65 66 61 75 6c 74 | 49 6e 76 65 6e 74 6f 72 |dDefault|Inventor|
|00000970| 79 28 29 3b 0d 0a 09 69 | 66 20 28 20 57 65 61 70 |y();...i|f ( Weap|
|00000980| 6f 6e 20 21 3d 20 4e 6f | 6e 65 20 29 0d 0a 09 7b |on != No|ne )...{|
|00000990| 0d 0a 09 09 57 65 61 70 | 6f 6e 2e 4e 65 74 55 70 |....Weap|on.NetUp|
|000009a0| 64 61 74 65 54 69 6d 65 | 20 3d 20 4c 65 76 65 6c |dateTime| = Level|
|000009b0| 2e 54 69 6d 65 53 65 63 | 6f 6e 64 73 20 2d 20 31 |.TimeSec|onds - 1|
|000009c0| 3b 0d 0a 09 09 57 65 61 | 70 6f 6e 2e 49 6e 73 74 |;....Wea|pon.Inst|
|000009d0| 69 67 61 74 6f 72 20 3d | 20 53 65 6c 66 3b 0d 0a |igator =| Self;..|
|000009e0| 09 09 50 65 6e 64 69 6e | 67 57 65 61 70 6f 6e 20 |..Pendin|gWeapon |
|000009f0| 3d 20 4e 6f 6e 65 3b 0d | 0a 09 09 57 65 61 70 6f |= None;.|...Weapo|
|00000a00| 6e 2e 42 72 69 6e 67 55 | 70 28 29 3b 0d 0a 09 7d |n.BringU|p();...}|
|00000a10| 0d 0a 7d 0d 0a 0d 0a 66 | 75 6e 63 74 69 6f 6e 20 |..}....f|unction |
|00000a20| 55 6e 50 6f 73 73 65 73 | 73 65 64 28 29 0d 0a 7b |UnPosses|sed()..{|
|00000a30| 0d 0a 09 69 66 20 28 20 | 57 65 61 70 6f 6e 20 21 |...if ( |Weapon !|
|00000a40| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 7b 0d 0a 09 09 |= None )|...{....|
|00000a50| 57 65 61 70 6f 6e 2e 50 | 61 77 6e 55 6e 70 6f 73 |Weapon.P|awnUnpos|
|00000a60| 73 65 73 73 65 64 28 29 | 3b 0d 0a 09 09 57 65 61 |sessed()|;....Wea|
|00000a70| 70 6f 6e 2e 49 6d 6d 65 | 64 69 61 74 65 53 74 6f |pon.Imme|diateSto|
|00000a80| 70 46 69 72 65 28 29 3b | 0d 0a 09 09 57 65 61 70 |pFire();|....Weap|
|00000a90| 6f 6e 2e 53 65 72 76 65 | 72 53 74 6f 70 46 69 72 |on.Serve|rStopFir|
|00000aa0| 65 28 20 30 20 29 3b 0d | 0a 09 09 57 65 61 70 6f |e( 0 );.|...Weapo|
|00000ab0| 6e 2e 53 65 72 76 65 72 | 53 74 6f 70 46 69 72 65 |n.Server|StopFire|
|00000ac0| 28 20 31 20 29 3b 0d 0a | 09 7d 0d 0a 09 4e 65 74 |( 1 );..|.}...Net|
|00000ad0| 55 70 64 61 74 65 54 69 | 6d 65 20 3d 20 4c 65 76 |UpdateTi|me = Lev|
|00000ae0| 65 6c 2e 54 69 6d 65 53 | 65 63 6f 6e 64 73 20 2d |el.TimeS|econds -|
|00000af0| 20 31 3b 0d 0a 09 73 75 | 70 65 72 2e 55 6e 50 6f | 1;...su|per.UnPo|
|00000b00| 73 73 65 73 73 65 64 28 | 29 3b 0d 0a 7d 0d 0a 0d |ssessed(|);..}...|
|00000b10| 0a 65 76 65 6e 74 20 62 | 6f 6f 6c 20 4b 44 72 69 |.event b|ool KDri|
|00000b20| 76 65 72 4c 65 61 76 65 | 28 20 62 6f 6f 6c 20 62 |verLeave|( bool b|
|00000b30| 46 6f 72 63 65 4c 65 61 | 76 65 20 29 0d 0a 7b 0d |ForceLea|ve )..{.|
|00000b40| 0a 09 6c 6f 63 61 6c 20 | 62 6f 6f 6c 09 09 09 62 |..local |bool...b|
|00000b50| 4c 65 66 74 3b 0d 0a 09 | 6c 6f 63 61 6c 20 50 61 |Left;...|local Pa|
|00000b60| 77 6e 09 09 09 45 78 44 | 72 69 76 65 72 3b 0d 0a |wn...ExD|river;..|
|00000b70| 09 6c 6f 63 61 6c 20 43 | 6f 6e 74 72 6f 6c 6c 65 |.local C|ontrolle|
|00000b80| 72 09 45 78 43 6f 6e 74 | 72 6f 6c 6c 65 72 3b 0d |r.ExCont|roller;.|
|00000b90| 0a 0d 0a 09 69 66 20 28 | 20 43 6f 6e 74 72 6f 6c |....if (| Control|
|00000ba0| 6c 65 72 20 21 3d 20 4e | 6f 6e 65 20 29 0d 0a 09 |ler != N|one )...|
|00000bb0| 09 43 6f 6e 74 72 6f 6c | 6c 65 72 2e 53 74 6f 70 |.Control|ler.Stop|
|00000bc0| 46 69 72 69 6e 67 28 29 | 3b 0d 0a 09 45 78 43 6f |Firing()|;...ExCo|
|00000bd0| 6e 74 72 6f 6c 6c 65 72 | 09 3d 20 43 6f 6e 74 72 |ntroller|.= Contr|
|00000be0| 6f 6c 6c 65 72 3b 0d 0a | 09 45 78 44 72 69 76 65 |oller;..|.ExDrive|
|00000bf0| 72 09 09 3d 20 44 72 69 | 76 65 72 3b 0d 0a 0d 0a |r..= Dri|ver;....|
|00000c00| 09 62 4c 65 66 74 20 3d | 20 73 75 70 65 72 2e 4b |.bLeft =| super.K|
|00000c10| 44 72 69 76 65 72 4c 65 | 61 76 65 28 20 62 46 6f |DriverLe|ave( bFo|
|00000c20| 72 63 65 4c 65 61 76 65 | 20 29 3b 0d 0a 09 69 66 |rceLeave| );...if|
|00000c30| 20 28 20 62 4c 65 66 74 | 20 26 26 20 45 78 44 72 | ( bLeft| && ExDr|
|00000c40| 69 76 65 72 20 21 3d 20 | 4e 6f 6e 65 20 26 26 20 |iver != |None && |
|00000c50| 45 78 44 72 69 76 65 72 | 2e 57 65 61 70 6f 6e 20 |ExDriver|.Weapon |
|00000c60| 3d 3d 20 4e 6f 6e 65 20 | 26 26 20 45 78 43 6f 6e |== None |&& ExCon|
|00000c70| 74 72 6f 6c 6c 65 72 20 | 21 3d 20 4e 6f 6e 65 20 |troller |!= None |
|00000c80| 26 26 20 45 78 43 6f 6e | 74 72 6f 6c 6c 65 72 2e |&& ExCon|troller.|
|00000c90| 50 61 77 6e 20 3d 3d 20 | 45 78 44 72 69 76 65 72 |Pawn == |ExDriver|
|00000ca0| 20 29 0d 0a 09 09 45 78 | 43 6f 6e 74 72 6f 6c 6c | )....Ex|Controll|
|00000cb0| 65 72 2e 53 77 69 74 63 | 68 54 6f 42 65 73 74 57 |er.Switc|hToBestW|
|00000cc0| 65 61 70 6f 6e 28 29 3b | 0d 0a 09 0d 0a 09 72 65 |eapon();|......re|
|00000cd0| 74 75 72 6e 20 62 4c 65 | 66 74 3b 0d 0a 7d 0d 0a |turn bLe|ft;..}..|
|00000ce0| 0d 0a 73 69 6d 75 6c 61 | 74 65 64 20 66 75 6e 63 |..simula|ted func|
|00000cf0| 74 69 6f 6e 20 43 6c 69 | 65 6e 74 4b 44 72 69 76 |tion Cli|entKDriv|
|00000d00| 65 72 45 6e 74 65 72 28 | 20 50 6c 61 79 65 72 43 |erEnter(| PlayerC|
|00000d10| 6f 6e 74 72 6f 6c 6c 65 | 72 20 50 43 20 29 0d 0a |ontrolle|r PC )..|
|00000d20| 7b 0d 0a 09 73 75 70 65 | 72 2e 43 6c 69 65 6e 74 |{...supe|r.Client|
|00000d30| 4b 44 72 69 76 65 72 45 | 6e 74 65 72 28 20 50 43 |KDriverE|nter( PC|
|00000d40| 20 29 3b 0d 0a 0d 0a 09 | 2f 2f 20 66 6f 72 63 65 | );.....|// force|
|00000d50| 20 63 6f 6e 74 72 6f 6c | 6c 65 72 20 68 65 72 65 | control|ler here|
|00000d60| 2c 20 62 65 63 61 75 73 | 65 20 69 74 27 73 20 6e |, becaus|e it's n|
|00000d70| 6f 74 20 72 65 70 6c 69 | 63 61 74 65 64 20 79 65 |ot repli|cated ye|
|00000d80| 74 2e 2e 2e 0d 0a 09 50 | 43 2e 50 61 77 6e 20 3d |t......P|C.Pawn =|
|00000d90| 20 53 65 6c 66 3b 0d 0a | 09 43 6f 6e 74 72 6f 6c | Self;..|.Control|
|00000da0| 6c 65 72 20 3d 20 50 43 | 3b 0d 0a 09 53 65 74 4f |ler = PC|;...SetO|
|00000db0| 77 6e 65 72 28 20 50 43 | 20 29 3b 0d 0a 09 69 66 |wner( PC| );...if|
|00000dc0| 20 28 20 57 65 61 70 6f | 6e 20 21 3d 20 4e 6f 6e | ( Weapo|n != Non|
|00000dd0| 65 20 29 0d 0a 09 7b 0d | 0a 09 09 50 65 6e 64 69 |e )...{.|...Pendi|
|00000de0| 6e 67 57 65 61 70 6f 6e | 20 3d 20 4e 6f 6e 65 3b |ngWeapon| = None;|
|00000df0| 0d 0a 09 09 57 65 61 70 | 6f 6e 2e 42 72 69 6e 67 |....Weap|on.Bring|
|00000e00| 55 70 28 29 3b 0d 0a 09 | 7d 0d 0a 09 65 6c 73 65 |Up();...|}...else|
|00000e10| 0d 0a 09 09 50 43 2e 53 | 77 69 74 63 68 54 6f 42 |....PC.S|witchToB|
|00000e20| 65 73 74 57 65 61 70 6f | 6e 28 29 3b 0d 0a 7d 0d |estWeapo|n();..}.|
|00000e30| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 75 6e |...simul|ated fun|
|00000e40| 63 74 69 6f 6e 20 43 6c | 69 65 6e 74 4b 44 72 69 |ction Cl|ientKDri|
|00000e50| 76 65 72 4c 65 61 76 65 | 28 50 6c 61 79 65 72 43 |verLeave|(PlayerC|
|00000e60| 6f 6e 74 72 6f 6c 6c 65 | 72 20 50 43 29 0d 0a 7b |ontrolle|r PC)..{|
|00000e70| 0d 0a 09 69 66 20 28 20 | 50 43 20 21 3d 20 4e 6f |...if ( |PC != No|
|00000e80| 6e 65 20 26 26 20 57 65 | 61 70 6f 6e 20 21 3d 20 |ne && We|apon != |
|00000e90| 4e 6f 6e 65 20 29 0d 0a | 09 09 57 65 61 70 6f 6e |None )..|..Weapon|
|00000ea0| 2e 50 61 77 6e 55 6e 70 | 6f 73 73 65 73 73 65 64 |.PawnUnp|ossessed|
|00000eb0| 28 29 3b 0d 0a 0d 0a 09 | 73 75 70 65 72 2e 43 6c |();.....|super.Cl|
|00000ec0| 69 65 6e 74 4b 44 72 69 | 76 65 72 4c 65 61 76 65 |ientKDri|verLeave|
|00000ed0| 28 20 50 43 20 29 3b 0d | 0a 7d 0d 0a 0d 0a 73 69 |( PC );.|.}....si|
|00000ee0| 6d 75 6c 61 74 65 64 20 | 66 75 6e 63 74 69 6f 6e |mulated |function|
|00000ef0| 20 62 6f 6f 6c 20 53 74 | 6f 70 57 65 61 70 6f 6e | bool St|opWeapon|
|00000f00| 46 69 72 69 6e 67 28 29 | 0d 0a 7b 0d 0a 09 69 66 |Firing()|..{...if|
|00000f10| 20 28 20 57 65 61 70 6f | 6e 20 3d 3d 20 4e 6f 6e | ( Weapo|n == Non|
|00000f20| 65 20 29 0d 0a 09 09 72 | 65 74 75 72 6e 20 66 61 |e )....r|eturn fa|
|00000f30| 6c 73 65 3b 0d 0a 0d 0a | 09 57 65 61 70 6f 6e 2e |lse;....|.Weapon.|
|00000f40| 50 61 77 6e 55 6e 70 6f | 73 73 65 73 73 65 64 28 |PawnUnpo|ssessed(|
|00000f50| 29 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 57 65 61 70 |);.....i|f ( Weap|
|00000f60| 6f 6e 2e 49 73 46 69 72 | 69 6e 67 28 29 20 29 0d |on.IsFir|ing() ).|
|00000f70| 0a 09 7b 0d 0a 09 09 69 | 66 20 28 20 43 6f 6e 74 |..{....i|f ( Cont|
|00000f80| 72 6f 6c 6c 65 72 20 21 | 3d 20 4e 6f 6e 65 20 29 |roller !|= None )|
|00000f90| 0d 0a 09 09 7b 0d 0a 09 | 09 09 69 66 20 28 20 21 |....{...|..if ( !|
|00000fa0| 43 6f 6e 74 72 6f 6c 6c | 65 72 2e 49 73 41 28 27 |Controll|er.IsA('|
|00000fb0| 50 6c 61 79 65 72 43 6f | 6e 74 72 6f 6c 6c 65 72 |PlayerCo|ntroller|
|00000fc0| 27 29 20 29 0d 0a 09 09 | 09 09 57 65 61 70 6f 6e |') )....|..Weapon|
|00000fd0| 2e 53 65 72 76 65 72 53 | 74 6f 70 46 69 72 65 28 |.ServerS|topFire(|
|00000fe0| 20 57 65 61 70 6f 6e 2e | 42 6f 74 4d 6f 64 65 20 | Weapon.|BotMode |
|00000ff0| 29 3b 0d 0a 09 09 09 65 | 6c 73 65 0d 0a 09 09 09 |);.....e|lse.....|
|00001000| 7b 0d 0a 09 09 09 09 43 | 6f 6e 74 72 6f 6c 6c 65 |{......C|ontrolle|
|00001010| 72 2e 53 74 6f 70 46 69 | 72 69 6e 67 28 29 3b 0d |r.StopFi|ring();.|
|00001020| 0a 09 09 09 09 57 65 61 | 70 6f 6e 2e 53 65 72 76 |.....Wea|pon.Serv|
|00001030| 65 72 53 74 6f 70 46 69 | 72 65 28 20 30 20 29 3b |erStopFi|re( 0 );|
|00001040| 0d 0a 09 09 09 09 57 65 | 61 70 6f 6e 2e 53 65 72 |......We|apon.Ser|
|00001050| 76 65 72 53 74 6f 70 46 | 69 72 65 28 20 31 20 29 |verStopF|ire( 1 )|
|00001060| 3b 0d 0a 09 09 09 7d 0d | 0a 09 09 7d 0d 0a 09 09 |;.....}.|...}....|
|00001070| 65 6c 73 65 0d 0a 09 09 | 7b 0d 0a 09 09 09 57 65 |else....|{.....We|
|00001080| 61 70 6f 6e 2e 53 65 72 | 76 65 72 53 74 6f 70 46 |apon.Ser|verStopF|
|00001090| 69 72 65 28 20 30 20 29 | 3b 0d 0a 09 09 09 57 65 |ire( 0 )|;.....We|
|000010a0| 61 70 6f 6e 2e 53 65 72 | 76 65 72 53 74 6f 70 46 |apon.Ser|verStopF|
|000010b0| 69 72 65 28 20 31 20 29 | 3b 0d 0a 09 09 7d 0d 0a |ire( 1 )|;....}..|
|000010c0| 09 09 72 65 74 75 72 6e | 20 74 72 75 65 3b 0d 0a |..return| true;..|
|000010d0| 09 7d 0d 0a 0d 0a 09 72 | 65 74 75 72 6e 20 66 61 |.}.....r|eturn fa|
|000010e0| 6c 73 65 3b 0d 0a 7d 0d | 0a 0d 0a 66 75 6e 63 74 |lse;..}.|...funct|
|000010f0| 69 6f 6e 20 54 61 6b 65 | 44 61 6d 61 67 65 28 20 |ion Take|Damage( |
|00001100| 69 6e 74 20 44 61 6d 61 | 67 65 2c 20 50 61 77 6e |int Dama|ge, Pawn|
|00001110| 20 69 6e 73 74 69 67 61 | 74 65 64 42 79 2c 20 56 | instiga|tedBy, V|
|00001120| 65 63 74 6f 72 20 68 69 | 74 6c 6f 63 61 74 69 6f |ector hi|tlocatio|
|00001130| 6e 2c 0d 0a 09 09 09 09 | 09 09 56 65 63 74 6f 72 |n,......|..Vector|
|00001140| 20 6d 6f 6d 65 6e 74 75 | 6d 2c 20 63 6c 61 73 73 | momentu|m, class|
|00001150| 3c 44 61 6d 61 67 65 54 | 79 70 65 3e 20 64 61 6d |<DamageT|ype> dam|
|00001160| 61 67 65 54 79 70 65 29 | 0d 0a 7b 0d 0a 09 6c 6f |ageType)|..{...lo|
|00001170| 63 61 6c 20 69 6e 74 09 | 09 09 61 63 74 75 61 6c |cal int.|..actual|
|00001180| 44 61 6d 61 67 65 3b 0d | 0a 09 6c 6f 63 61 6c 20 |Damage;.|..local |
|00001190| 62 6f 6f 6c 09 09 09 62 | 41 6c 72 65 61 64 79 44 |bool...b|AlreadyD|
|000011a0| 65 61 64 3b 0d 0a 09 6c | 6f 63 61 6c 20 43 6f 6e |ead;...l|ocal Con|
|000011b0| 74 72 6f 6c 6c 65 72 09 | 4b 69 6c 6c 65 72 3b 0d |troller.|Killer;.|
|000011c0| 0a 0d 0a 09 69 66 20 28 | 20 52 6f 6c 65 20 3c 20 |....if (| Role < |
|000011d0| 52 4f 4c 45 5f 41 75 74 | 68 6f 72 69 74 79 20 29 |ROLE_Aut|hority )|
|000011e0| 0d 0a 09 7b 0d 0a 09 09 | 6c 6f 67 28 73 65 6c 66 |...{....|log(self|
|000011f0| 24 22 20 63 6c 69 65 6e | 74 20 64 61 6d 61 67 65 |$" clien|t damage|
|00001200| 20 74 79 70 65 20 22 24 | 64 61 6d 61 67 65 54 79 | type "$|damageTy|
|00001210| 70 65 24 22 20 62 79 20 | 22 24 69 6e 73 74 69 67 |pe$" by |"$instig|
|00001220| 61 74 65 64 42 79 29 3b | 0d 0a 09 09 72 65 74 75 |atedBy);|....retu|
|00001230| 72 6e 3b 0d 0a 09 7d 0d | 0a 0d 0a 09 69 66 20 28 |rn;...}.|....if (|
|00001240| 20 4c 65 76 65 6c 2e 47 | 61 6d 65 20 3d 3d 20 4e | Level.G|ame == N|
|00001250| 6f 6e 65 20 29 0d 0a 09 | 09 72 65 74 75 72 6e 3b |one )...|.return;|
|00001260| 0d 0a 0d 0a 09 2f 2f 20 | 53 70 61 77 6e 20 50 72 |.....// |Spawn Pr|
|00001270| 6f 74 65 63 74 69 6f 6e | 3a 20 43 61 6e 6e 6f 74 |otection|: Cannot|
|00001280| 20 62 65 20 64 65 73 74 | 72 6f 79 65 64 20 62 79 | be dest|royed by|
|00001290| 20 61 20 70 6c 61 79 65 | 72 20 75 6e 74 69 6c 20 | a playe|r until |
|000012a0| 70 6f 73 73 65 73 73 65 | 64 0d 0a 09 69 66 20 28 |possesse|d...if (|
|000012b0| 20 62 53 70 61 77 6e 50 | 72 6f 74 65 63 74 65 64 | bSpawnP|rotected|
|000012c0| 20 26 26 20 69 6e 73 74 | 69 67 61 74 65 64 42 79 | && inst|igatedBy|
|000012d0| 20 21 3d 20 4e 6f 6e 65 | 20 26 26 20 69 6e 73 74 | != None| && inst|
|000012e0| 69 67 61 74 65 64 42 79 | 20 21 3d 20 53 65 6c 66 |igatedBy| != Self|
|000012f0| 20 29 0d 0a 09 09 72 65 | 74 75 72 6e 3b 0d 0a 0d | )....re|turn;...|
|00001300| 0a 09 2f 2f 20 50 72 65 | 76 65 6e 74 20 6d 75 6c |..// Pre|vent mul|
|00001310| 74 69 70 6c 65 20 64 61 | 6d 61 67 65 20 74 68 65 |tiple da|mage the|
|00001320| 20 73 61 6d 65 20 74 69 | 63 6b 20 28 66 6f 72 20 | same ti|ck (for |
|00001330| 73 70 6c 61 73 68 20 64 | 61 6d 61 67 65 20 64 65 |splash d|amage de|
|00001340| 66 65 72 72 65 64 20 62 | 79 20 74 75 72 72 65 74 |ferred b|y turret|
|00001350| 20 62 61 73 65 73 20 66 | 6f 72 20 65 78 61 6d 70 | bases f|or examp|
|00001360| 6c 65 29 0d 0a 09 69 66 | 20 28 20 4c 65 76 65 6c |le)...if| ( Level|
|00001370| 2e 54 69 6d 65 53 65 63 | 6f 6e 64 73 20 3d 3d 20 |.TimeSec|onds == |
|00001380| 44 61 6d 4c 61 73 74 44 | 61 6d 61 67 65 54 69 6d |DamLastD|amageTim|
|00001390| 65 20 26 26 20 69 6e 73 | 74 69 67 61 74 65 64 42 |e && ins|tigatedB|
|000013a0| 79 20 3d 3d 20 44 61 6d | 4c 61 73 74 49 6e 73 74 |y == Dam|LastInst|
|000013b0| 69 67 61 74 6f 72 20 29 | 0d 0a 09 09 72 65 74 75 |igator )|....retu|
|000013c0| 72 6e 3b 0d 0a 0d 0a 09 | 44 61 6d 4c 61 73 74 49 |rn;.....|DamLastI|
|000013d0| 6e 73 74 69 67 61 74 6f | 72 20 3d 20 69 6e 73 74 |nstigato|r = inst|
|000013e0| 69 67 61 74 65 64 42 79 | 3b 0d 0a 09 44 61 6d 4c |igatedBy|;...DamL|
|000013f0| 61 73 74 44 61 6d 61 67 | 65 54 69 6d 65 20 3d 20 |astDamag|eTime = |
|00001400| 4c 65 76 65 6c 2e 54 69 | 6d 65 53 65 63 6f 6e 64 |Level.Ti|meSecond|
|00001410| 73 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 64 61 6d 61 |s;.....i|f ( dama|
|00001420| 67 65 74 79 70 65 20 3d | 3d 20 4e 6f 6e 65 20 29 |getype =|= None )|
|00001430| 0d 0a 09 09 44 61 6d 61 | 67 65 54 79 70 65 20 3d |....Dama|geType =|
|00001440| 20 63 6c 61 73 73 27 44 | 61 6d 61 67 65 54 79 70 | class'D|amageTyp|
|00001450| 65 27 3b 0d 0a 0d 0a 09 | 44 61 6d 61 67 65 09 09 |e';.....|Damage..|
|00001460| 2a 3d 20 44 61 6d 61 67 | 65 54 79 70 65 2e 64 65 |*= Damag|eType.de|
|00001470| 66 61 75 6c 74 2e 56 65 | 68 69 63 6c 65 44 61 6d |fault.Ve|hicleDam|
|00001480| 61 67 65 53 63 61 6c 69 | 6e 67 3b 0d 0a 09 6d 6f |ageScali|ng;...mo|
|00001490| 6d 65 6e 74 75 6d 09 2a | 3d 20 44 61 6d 61 67 65 |mentum.*|= Damage|
|000014a0| 54 79 70 65 2e 64 65 66 | 61 75 6c 74 2e 56 65 68 |Type.def|ault.Veh|
|000014b0| 69 63 6c 65 4d 6f 6d 65 | 6e 74 75 6d 53 63 61 6c |icleMome|ntumScal|
|000014c0| 69 6e 67 20 2a 20 4d 6f | 6d 65 6e 74 75 6d 4d 75 |ing * Mo|mentumMu|
|000014d0| 6c 74 3b 0d 0a 09 62 41 | 6c 72 65 61 64 79 44 65 |lt;...bA|lreadyDe|
|000014e0| 61 64 20 3d 20 28 48 65 | 61 6c 74 68 20 3c 3d 20 |ad = (He|alth <= |
|000014f0| 30 29 3b 0d 0a 09 4e 65 | 74 55 70 64 61 74 65 54 |0);...Ne|tUpdateT|
|00001500| 69 6d 65 20 3d 20 4c 65 | 76 65 6c 2e 54 69 6d 65 |ime = Le|vel.Time|
|00001510| 53 65 63 6f 6e 64 73 20 | 2d 20 31 3b 20 2f 2f 20 |Seconds |- 1; // |
|00001520| 66 6f 72 63 65 20 71 75 | 69 63 6b 20 6e 65 74 20 |force qu|ick net |
|00001530| 75 70 64 61 74 65 0d 0a | 0d 0a 20 20 20 20 69 66 |update..|.. if|
|00001540| 20 28 20 57 65 61 70 6f | 6e 20 21 3d 20 4e 6f 6e | ( Weapo|n != Non|
|00001550| 65 20 29 0d 0a 20 20 20 | 20 20 20 20 20 57 65 61 |e ).. | Wea|
|00001560| 70 6f 6e 2e 41 64 6a 75 | 73 74 50 6c 61 79 65 72 |pon.Adju|stPlayer|
|00001570| 44 61 6d 61 67 65 28 20 | 44 61 6d 61 67 65 2c 20 |Damage( |Damage, |
|00001580| 49 6e 73 74 69 67 61 74 | 65 64 42 79 2c 20 48 69 |Instigat|edBy, Hi|
|00001590| 74 4c 6f 63 61 74 69 6f | 6e 2c 20 4d 6f 6d 65 6e |tLocatio|n, Momen|
|000015a0| 74 75 6d 2c 20 44 61 6d | 61 67 65 54 79 70 65 20 |tum, Dam|ageType |
|000015b0| 29 3b 0d 0a 20 20 20 20 | 69 66 20 28 20 28 49 6e |);.. |if ( (In|
|000015c0| 73 74 69 67 61 74 65 64 | 42 79 20 21 3d 20 4e 6f |stigated|By != No|
|000015d0| 6e 65 29 20 26 26 20 49 | 6e 73 74 69 67 61 74 65 |ne) && I|nstigate|
|000015e0| 64 42 79 2e 48 61 73 55 | 44 61 6d 61 67 65 28 29 |dBy.HasU|Damage()|
|000015f0| 20 29 0d 0a 20 20 20 20 | 20 20 20 20 44 61 6d 61 | ).. | Dama|
|00001600| 67 65 20 2a 3d 20 32 3b | 0d 0a 0d 0a 09 61 63 74 |ge *= 2;|.....act|
|00001610| 75 61 6c 44 61 6d 61 67 | 65 20 3d 20 4c 65 76 65 |ualDamag|e = Leve|
|00001620| 6c 2e 47 61 6d 65 2e 52 | 65 64 75 63 65 44 61 6d |l.Game.R|educeDam|
|00001630| 61 67 65 28 44 61 6d 61 | 67 65 2c 20 73 65 6c 66 |age(Dama|ge, self|
|00001640| 2c 20 69 6e 73 74 69 67 | 61 74 65 64 42 79 2c 20 |, instig|atedBy, |
|00001650| 48 69 74 4c 6f 63 61 74 | 69 6f 6e 2c 20 4d 6f 6d |HitLocat|ion, Mom|
|00001660| 65 6e 74 75 6d 2c 20 44 | 61 6d 61 67 65 54 79 70 |entum, D|amageTyp|
|00001670| 65 29 3b 0d 0a 0d 0a 09 | 69 66 20 28 20 44 61 6d |e);.....|if ( Dam|
|00001680| 61 67 65 54 79 70 65 2e | 64 65 66 61 75 6c 74 2e |ageType.|default.|
|00001690| 62 41 72 6d 6f 72 53 74 | 6f 70 73 20 26 26 20 28 |bArmorSt|ops && (|
|000016a0| 61 63 74 75 61 6c 44 61 | 6d 61 67 65 20 3e 20 30 |actualDa|mage > 0|
|000016b0| 29 20 29 0d 0a 09 09 61 | 63 74 75 61 6c 44 61 6d |) )....a|ctualDam|
|000016c0| 61 67 65 20 3d 20 53 68 | 69 65 6c 64 41 62 73 6f |age = Sh|ieldAbso|
|000016d0| 72 62 28 20 61 63 74 75 | 61 6c 44 61 6d 61 67 65 |rb( actu|alDamage|
|000016e0| 20 29 3b 0d 0a 0d 0a 20 | 20 20 20 69 66 20 28 20 | );.... | if ( |
|000016f0| 62 53 68 6f 77 44 61 6d | 61 67 65 4f 76 65 72 6c |bShowDam|ageOverl|
|00001700| 61 79 20 26 26 20 44 61 | 6d 61 67 65 54 79 70 65 |ay && Da|mageType|
|00001710| 2e 64 65 66 61 75 6c 74 | 2e 44 61 6d 61 67 65 4f |.default|.DamageO|
|00001720| 76 65 72 6c 61 79 4d 61 | 74 65 72 69 61 6c 20 21 |verlayMa|terial !|
|00001730| 3d 20 4e 6f 6e 65 20 26 | 26 20 61 63 74 75 61 6c |= None &|& actual|
|00001740| 44 61 6d 61 67 65 20 3e | 20 30 20 29 0d 0a 20 20 |Damage >| 0 ).. |
|00001750| 20 20 20 20 20 20 53 65 | 74 4f 76 65 72 6c 61 79 | Se|tOverlay|
|00001760| 4d 61 74 65 72 69 61 6c | 28 20 44 61 6d 61 67 65 |Material|( Damage|
|00001770| 54 79 70 65 2e 64 65 66 | 61 75 6c 74 2e 44 61 6d |Type.def|ault.Dam|
|00001780| 61 67 65 4f 76 65 72 6c | 61 79 4d 61 74 65 72 69 |ageOverl|ayMateri|
|00001790| 61 6c 2c 20 44 61 6d 61 | 67 65 54 79 70 65 2e 64 |al, Dama|geType.d|
|000017a0| 65 66 61 75 6c 74 2e 44 | 61 6d 61 67 65 4f 76 65 |efault.D|amageOve|
|000017b0| 72 6c 61 79 54 69 6d 65 | 2c 20 74 72 75 65 20 29 |rlayTime|, true )|
|000017c0| 3b 0d 0a 0d 0a 09 48 65 | 61 6c 74 68 20 2d 3d 20 |;.....He|alth -= |
|000017d0| 61 63 74 75 61 6c 44 61 | 6d 61 67 65 3b 0d 0a 0d |actualDa|mage;...|
|000017e0| 0a 09 69 66 20 28 20 48 | 69 74 4c 6f 63 61 74 69 |..if ( H|itLocati|
|000017f0| 6f 6e 20 3d 3d 20 76 65 | 63 74 28 30 2c 30 2c 30 |on == ve|ct(0,0,0|
|00001800| 29 20 29 0d 0a 09 09 48 | 69 74 4c 6f 63 61 74 69 |) )....H|itLocati|
|00001810| 6f 6e 20 3d 20 4c 6f 63 | 61 74 69 6f 6e 3b 0d 0a |on = Loc|ation;..|
|00001820| 09 69 66 20 28 20 62 41 | 6c 72 65 61 64 79 44 65 |.if ( bA|lreadyDe|
|00001830| 61 64 20 29 0d 0a 09 09 | 72 65 74 75 72 6e 3b 0d |ad )....|return;.|
|00001840| 0a 0d 0a 09 50 6c 61 79 | 48 69 74 28 61 63 74 75 |....Play|Hit(actu|
|00001850| 61 6c 44 61 6d 61 67 65 | 2c 49 6e 73 74 69 67 61 |alDamage|,Instiga|
|00001860| 74 65 64 42 79 2c 20 68 | 69 74 4c 6f 63 61 74 69 |tedBy, h|itLocati|
|00001870| 6f 6e 2c 20 64 61 6d 61 | 67 65 54 79 70 65 2c 20 |on, dama|geType, |
|00001880| 4d 6f 6d 65 6e 74 75 6d | 29 3b 0d 0a 09 69 66 20 |Momentum|);...if |
|00001890| 28 20 48 65 61 6c 74 68 | 20 3c 3d 20 30 20 29 0d |( Health| <= 0 ).|
|000018a0| 0a 09 7b 0d 0a 0d 0a 09 | 09 69 66 20 28 20 62 52 |..{.....|.if ( bR|
|000018b0| 65 6d 6f 74 65 43 6f 6e | 74 72 6f 6c 6c 65 64 20 |emoteCon|trolled |
|000018c0| 26 26 20 44 72 69 76 65 | 72 20 21 3d 20 4e 6f 6e |&& Drive|r != Non|
|000018d0| 65 20 29 0d 0a 09 20 20 | 20 20 20 20 20 09 4b 44 |e )... | .KD|
|000018e0| 72 69 76 65 72 4c 65 61 | 76 65 28 20 66 61 6c 73 |riverLea|ve( fals|
|000018f0| 65 20 29 3b 0d 0a 0d 0a | 09 09 2f 2f 20 70 61 77 |e );....|..// paw|
|00001900| 6e 20 64 69 65 64 0d 0a | 09 09 69 66 20 28 20 69 |n died..|..if ( i|
|00001910| 6e 73 74 69 67 61 74 65 | 64 42 79 20 21 3d 20 4e |nstigate|dBy != N|
|00001920| 6f 6e 65 20 29 0d 0a 09 | 09 09 4b 69 6c 6c 65 72 |one )...|..Killer|
|00001930| 20 3d 20 69 6e 73 74 69 | 67 61 74 65 64 42 79 2e | = insti|gatedBy.|
|00001940| 47 65 74 4b 69 6c 6c 65 | 72 43 6f 6e 74 72 6f 6c |GetKille|rControl|
|00001950| 6c 65 72 28 29 3b 0d 0a | 09 09 65 6c 73 65 20 69 |ler();..|..else i|
|00001960| 66 20 28 20 28 44 61 6d | 61 67 65 54 79 70 65 20 |f ( (Dam|ageType |
|00001970| 21 3d 20 4e 6f 6e 65 29 | 20 26 26 20 44 61 6d 61 |!= None)| && Dama|
|00001980| 67 65 54 79 70 65 2e 64 | 65 66 61 75 6c 74 2e 62 |geType.d|efault.b|
|00001990| 44 65 6c 61 79 65 64 44 | 61 6d 61 67 65 20 29 0d |DelayedD|amage ).|
|000019a0| 0a 09 09 09 4b 69 6c 6c | 65 72 20 3d 20 44 65 6c |....Kill|er = Del|
|000019b0| 61 79 65 64 44 61 6d 61 | 67 65 49 6e 73 74 69 67 |ayedDama|geInstig|
|000019c0| 61 74 6f 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 3b 0d |atorCont|roller;.|
|000019d0| 0a 0d 0a 09 09 48 65 61 | 6c 74 68 20 3d 20 30 3b |.....Hea|lth = 0;|
|000019e0| 0d 0a 0d 0a 09 09 54 65 | 61 72 4f 66 66 4d 6f 6d |......Te|arOffMom|
|000019f0| 65 6e 74 75 6d 20 3d 20 | 6d 6f 6d 65 6e 74 75 6d |entum = |momentum|
|00001a00| 3b 0d 0a 0d 0a 09 09 44 | 69 65 64 28 4b 69 6c 6c |;......D|ied(Kill|
|00001a10| 65 72 2c 20 64 61 6d 61 | 67 65 54 79 70 65 2c 20 |er, dama|geType, |
|00001a20| 48 69 74 4c 6f 63 61 74 | 69 6f 6e 29 3b 0d 0a 09 |HitLocat|ion);...|
|00001a30| 7d 0d 0a 09 65 6c 73 65 | 0d 0a 09 7b 0d 0a 09 09 |}...else|...{....|
|00001a40| 69 66 20 28 20 43 6f 6e | 74 72 6f 6c 6c 65 72 20 |if ( Con|troller |
|00001a50| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 09 43 6f |!= None |).....Co|
|00001a60| 6e 74 72 6f 6c 6c 65 72 | 2e 4e 6f 74 69 66 79 54 |ntroller|.NotifyT|
|00001a70| 61 6b 65 48 69 74 28 69 | 6e 73 74 69 67 61 74 65 |akeHit(i|nstigate|
|00001a80| 64 42 79 2c 20 48 69 74 | 4c 6f 63 61 74 69 6f 6e |dBy, Hit|Location|
|00001a90| 2c 20 61 63 74 75 61 6c | 44 61 6d 61 67 65 2c 20 |, actual|Damage, |
|00001aa0| 44 61 6d 61 67 65 54 79 | 70 65 2c 20 4d 6f 6d 65 |DamageTy|pe, Mome|
|00001ab0| 6e 74 75 6d 29 3b 0d 0a | 09 7d 0d 0a 0d 0a 09 4d |ntum);..|.}.....M|
|00001ac0| 61 6b 65 4e 6f 69 73 65 | 28 31 2e 30 29 3b 0d 0a |akeNoise|(1.0);..|
|00001ad0| 7d 0d 0a 0d 0a 0d 0a 2f | 2f 20 53 70 61 77 6e 20 |}....../|/ Spawn |
|00001ae0| 45 78 70 6c 6f 73 69 6f | 6e 20 46 58 0d 0a 73 69 |Explosio|n FX..si|
|00001af0| 6d 75 6c 61 74 65 64 20 | 66 75 6e 63 74 69 6f 6e |mulated |function|
|00001b00| 20 45 78 70 6c 6f 64 65 | 28 20 76 65 63 74 6f 72 | Explode|( vector|
|00001b10| 20 48 69 74 4c 6f 63 61 | 74 69 6f 6e 2c 20 76 65 | HitLoca|tion, ve|
|00001b20| 63 74 6f 72 20 48 69 74 | 4e 6f 72 6d 61 6c 20 29 |ctor Hit|Normal )|
|00001b30| 0d 0a 7b 0d 0a 09 69 66 | 20 28 20 4c 65 76 65 6c |..{...if| ( Level|
|00001b40| 2e 4e 65 74 4d 6f 64 65 | 20 21 3d 20 4e 4d 5f 44 |.NetMode| != NM_D|
|00001b50| 65 64 69 63 61 74 65 64 | 53 65 72 76 65 72 20 29 |edicated|Server )|
|00001b60| 0d 0a 09 09 45 78 70 6c | 6f 73 69 6f 6e 45 66 66 |....Expl|osionEff|
|00001b70| 65 63 74 20 3d 20 53 70 | 61 77 6e 28 63 6c 61 73 |ect = Sp|awn(clas|
|00001b80| 73 27 46 58 5f 53 70 61 | 63 65 46 69 67 68 74 65 |s'FX_Spa|ceFighte|
|00001b90| 72 5f 45 78 70 6c 6f 73 | 69 6f 6e 27 2c 20 53 65 |r_Explos|ion', Se|
|00001ba0| 6c 66 2c 2c 20 48 69 74 | 4c 6f 63 61 74 69 6f 6e |lf,, Hit|Location|
|00001bb0| 2c 20 52 6f 74 61 74 69 | 6f 6e 29 3b 0d 0a 7d 0d |, Rotati|on);..}.|
|00001bc0| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 69 6e |...simul|ated fin|
|00001bd0| 61 6c 20 66 75 6e 63 74 | 69 6f 6e 20 66 6c 6f 61 |al funct|ion floa|
|00001be0| 74 09 43 61 6c 63 49 6e | 65 72 74 69 61 28 66 6c |t.CalcIn|ertia(fl|
|00001bf0| 6f 61 74 20 44 65 6c 74 | 61 54 69 6d 65 2c 20 66 |oat Delt|aTime, f|
|00001c00| 6c 6f 61 74 20 46 72 69 | 63 74 69 6f 6e 46 61 63 |loat Fri|ctionFac|
|00001c10| 74 6f 72 2c 20 66 6c 6f | 61 74 20 4f 6c 64 56 61 |tor, flo|at OldVa|
|00001c20| 6c 75 65 2c 20 66 6c 6f | 61 74 20 4e 65 77 56 61 |lue, flo|at NewVa|
|00001c30| 6c 75 65 29 0d 0a 7b 0d | 0a 09 6c 6f 63 61 6c 20 |lue)..{.|..local |
|00001c40| 66 6c 6f 61 74 09 46 72 | 69 63 74 69 6f 6e 3b 0d |float.Fr|iction;.|
|00001c50| 0a 0d 0a 09 46 72 69 63 | 74 69 6f 6e 20 3d 20 31 |....Fric|tion = 1|
|00001c60| 2e 66 20 2d 20 46 43 6c | 61 6d 70 28 20 28 30 2e |.f - FCl|amp( (0.|
|00001c70| 30 32 2a 46 72 69 63 74 | 69 6f 6e 46 61 63 74 6f |02*Frict|ionFacto|
|00001c80| 72 29 20 2a 2a 20 44 65 | 6c 74 61 54 69 6d 65 2c |r) ** De|ltaTime,|
|00001c90| 20 30 2e 66 2c 20 31 2e | 66 29 3b 0d 0a 09 72 65 | 0.f, 1.|f);...re|
|00001ca0| 74 75 72 6e 09 4f 6c 64 | 56 61 6c 75 65 2a 46 72 |turn.Old|Value*Fr|
|00001cb0| 69 63 74 69 6f 6e 20 2b | 20 4e 65 77 56 61 6c 75 |iction +| NewValu|
|00001cc0| 65 3b 0d 0a 7d 0d 0a 0d | 0a 0d 0a 73 69 6d 75 6c |e;..}...|...simul|
|00001cd0| 61 74 65 64 20 65 76 65 | 6e 74 20 50 6c 61 79 44 |ated eve|nt PlayD|
|00001ce0| 79 69 6e 67 28 63 6c 61 | 73 73 3c 44 61 6d 61 67 |ying(cla|ss<Damag|
|00001cf0| 65 54 79 70 65 3e 20 44 | 61 6d 61 67 65 54 79 70 |eType> D|amageTyp|
|00001d00| 65 2c 20 76 65 63 74 6f | 72 20 48 69 74 4c 6f 63 |e, vecto|r HitLoc|
|00001d10| 29 0d 0a 7b 0d 0a 09 45 | 78 70 6c 6f 64 65 28 20 |)..{...E|xplode( |
|00001d20| 4c 6f 63 61 74 69 6f 6e | 2c 20 76 65 63 74 28 30 |Location|, vect(0|
|00001d30| 2c 30 2c 31 29 20 29 3b | 0d 0a 0d 0a 09 69 66 20 |,0,1) );|.....if |
|00001d40| 28 20 4c 65 76 65 6c 2e | 47 61 6d 65 20 21 3d 20 |( Level.|Game != |
|00001d50| 4e 6f 6e 65 20 29 0d 0a | 09 09 4c 65 76 65 6c 2e |None )..|..Level.|
|00001d60| 47 61 6d 65 2e 44 69 73 | 63 61 72 64 49 6e 76 65 |Game.Dis|cardInve|
|00001d70| 6e 74 6f 72 79 28 20 53 | 65 6c 66 20 29 3b 0d 0a |ntory( S|elf );..|
|00001d80| 0d 0a 09 2f 2f 20 4d 61 | 6b 65 20 73 75 72 65 20 |...// Ma|ke sure |
|00001d90| 70 6c 61 79 65 72 20 63 | 6f 6e 74 72 6f 6c 6c 65 |player c|ontrolle|
|00001da0| 72 20 69 73 20 61 63 74 | 75 61 6c 6c 79 20 70 6f |r is act|ually po|
|00001db0| 73 73 65 73 73 69 6e 67 | 20 74 68 65 20 76 65 68 |ssessing| the veh|
|00001dc0| 69 63 6c 65 2e 2e 20 28 | 73 69 6e 63 65 20 77 65 |icle.. (|since we|
|00001dd0| 20 66 6f 72 63 65 64 20 | 69 74 20 69 6e 20 43 6c | forced |it in Cl|
|00001de0| 69 65 6e 74 4b 44 72 69 | 76 65 72 45 6e 74 65 72 |ientKDri|verEnter|
|00001df0| 29 0d 0a 09 69 66 20 28 | 20 50 6c 61 79 65 72 43 |)...if (| PlayerC|
|00001e00| 6f 6e 74 72 6f 6c 6c 65 | 72 28 43 6f 6e 74 72 6f |ontrolle|r(Contro|
|00001e10| 6c 6c 65 72 29 20 21 3d | 20 4e 6f 6e 65 20 26 26 |ller) !=| None &&|
|00001e20| 20 50 6c 61 79 65 72 43 | 6f 6e 74 72 6f 6c 6c 65 | PlayerC|ontrolle|
|00001e30| 72 28 43 6f 6e 74 72 6f | 6c 6c 65 72 29 2e 50 61 |r(Contro|ller).Pa|
|00001e40| 77 6e 20 21 3d 20 53 65 | 6c 66 20 29 0d 0a 09 09 |wn != Se|lf )....|
|00001e50| 43 6f 6e 74 72 6f 6c 6c | 65 72 20 3d 20 4e 6f 6e |Controll|er = Non|
|00001e60| 65 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 50 6c 61 79 |e;.....i|f ( Play|
|00001e70| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 28 43 6f 6e |erContro|ller(Con|
|00001e80| 74 72 6f 6c 6c 65 72 29 | 20 21 3d 20 4e 6f 6e 65 |troller)| != None|
|00001e90| 20 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 20 62 | )...{..|..if ( b|
|00001ea0| 44 72 61 77 44 72 69 76 | 65 72 49 6e 54 50 20 26 |DrawDriv|erInTP &|
|00001eb0| 26 20 44 72 69 76 65 72 | 20 21 3d 20 4e 6f 6e 65 |& Driver| != None|
|00001ec0| 20 29 09 2f 2f 20 76 69 | 65 77 20 64 72 69 76 65 | ).// vi|ew drive|
|00001ed0| 72 20 64 79 69 6e 67 0d | 0a 09 09 09 50 6c 61 79 |r dying.|....Play|
|00001ee0| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 28 43 6f 6e |erContro|ller(Con|
|00001ef0| 74 72 6f 6c 6c 65 72 29 | 2e 53 65 74 56 69 65 77 |troller)|.SetView|
|00001f00| 54 61 72 67 65 74 28 20 | 44 72 69 76 65 72 20 29 |Target( |Driver )|
|00001f10| 3b 0d 0a 09 09 65 6c 73 | 65 0d 0a 09 09 09 50 6c |;....els|e.....Pl|
|00001f20| 61 79 65 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 28 43 |ayerCont|roller(C|
|00001f30| 6f 6e 74 72 6f 6c 6c 65 | 72 29 2e 53 65 74 56 69 |ontrolle|r).SetVi|
|00001f40| 65 77 54 61 72 67 65 74 | 28 20 53 65 6c 66 20 29 |ewTarget|( Self )|
|00001f50| 3b 0d 0a 09 7d 0d 0a 20 | 20 20 20 0d 0a 09 62 43 |;...}.. | ...bC|
|00001f60| 61 6e 54 65 6c 65 70 6f | 72 74 20 3d 20 66 61 6c |anTelepo|rt = fal|
|00001f70| 73 65 3b 0d 0a 20 20 20 | 20 62 52 65 70 6c 69 63 |se;.. | bReplic|
|00001f80| 61 74 65 4d 6f 76 65 6d | 65 6e 74 20 3d 20 66 61 |ateMovem|ent = fa|
|00001f90| 6c 73 65 3b 0d 0a 20 20 | 20 20 62 54 65 61 72 4f |lse;.. | bTearO|
|00001fa0| 66 66 20 3d 20 74 72 75 | 65 3b 0d 0a 20 20 20 20 |ff = tru|e;.. |
|00001fb0| 62 50 6c 61 79 65 64 44 | 65 61 74 68 20 3d 20 74 |bPlayedD|eath = t|
|00001fc0| 72 75 65 3b 0d 0a 0d 0a | 09 47 6f 74 6f 53 74 61 |rue;....|.GotoSta|
|00001fd0| 74 65 28 27 44 79 69 6e | 67 27 29 3b 0d 0a 7d 0d |te('Dyin|g');..}.|
|00001fe0| 0a 0d 0a 66 75 6e 63 74 | 69 6f 6e 20 6e 61 6d 65 |...funct|ion name|
|00001ff0| 20 47 65 74 57 65 61 70 | 6f 6e 42 6f 6e 65 46 6f | GetWeap|onBoneFo|
|00002000| 72 28 49 6e 76 65 6e 74 | 6f 72 79 20 49 29 0d 0a |r(Invent|ory I)..|
|00002010| 7b 0d 0a 09 72 65 74 75 | 72 6e 20 27 27 3b 0d 0a |{...retu|rn '';..|
|00002020| 7d 0d 0a 0d 0a 2f 2f 20 | 65 78 70 6c 6f 64 65 0d |}....// |explode.|
|00002030| 0a 73 74 61 74 65 20 44 | 79 69 6e 67 0d 0a 7b 0d |.state D|ying..{.|
|00002040| 0a 69 67 6e 6f 72 65 73 | 20 54 72 69 67 67 65 72 |.ignores| Trigger|
|00002050| 2c 20 42 75 6d 70 2c 20 | 48 69 74 57 61 6c 6c 2c |, Bump, |HitWall,|
|00002060| 20 48 65 61 64 56 6f 6c | 75 6d 65 43 68 61 6e 67 | HeadVol|umeChang|
|00002070| 65 2c 20 50 68 79 73 69 | 63 73 56 6f 6c 75 6d 65 |e, Physi|csVolume|
|00002080| 43 68 61 6e 67 65 2c 20 | 46 61 6c 6c 69 6e 67 2c |Change, |Falling,|
|00002090| 20 42 72 65 61 74 68 54 | 69 6d 65 72 3b 0d 0a 0d | BreathT|imer;...|
|000020a0| 0a 09 2f 2f 73 69 6d 75 | 6c 61 74 65 64 20 66 75 |..//simu|lated fu|
|000020b0| 6e 63 74 69 6f 6e 20 50 | 6c 61 79 44 79 69 6e 67 |nction P|layDying|
|000020c0| 28 63 6c 61 73 73 3c 44 | 61 6d 61 67 65 54 79 70 |(class<D|amageTyp|
|000020d0| 65 3e 20 44 61 6d 61 67 | 65 54 79 70 65 2c 20 76 |e> Damag|eType, v|
|000020e0| 65 63 74 6f 72 20 48 69 | 74 4c 6f 63 29 20 7b 7d |ector Hi|tLoc) {}|
|000020f0| 0d 0a 09 65 76 65 6e 74 | 20 43 68 61 6e 67 65 41 |...event| ChangeA|
|00002100| 6e 69 6d 61 74 69 6f 6e | 28 29 20 7b 7d 0d 0a 09 |nimation|() {}...|
|00002110| 65 76 65 6e 74 20 53 74 | 6f 70 50 6c 61 79 46 69 |event St|opPlayFi|
|00002120| 72 69 6e 67 28 29 20 7b | 7d 0d 0a 09 66 75 6e 63 |ring() {|}...func|
|00002130| 74 69 6f 6e 20 50 6c 61 | 79 46 69 72 69 6e 67 28 |tion Pla|yFiring(|
|00002140| 66 6c 6f 61 74 20 52 61 | 74 65 2c 20 6e 61 6d 65 |float Ra|te, name|
|00002150| 20 46 69 72 69 6e 67 4d | 6f 64 65 29 20 7b 7d 0d | FiringM|ode) {}.|
|00002160| 0a 09 66 75 6e 63 74 69 | 6f 6e 20 50 6c 61 79 57 |..functi|on PlayW|
|00002170| 65 61 70 6f 6e 53 77 69 | 74 63 68 28 57 65 61 70 |eaponSwi|tch(Weap|
|00002180| 6f 6e 20 4e 65 77 57 65 | 61 70 6f 6e 29 20 7b 7d |on NewWe|apon) {}|
|00002190| 0d 0a 09 66 75 6e 63 74 | 69 6f 6e 20 50 6c 61 79 |...funct|ion Play|
|000021a0| 54 61 6b 65 48 69 74 28 | 76 65 63 74 6f 72 20 48 |TakeHit(|vector H|
|000021b0| 69 74 4c 6f 63 2c 20 69 | 6e 74 20 44 61 6d 61 67 |itLoc, i|nt Damag|
|000021c0| 65 2c 20 63 6c 61 73 73 | 3c 44 61 6d 61 67 65 54 |e, class|<DamageT|
|000021d0| 79 70 65 3e 20 64 61 6d | 61 67 65 54 79 70 65 29 |ype> dam|ageType)|
|000021e0| 20 7b 7d 0d 0a 09 73 69 | 6d 75 6c 61 74 65 64 20 | {}...si|mulated |
|000021f0| 66 75 6e 63 74 69 6f 6e | 20 50 6c 61 79 4e 65 78 |function| PlayNex|
|00002200| 74 41 6e 69 6d 61 74 69 | 6f 6e 28 29 20 7b 7d 0d |tAnimati|on() {}.|
|00002210| 0a 09 65 76 65 6e 74 20 | 46 65 6c 6c 4f 75 74 4f |..event |FellOutO|
|00002220| 66 57 6f 72 6c 64 28 65 | 4b 69 6c 6c 5a 54 79 70 |fWorld(e|KillZTyp|
|00002230| 65 20 4b 69 6c 6c 54 79 | 70 65 29 20 7b 09 7d 0d |e KillTy|pe) {.}.|
|00002240| 0a 09 66 75 6e 63 74 69 | 6f 6e 20 4c 61 6e 64 65 |..functi|on Lande|
|00002250| 64 28 76 65 63 74 6f 72 | 20 48 69 74 4e 6f 72 6d |d(vector| HitNorm|
|00002260| 61 6c 29 20 7b 09 7d 0d | 0a 09 66 75 6e 63 74 69 |al) {.}.|..functi|
|00002270| 6f 6e 20 52 65 64 75 63 | 65 43 79 6c 69 6e 64 65 |on Reduc|eCylinde|
|00002280| 72 28 29 20 7b 20 7d 0d | 0a 09 66 75 6e 63 74 69 |r() { }.|..functi|
|00002290| 6f 6e 20 4c 61 6e 64 54 | 68 75 6d 70 28 29 20 7b |on LandT|hump() {|
|000022a0| 09 7d 0d 0a 09 65 76 65 | 6e 74 20 41 6e 69 6d 45 |.}...eve|nt AnimE|
|000022b0| 6e 64 28 69 6e 74 20 43 | 68 61 6e 6e 65 6c 29 20 |nd(int C|hannel) |
|000022c0| 7b 09 7d 0d 0a 09 66 75 | 6e 63 74 69 6f 6e 20 4c |{.}...fu|nction L|
|000022d0| 69 65 53 74 69 6c 6c 28 | 29 20 7b 7d 0d 0a 09 73 |ieStill(|) {}...s|
|000022e0| 69 6e 67 75 6c 61 72 20 | 66 75 6e 63 74 69 6f 6e |ingular |function|
|000022f0| 20 42 61 73 65 43 68 61 | 6e 67 65 28 29 20 7b 09 | BaseCha|nge() {.|
|00002300| 7d 0d 0a 09 66 75 6e 63 | 74 69 6f 6e 20 44 69 65 |}...func|tion Die|
|00002310| 64 28 43 6f 6e 74 72 6f | 6c 6c 65 72 20 4b 69 6c |d(Contro|ller Kil|
|00002320| 6c 65 72 2c 20 63 6c 61 | 73 73 3c 44 61 6d 61 67 |ler, cla|ss<Damag|
|00002330| 65 54 79 70 65 3e 20 64 | 61 6d 61 67 65 54 79 70 |eType> d|amageTyp|
|00002340| 65 2c 20 76 65 63 74 6f | 72 20 48 69 74 4c 6f 63 |e, vecto|r HitLoc|
|00002350| 61 74 69 6f 6e 29 20 7b | 7d 0d 0a 09 66 75 6e 63 |ation) {|}...func|
|00002360| 74 69 6f 6e 20 54 61 6b | 65 44 61 6d 61 67 65 28 |tion Tak|eDamage(|
|00002370| 20 69 6e 74 20 44 61 6d | 61 67 65 2c 20 50 61 77 | int Dam|age, Paw|
|00002380| 6e 20 69 6e 73 74 69 67 | 61 74 65 64 42 79 2c 20 |n instig|atedBy, |
|00002390| 56 65 63 74 6f 72 20 68 | 69 74 6c 6f 63 61 74 69 |Vector h|itlocati|
|000023a0| 6f 6e 2c 0d 0a 09 09 09 | 09 09 09 09 56 65 63 74 |on,.....|....Vect|
|000023b0| 6f 72 20 6d 6f 6d 65 6e | 74 75 6d 2c 20 63 6c 61 |or momen|tum, cla|
|000023c0| 73 73 3c 44 61 6d 61 67 | 65 54 79 70 65 3e 20 64 |ss<Damag|eType> d|
|000023d0| 61 6d 61 67 65 54 79 70 | 65 29 20 7b 7d 0d 0a 0d |amageTyp|e) {}...|
|000023e0| 0a 09 66 75 6e 63 74 69 | 6f 6e 20 55 70 64 61 74 |..functi|on Updat|
|000023f0| 65 52 6f 63 6b 65 74 41 | 63 63 65 6c 65 72 61 74 |eRocketA|ccelerat|
|00002400| 69 6f 6e 28 66 6c 6f 61 | 74 20 44 65 6c 74 61 54 |ion(floa|t DeltaT|
|00002410| 69 6d 65 2c 20 66 6c 6f | 61 74 20 59 61 77 43 68 |ime, flo|at YawCh|
|00002420| 61 6e 67 65 2c 20 66 6c | 6f 61 74 20 50 69 74 63 |ange, fl|oat Pitc|
|00002430| 68 43 68 61 6e 67 65 29 | 20 09 7b 20 7d 0d 0a 09 |hChange)| .{ }...|
|00002440| 66 75 6e 63 74 69 6f 6e | 20 56 65 68 69 63 6c 65 |function| Vehicle|
|00002450| 53 77 69 74 63 68 56 69 | 65 77 28 62 6f 6f 6c 20 |SwitchVi|ew(bool |
|00002460| 62 55 70 64 61 74 69 6e | 67 29 20 7b 7d 0d 0a 09 |bUpdatin|g) {}...|
|00002470| 66 75 6e 63 74 69 6f 6e | 20 50 72 6f 63 65 73 73 |function| Process|
|00002480| 4d 6f 76 65 28 66 6c 6f | 61 74 20 44 65 6c 74 61 |Move(flo|at Delta|
|00002490| 54 69 6d 65 2c 20 76 65 | 63 74 6f 72 20 4e 65 77 |Time, ve|ctor New|
|000024a0| 41 63 63 65 6c 2c 20 65 | 44 6f 75 62 6c 65 43 6c |Accel, e|DoubleCl|
|000024b0| 69 63 6b 44 69 72 20 44 | 6f 75 62 6c 65 43 6c 69 |ickDir D|oubleCli|
|000024c0| 63 6b 4d 6f 76 65 2c 20 | 72 6f 74 61 74 6f 72 20 |ckMove, |rotator |
|000024d0| 44 65 6c 74 61 52 6f 74 | 29 3b 0d 0a 09 66 75 6e |DeltaRot|);...fun|
|000024e0| 63 74 69 6f 6e 20 44 72 | 69 76 65 72 44 69 65 64 |ction Dr|iverDied|
|000024f0| 28 29 3b 0d 0a 0d 0a 09 | 73 69 6d 75 6c 61 74 65 |();.....|simulate|
|00002500| 64 20 66 75 6e 63 74 69 | 6f 6e 20 54 69 6d 65 72 |d functi|on Timer|
|00002510| 28 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 20 21 |()...{..|..if ( !|
|00002520| 62 44 65 6c 65 74 65 4d | 65 20 29 0d 0a 09 09 09 |bDeleteM|e ).....|
|00002530| 44 65 73 74 72 6f 79 28 | 29 3b 0d 0a 09 7d 0d 0a |Destroy(|);...}..|
|00002540| 0d 0a 20 20 20 20 66 75 | 6e 63 74 69 6f 6e 20 42 |.. fu|nction B|
|00002550| 65 67 69 6e 53 74 61 74 | 65 28 29 0d 0a 20 20 20 |eginStat|e().. |
|00002560| 20 7b 0d 0a 09 09 6c 6f | 63 61 6c 20 50 6c 61 79 | {....lo|cal Play|
|00002570| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 09 50 43 2c |erContro|ller.PC,|
|00002580| 20 4c 6f 63 61 6c 50 6c | 61 79 65 72 3b 0d 0a 09 | LocalPl|ayer;...|
|00002590| 09 0d 0a 09 09 4c 6f 63 | 61 6c 50 6c 61 79 65 72 |.....Loc|alPlayer|
|000025a0| 09 09 3d 20 4c 65 76 65 | 6c 2e 47 65 74 4c 6f 63 |..= Leve|l.GetLoc|
|000025b0| 61 6c 50 6c 61 79 65 72 | 43 6f 6e 74 72 6f 6c 6c |alPlayer|Controll|
|000025c0| 65 72 28 29 3b 0d 0a 09 | 09 41 6d 62 69 65 6e 74 |er();...|.Ambient|
|000025d0| 53 6f 75 6e 64 09 3d 20 | 4e 6f 6e 65 3b 0d 0a 09 |Sound.= |None;...|
|000025e0| 09 56 65 6c 6f 63 69 74 | 79 09 09 3d 20 76 65 63 |.Velocit|y..= vec|
|000025f0| 74 28 30 2c 30 2c 30 29 | 3b 0d 0a 09 09 41 63 63 |t(0,0,0)|;....Acc|
|00002600| 65 6c 65 72 61 74 69 6f | 6e 09 3d 20 56 65 6c 6f |eleratio|n.= Velo|
|00002610| 63 69 74 79 3b 0d 0a 09 | 09 62 48 69 64 64 65 6e |city;...|.bHidden|
|00002620| 09 09 09 3d 20 74 72 75 | 65 3b 0d 0a 0d 0a 09 09 |...= tru|e;......|
|00002630| 53 65 74 50 68 79 73 69 | 63 73 28 20 50 48 59 53 |SetPhysi|cs( PHYS|
|00002640| 5f 4e 6f 6e 65 20 29 3b | 0d 0a 09 09 53 65 74 43 |_None );|....SetC|
|00002650| 6f 6c 6c 69 73 69 6f 6e | 28 66 61 6c 73 65 2c 20 |ollision|(false, |
|00002660| 66 61 6c 73 65 2c 20 66 | 61 6c 73 65 29 3b 0d 0a |false, f|alse);..|
|00002670| 0d 0a 09 09 2f 2f 20 4d | 61 6b 65 20 73 75 72 65 |....// M|ake sure|
|00002680| 20 70 6c 61 79 65 72 20 | 63 6f 6e 74 72 6f 6c 6c | player |controll|
|00002690| 65 72 20 69 73 20 61 63 | 74 75 61 6c 6c 79 20 70 |er is ac|tually p|
|000026a0| 6f 73 73 65 73 73 69 6e | 67 20 74 68 65 20 76 65 |ossessin|g the ve|
|000026b0| 68 69 63 6c 65 2e 2e 20 | 28 73 69 6e 63 65 20 77 |hicle.. |(since w|
|000026c0| 65 20 66 6f 72 63 65 64 | 20 69 74 20 69 6e 20 43 |e forced| it in C|
|000026d0| 6c 69 65 6e 74 4b 44 72 | 69 76 65 72 45 6e 74 65 |lientKDr|iverEnte|
|000026e0| 72 29 0d 0a 09 09 69 66 | 20 28 20 50 6c 61 79 65 |r)....if| ( Playe|
|000026f0| 72 43 6f 6e 74 72 6f 6c | 6c 65 72 28 43 6f 6e 74 |rControl|ler(Cont|
|00002700| 72 6f 6c 6c 65 72 29 20 | 21 3d 20 4e 6f 6e 65 20 |roller) |!= None |
|00002710| 26 26 20 50 6c 61 79 65 | 72 43 6f 6e 74 72 6f 6c |&& Playe|rControl|
|00002720| 6c 65 72 28 43 6f 6e 74 | 72 6f 6c 6c 65 72 29 2e |ler(Cont|roller).|
|00002730| 50 61 77 6e 20 21 3d 20 | 53 65 6c 66 20 29 0d 0a |Pawn != |Self )..|
|00002740| 09 09 09 43 6f 6e 74 72 | 6f 6c 6c 65 72 20 3d 20 |...Contr|oller = |
|00002750| 4e 6f 6e 65 3b 0d 0a 0d | 0a 09 09 2f 2f 20 43 6c |None;...|...// Cl|
|00002760| 65 61 72 20 70 72 65 76 | 69 6f 75 73 20 63 6f 6e |ear prev|ious con|
|00002770| 74 72 6f 6c 6c 65 72 20 | 69 66 20 6e 6f 74 20 63 |troller |if not c|
|00002780| 75 72 72 65 6e 74 6c 79 | 20 76 69 65 77 69 6e 67 |urrently| viewing|
|00002790| 20 74 68 69 73 20 76 65 | 68 69 63 6c 65 2e 0d 0a | this ve|hicle...|
|000027a0| 09 09 69 66 20 28 20 50 | 6c 61 79 65 72 43 6f 6e |..if ( P|layerCon|
|000027b0| 74 72 6f 6c 6c 65 72 28 | 44 65 73 74 72 6f 79 50 |troller(|DestroyP|
|000027c0| 72 65 76 43 6f 6e 74 72 | 6f 6c 6c 65 72 29 20 21 |revContr|oller) !|
|000027d0| 3d 20 4e 6f 6e 65 20 26 | 26 20 50 6c 61 79 65 72 |= None &|& Player|
|000027e0| 43 6f 6e 74 72 6f 6c 6c | 65 72 28 44 65 73 74 72 |Controll|er(Destr|
|000027f0| 6f 79 50 72 65 76 43 6f | 6e 74 72 6f 6c 6c 65 72 |oyPrevCo|ntroller|
|00002800| 29 2e 56 69 65 77 54 61 | 72 67 65 74 20 21 3d 20 |).ViewTa|rget != |
|00002810| 53 65 6c 66 20 29 0d 0a | 09 09 09 44 65 73 74 72 |Self )..|...Destr|
|00002820| 6f 79 50 72 65 76 43 6f | 6e 74 72 6f 6c 6c 65 72 |oyPrevCo|ntroller|
|00002830| 20 3d 20 4e 6f 6e 65 3b | 0d 0a 0d 0a 09 09 69 66 | = None;|......if|
|00002840| 20 28 20 50 6c 61 79 65 | 72 43 6f 6e 74 72 6f 6c | ( Playe|rControl|
|00002850| 6c 65 72 28 43 6f 6e 74 | 72 6f 6c 6c 65 72 29 20 |ler(Cont|roller) |
|00002860| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 09 50 43 |!= None |).....PC|
|00002870| 20 3d 20 50 6c 61 79 65 | 72 43 6f 6e 74 72 6f 6c | = Playe|rControl|
|00002880| 6c 65 72 28 43 6f 6e 74 | 72 6f 6c 6c 65 72 29 3b |ler(Cont|roller);|
|00002890| 0d 0a 09 09 65 6c 73 65 | 20 69 66 20 28 20 50 6c |....else| if ( Pl|
|000028a0| 61 79 65 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 28 44 |ayerCont|roller(D|
|000028b0| 65 73 74 72 6f 79 50 72 | 65 76 43 6f 6e 74 72 6f |estroyPr|evContro|
|000028c0| 6c 6c 65 72 29 20 21 3d | 20 4e 6f 6e 65 20 29 0d |ller) !=| None ).|
|000028d0| 0a 09 09 09 50 43 20 3d | 20 50 6c 61 79 65 72 43 |....PC =| PlayerC|
|000028e0| 6f 6e 74 72 6f 6c 6c 65 | 72 28 44 65 73 74 72 6f |ontrolle|r(Destro|
|000028f0| 79 50 72 65 76 43 6f 6e | 74 72 6f 6c 6c 65 72 29 |yPrevCon|troller)|
|00002900| 3b 0d 0a 0d 0a 09 09 2f | 2f 20 46 6f 72 63 65 20 |;....../|/ Force |
|00002910| 62 65 68 69 6e 64 20 76 | 69 65 77 0d 0a 09 09 69 |behind v|iew....i|
|00002920| 66 20 28 20 50 43 20 21 | 3d 20 4e 6f 6e 65 20 26 |f ( PC !|= None &|
|00002930| 26 20 21 50 43 2e 62 42 | 65 68 69 6e 64 56 69 65 |& !PC.bB|ehindVie|
|00002940| 77 20 29 0d 0a 09 09 09 | 50 43 2e 62 42 65 68 69 |w ).....|PC.bBehi|
|00002950| 6e 64 56 69 65 77 20 3d | 20 74 72 75 65 3b 0d 0a |ndView =| true;..|
|00002960| 0d 0a 09 09 69 66 20 28 | 20 44 72 69 76 65 72 20 |....if (| Driver |
|00002970| 21 3d 20 4e 6f 6e 65 20 | 26 26 20 62 44 72 61 77 |!= None |&& bDraw|
|00002980| 44 72 69 76 65 72 49 6e | 54 50 20 29 0d 0a 09 09 |DriverIn|TP )....|
|00002990| 09 44 65 73 74 72 6f 79 | 65 64 5f 48 61 6e 64 6c |.Destroy|ed_Handl|
|000029a0| 65 44 72 69 76 65 72 28 | 29 3b 0d 0a 0d 0a 09 09 |eDriver(|);......|
|000029b0| 2f 2f 20 49 66 20 73 65 | 72 76 65 72 2c 20 77 61 |// If se|rver, wa|
|000029c0| 69 74 20 61 20 73 65 63 | 6f 6e 64 20 66 6f 72 20 |it a sec|ond for |
|000029d0| 72 65 70 6c 69 63 61 74 | 69 6f 6e 0d 0a 09 09 69 |replicat|ion....i|
|000029e0| 66 20 28 20 4c 65 76 65 | 6c 2e 4e 65 74 4d 6f 64 |f ( Leve|l.NetMod|
|000029f0| 65 20 3d 3d 20 4e 4d 5f | 44 65 64 69 63 61 74 65 |e == NM_|Dedicate|
|00002a00| 64 53 65 72 76 65 72 20 | 7c 7c 20 4c 65 76 65 6c |dServer ||| Level|
|00002a10| 2e 4e 65 74 4d 6f 64 65 | 20 3d 3d 20 4e 4d 5f 4c |.NetMode| == NM_L|
|00002a20| 69 73 74 65 6e 53 65 72 | 76 65 72 20 29 09 0d 0a |istenSer|ver )...|
|00002a30| 09 09 09 53 65 74 54 69 | 6d 65 72 28 31 2e 66 2c |...SetTi|mer(1.f,|
|00002a40| 20 66 61 6c 73 65 29 3b | 0d 0a 09 09 65 6c 73 65 | false);|....else|
|00002a50| 20 69 66 20 28 20 28 44 | 72 69 76 65 72 20 3d 3d | if ( (D|river ==|
|00002a60| 20 4e 6f 6e 65 20 7c 7c | 20 21 62 44 72 61 77 44 | None ||| !bDrawD|
|00002a70| 72 69 76 65 72 49 6e 54 | 50 29 20 26 26 20 0d 0a |riverInT|P) && ..|
|00002a80| 09 09 09 28 20 28 50 43 | 20 21 3d 20 4e 6f 6e 65 |...( (PC| != None|
|00002a90| 20 29 20 7c 7c 20 28 4c | 6f 63 61 6c 50 6c 61 79 | ) || (L|ocalPlay|
|00002aa0| 65 72 20 21 3d 20 4e 6f | 6e 65 20 26 26 20 4c 6f |er != No|ne && Lo|
|00002ab0| 63 61 6c 50 6c 61 79 65 | 72 2e 56 69 65 77 54 61 |calPlaye|r.ViewTa|
|00002ac0| 72 67 65 74 20 3d 3d 20 | 53 65 6c 66 29 20 29 20 |rget == |Self) ) |
|00002ad0| 29 0d 0a 09 09 7b 0d 0a | 09 09 09 2f 2f 20 49 66 |)....{..|...// If|
|00002ae0| 20 6f 77 6e 65 64 20 62 | 79 20 70 6c 61 79 65 72 | owned b|y player|
|00002af0| 2c 20 6f 72 20 73 70 65 | 63 74 61 74 65 64 20 77 |, or spe|ctated w|
|00002b00| 61 69 74 20 61 20 62 69 | 74 20 73 6f 20 65 78 70 |ait a bi|t so exp|
|00002b10| 6c 6f 73 69 6f 6e 20 63 | 61 6e 20 62 65 20 76 69 |losion c|an be vi|
|00002b20| 65 77 65 64 0d 0a 09 09 | 09 2f 2f 20 28 69 66 20 |ewed....|.// (if |
|00002b30| 74 68 65 72 65 20 76 69 | 65 77 74 61 72 67 65 74 |there vi|ewtarget|
|00002b40| 20 69 73 20 6e 6f 74 20 | 61 6c 72 65 61 64 79 20 | is not |already |
|00002b50| 73 65 74 20 6f 6e 20 64 | 72 69 76 65 72 27 73 20 |set on d|river's |
|00002b60| 64 65 61 64 20 62 6f 64 | 79 29 0d 0a 09 09 09 69 |dead bod|y).....i|
|00002b70| 66 20 28 20 43 6f 6e 74 | 72 6f 6c 6c 65 72 20 21 |f ( Cont|roller !|
|00002b80| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 09 7b 0d 0a |= None )|.....{..|
|00002b90| 09 09 09 09 44 65 73 74 | 72 6f 79 50 72 65 76 43 |....Dest|royPrevC|
|00002ba0| 6f 6e 74 72 6f 6c 6c 65 | 72 20 3d 20 43 6f 6e 74 |ontrolle|r = Cont|
|00002bb0| 72 6f 6c 6c 65 72 3b 0d | 0a 09 09 09 09 43 6f 6e |roller;.|.....Con|
|00002bc0| 74 72 6f 6c 6c 65 72 2e | 53 65 74 52 6f 74 61 74 |troller.|SetRotat|
|00002bd0| 69 6f 6e 28 20 52 6f 74 | 61 74 69 6f 6e 20 29 3b |ion( Rot|ation );|
|00002be0| 0d 0a 09 09 09 09 43 6f | 6e 74 72 6f 6c 6c 65 72 |......Co|ntroller|
|00002bf0| 2e 50 61 77 6e 44 69 65 | 64 28 20 53 65 6c 66 20 |.PawnDie|d( Self |
|00002c00| 29 3b 0d 0a 09 09 09 09 | 44 65 73 74 72 6f 79 50 |);......|DestroyP|
|00002c10| 72 65 76 43 6f 6e 74 72 | 6f 6c 6c 65 72 2e 53 65 |revContr|oller.Se|
|00002c20| 74 52 6f 74 61 74 69 6f | 6e 28 20 52 6f 74 61 74 |tRotatio|n( Rotat|
|00002c30| 69 6f 6e 20 29 3b 0d 0a | 09 09 09 7d 0d 0a 09 09 |ion );..|...}....|
|00002c40| 09 65 6c 73 65 20 69 66 | 20 28 20 44 65 73 74 72 |.else if| ( Destr|
|00002c50| 6f 79 50 72 65 76 43 6f | 6e 74 72 6f 6c 6c 65 72 |oyPrevCo|ntroller|
|00002c60| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 09 7b | != None| ).....{|
|00002c70| 0d 0a 09 09 09 09 44 65 | 73 74 72 6f 79 50 72 65 |......De|stroyPre|
|00002c80| 76 43 6f 6e 74 72 6f 6c | 6c 65 72 2e 53 65 74 52 |vControl|ler.SetR|
|00002c90| 6f 74 61 74 69 6f 6e 28 | 20 52 6f 74 61 74 69 6f |otation(| Rotatio|
|00002ca0| 6e 20 29 3b 0d 0a 09 09 | 09 09 44 65 73 74 72 6f |n );....|..Destro|
|00002cb0| 79 50 72 65 76 43 6f 6e | 74 72 6f 6c 6c 65 72 2e |yPrevCon|troller.|
|00002cc0| 53 65 74 4c 6f 63 61 74 | 69 6f 6e 28 20 4c 6f 63 |SetLocat|ion( Loc|
|00002cd0| 61 74 69 6f 6e 20 29 3b | 0d 0a 09 09 09 7d 0d 0a |ation );|.....}..|
|00002ce0| 0d 0a 09 09 09 53 65 74 | 54 69 6d 65 72 28 35 2e |.....Set|Timer(5.|
|00002cf0| 66 2c 20 66 61 6c 73 65 | 29 3b 0d 0a 09 09 7d 0d |f, false|);....}.|
|00002d00| 0a 09 09 65 6c 73 65 0d | 0a 09 09 7b 0d 0a 09 09 |...else.|...{....|
|00002d10| 09 2f 2f 20 69 66 20 6e | 6f 74 20 6f 77 6e 65 64 |.// if n|ot owned|
|00002d20| 20 61 6e 64 20 6e 6f 74 | 20 73 70 65 63 74 61 74 | and not| spectat|
|00002d30| 65 64 20 74 68 65 6e 20 | 64 65 73 74 72 6f 79 20 |ed then |destroy |
|00002d40| 72 69 67 68 74 20 61 77 | 61 79 0d 0a 09 09 09 69 |right aw|ay.....i|
|00002d50| 66 20 28 20 43 6f 6e 74 | 72 6f 6c 6c 65 72 20 21 |f ( Cont|roller !|
|00002d60| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 09 09 43 6f |= None )|......Co|
|00002d70| 6e 74 72 6f 6c 6c 65 72 | 2e 50 61 77 6e 44 69 65 |ntroller|.PawnDie|
|00002d80| 64 28 20 53 65 6c 66 20 | 29 3b 0d 0a 0d 0a 09 09 |d( Self |);......|
|00002d90| 09 44 65 73 74 72 6f 79 | 28 29 3b 0d 0a 09 09 7d |.Destroy|();....}|
|00002da0| 0d 0a 0d 0a 20 20 20 20 | 7d 0d 0a 7d 0d 0a 0d 0a |.... |}..}....|
|00002db0| 2f 2f 0d 0a 2f 2f 20 48 | 55 44 0d 0a 2f 2f 0d 0a |//..// H|UD..//..|
|00002dc0| 0d 0a 73 69 6d 75 6c 61 | 74 65 64 20 66 75 6e 63 |..simula|ted func|
|00002dd0| 74 69 6f 6e 20 44 72 61 | 77 48 55 44 28 43 61 6e |tion Dra|wHUD(Can|
|00002de0| 76 61 73 20 43 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |vas C)..|{...loca|
|00002df0| 6c 20 50 6c 61 79 65 72 | 43 6f 6e 74 72 6f 6c 6c |l Player|Controll|
|00002e00| 65 72 09 50 43 3b 0d 0a | 0d 0a 09 2f 2f 20 44 6f |er.PC;..|...// Do|
|00002e10| 6e 27 74 20 64 72 61 77 | 20 69 66 20 70 6c 61 79 |n't draw| if play|
|00002e20| 65 72 20 69 73 20 64 65 | 61 64 2e 2e 2e 0d 0a 09 |er is de|ad......|
|00002e30| 69 66 20 28 20 48 65 61 | 6c 74 68 20 3c 20 31 20 |if ( Hea|lth < 1 |
|00002e40| 7c 7c 20 43 6f 6e 74 72 | 6f 6c 6c 65 72 20 3d 3d ||| Contr|oller ==|
|00002e50| 20 4e 6f 6e 65 20 7c 7c | 20 50 6c 61 79 65 72 43 | None ||| PlayerC|
|00002e60| 6f 6e 74 72 6f 6c 6c 65 | 72 28 43 6f 6e 74 72 6f |ontrolle|r(Contro|
|00002e70| 6c 6c 65 72 29 20 3d 3d | 20 4e 6f 6e 65 20 29 0d |ller) ==| None ).|
|00002e80| 0a 09 09 72 65 74 75 72 | 6e 3b 0d 0a 0d 0a 09 50 |...retur|n;.....P|
|00002e90| 43 20 3d 20 50 6c 61 79 | 65 72 43 6f 6e 74 72 6f |C = Play|erContro|
|00002ea0| 6c 6c 65 72 28 43 6f 6e | 74 72 6f 6c 6c 65 72 29 |ller(Con|troller)|
|00002eb0| 3b 0d 0a 09 44 72 61 77 | 56 65 68 69 63 6c 65 48 |;...Draw|VehicleH|
|00002ec0| 55 44 28 20 43 2c 20 50 | 43 20 29 3b 0d 0a 09 69 |UD( C, P|C );...i|
|00002ed0| 66 20 28 20 21 50 43 2e | 4d 79 48 55 44 2e 62 53 |f ( !PC.|MyHUD.bS|
|00002ee0| 68 6f 77 53 63 6f 72 65 | 62 6f 61 72 64 20 29 0d |howScore|board ).|
|00002ef0| 0a 09 7b 0d 0a 09 09 44 | 72 61 77 57 65 61 70 6f |..{....D|rawWeapo|
|00002f00| 6e 49 6e 66 6f 28 20 43 | 2c 20 50 43 2e 6d 79 48 |nInfo( C|, PC.myH|
|00002f10| 55 44 20 29 3b 0d 0a 09 | 09 69 66 20 28 20 62 43 |UD );...|.if ( bC|
|00002f20| 75 73 74 6f 6d 48 65 61 | 6c 74 68 44 69 73 70 6c |ustomHea|lthDispl|
|00002f30| 61 79 20 29 0d 0a 09 09 | 09 44 72 61 77 48 65 61 |ay )....|.DrawHea|
|00002f40| 6c 74 68 49 6e 66 6f 28 | 20 43 2c 20 50 43 20 29 |lthInfo(| C, PC )|
|00002f50| 3b 0d 0a 09 7d 0d 0a 7d | 0d 0a 0d 0a 73 69 6d 75 |;...}..}|....simu|
|00002f60| 6c 61 74 65 64 20 66 75 | 6e 63 74 69 6f 6e 20 53 |lated fu|nction S|
|00002f70| 70 65 63 69 61 6c 44 72 | 61 77 43 72 6f 73 73 68 |pecialDr|awCrossh|
|00002f80| 61 69 72 28 20 43 61 6e | 76 61 73 20 43 20 29 0d |air( Can|vas C ).|
|00002f90| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 76 65 63 74 6f |.{...loc|al vecto|
|00002fa0| 72 09 09 09 53 63 72 65 | 65 6e 50 6f 73 3b 0d 0a |r...Scre|enPos;..|
|00002fb0| 09 6c 6f 63 61 6c 20 50 | 6c 61 79 65 72 43 6f 6e |.local P|layerCon|
|00002fc0| 74 72 6f 6c 6c 65 72 09 | 50 43 3b 0d 0a 0d 0a 09 |troller.|PC;.....|
|00002fd0| 50 43 20 3d 20 50 6c 61 | 79 65 72 43 6f 6e 74 72 |PC = Pla|yerContr|
|00002fe0| 6f 6c 6c 65 72 28 43 6f | 6e 74 72 6f 6c 6c 65 72 |oller(Co|ntroller|
|00002ff0| 29 3b 0d 0a 09 0d 0a 09 | 2f 2f 20 44 6f 6e 27 74 |);......|// Don't|
|00003000| 20 64 72 61 77 20 69 66 | 20 70 6c 61 79 65 72 20 | draw if| player |
|00003010| 69 73 20 64 65 61 64 2e | 2e 2e 0d 0a 09 69 66 20 |is dead.|.....if |
|00003020| 28 20 48 65 61 6c 74 68 | 20 3c 20 31 20 7c 7c 20 |( Health| < 1 || |
|00003030| 50 43 20 3d 3d 20 4e 6f | 6e 65 20 20 7c 7c 20 50 |PC == No|ne || P|
|00003040| 43 2e 4d 79 48 55 44 2e | 62 53 68 6f 77 53 63 6f |C.MyHUD.|bShowSco|
|00003050| 72 65 62 6f 61 72 64 20 | 29 0d 0a 09 09 72 65 74 |reboard |)....ret|
|00003060| 75 72 6e 3b 0d 0a 0d 0a | 09 44 72 61 77 43 72 6f |urn;....|.DrawCro|
|00003070| 73 73 68 61 69 72 28 20 | 43 2c 20 53 63 72 65 65 |sshair( |C, Scree|
|00003080| 6e 50 6f 73 20 29 3b 0d | 0a 09 69 66 20 28 20 57 |nPos );.|..if ( W|
|00003090| 65 61 70 6f 6e 48 69 74 | 73 43 72 6f 73 73 68 61 |eaponHit|sCrossha|
|000030a0| 69 72 73 48 4c 28 29 20 | 29 0d 0a 09 09 44 72 61 |irsHL() |)....Dra|
|000030b0| 77 43 72 6f 73 73 68 61 | 69 72 41 6c 69 67 6e 6d |wCrossha|irAlignm|
|000030c0| 65 6e 74 28 20 43 2c 20 | 53 63 72 65 65 6e 50 6f |ent( C, |ScreenPo|
|000030d0| 73 20 29 3b 0d 0a 09 44 | 72 61 77 45 6e 65 6d 79 |s );...D|rawEnemy|
|000030e0| 4e 61 6d 65 28 20 43 2c | 20 48 55 44 43 44 65 61 |Name( C,| HUDCDea|
|000030f0| 74 68 4d 61 74 63 68 28 | 50 43 2e 6d 79 48 55 44 |thMatch(|PC.myHUD|
|00003100| 29 20 29 3b 0d 0a 7d 0d | 0a 0d 0a 73 69 6d 75 6c |) );..}.|...simul|
|00003110| 61 74 65 64 20 66 75 6e | 63 74 69 6f 6e 20 44 72 |ated fun|ction Dr|
|00003120| 61 77 56 65 68 69 63 6c | 65 48 55 44 28 20 43 61 |awVehicl|eHUD( Ca|
|00003130| 6e 76 61 73 20 43 2c 20 | 50 6c 61 79 65 72 43 6f |nvas C, |PlayerCo|
|00003140| 6e 74 72 6f 6c 6c 65 72 | 20 50 43 20 29 3b 0d 0a |ntroller| PC );..|
|00003150| 73 69 6d 75 6c 61 74 65 | 64 20 66 75 6e 63 74 69 |simulate|d functi|
|00003160| 6f 6e 20 44 72 61 77 57 | 65 61 70 6f 6e 49 6e 66 |on DrawW|eaponInf|
|00003170| 6f 28 20 43 61 6e 76 61 | 73 20 43 2c 20 48 55 44 |o( Canva|s C, HUD|
|00003180| 20 48 20 29 3b 0d 0a 73 | 69 6d 75 6c 61 74 65 64 | H );..s|imulated|
|00003190| 20 66 75 6e 63 74 69 6f | 6e 20 44 72 61 77 48 65 | functio|n DrawHe|
|000031a0| 61 6c 74 68 49 6e 66 6f | 28 20 43 61 6e 76 61 73 |althInfo|( Canvas|
|000031b0| 20 43 2c 20 50 6c 61 79 | 65 72 43 6f 6e 74 72 6f | C, Play|erContro|
|000031c0| 6c 6c 65 72 20 50 43 20 | 29 3b 0d 0a 0d 0a 73 69 |ller PC |);....si|
|000031d0| 6d 75 6c 61 74 65 64 20 | 66 75 6e 63 74 69 6f 6e |mulated |function|
|000031e0| 20 62 6f 6f 6c 20 44 72 | 61 77 43 72 6f 73 73 68 | bool Dr|awCrossh|
|000031f0| 61 69 72 28 20 43 61 6e | 76 61 73 20 43 2c 20 6f |air( Can|vas C, o|
|00003200| 75 74 20 76 65 63 74 6f | 72 20 53 63 72 65 65 6e |ut vecto|r Screen|
|00003210| 50 6f 73 20 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |Pos )..{|...local|
|00003220| 20 76 65 63 74 6f 72 09 | 48 69 74 4c 6f 63 61 74 | vector.|HitLocat|
|00003230| 69 6f 6e 3b 0d 0a 09 6c | 6f 63 61 6c 20 66 6c 6f |ion;...l|ocal flo|
|00003240| 61 74 09 09 52 61 74 69 | 6f 58 2c 20 52 61 74 69 |at..Rati|oX, Rati|
|00003250| 6f 59 3b 0d 0a 09 6c 6f | 63 61 6c 20 66 6c 6f 61 |oY;...lo|cal floa|
|00003260| 74 09 09 74 69 6c 65 58 | 2c 20 74 69 6c 65 59 3b |t..tileX|, tileY;|
|00003270| 0d 0a 09 6c 6f 63 61 6c | 20 66 6c 6f 61 74 09 09 |...local| float..|
|00003280| 53 69 7a 65 58 2c 20 53 | 69 7a 65 59 3b 0d 0a 0d |SizeX, S|izeY;...|
|00003290| 0a 09 48 69 74 4c 6f 63 | 61 74 69 6f 6e 20 3d 20 |..HitLoc|ation = |
|000032a0| 47 65 74 43 72 6f 73 73 | 68 61 69 72 57 6f 72 6c |GetCross|hairWorl|
|000032b0| 64 4c 6f 63 61 74 69 6f | 6e 28 29 3b 0d 0a 09 53 |dLocatio|n();...S|
|000032c0| 63 72 65 65 6e 50 6f 73 | 20 3d 20 43 2e 57 6f 72 |creenPos| = C.Wor|
|000032d0| 6c 64 54 6f 53 63 72 65 | 65 6e 28 20 48 69 74 4c |ldToScre|en( HitL|
|000032e0| 6f 63 61 74 69 6f 6e 20 | 29 3b 0d 0a 0d 0a 09 53 |ocation |);.....S|
|000032f0| 69 7a 65 58 20 3d 20 44 | 65 66 61 75 6c 74 43 72 |izeX = D|efaultCr|
|00003300| 6f 73 73 68 61 69 72 2e | 4d 61 74 65 72 69 61 6c |osshair.|Material|
|00003310| 55 53 69 7a 65 28 29 3b | 0d 0a 09 53 69 7a 65 59 |USize();|...SizeY|
|00003320| 20 3d 20 44 65 66 61 75 | 6c 74 43 72 6f 73 73 68 | = Defau|ltCrossh|
|00003330| 61 69 72 2e 4d 61 74 65 | 72 69 61 6c 56 53 69 7a |air.Mate|rialVSiz|
|00003340| 65 28 29 3b 0d 0a 0d 0a | 09 52 61 74 69 6f 58 20 |e();....|.RatioX |
|00003350| 3d 20 43 2e 53 69 7a 65 | 58 20 2f 20 36 34 30 2e |= C.Size|X / 640.|
|00003360| 30 3b 0d 0a 09 52 61 74 | 69 6f 59 20 3d 20 43 2e |0;...Rat|ioY = C.|
|00003370| 53 69 7a 65 59 20 2f 20 | 34 38 30 2e 30 3b 0d 0a |SizeY / |480.0;..|
|00003380| 0d 0a 09 74 69 6c 65 58 | 20 3d 20 43 72 6f 73 73 |...tileX| = Cross|
|00003390| 68 61 69 72 53 63 61 6c | 65 20 2a 20 53 69 7a 65 |hairScal|e * Size|
|000033a0| 58 20 2a 20 52 61 74 69 | 6f 58 3b 0d 0a 09 74 69 |X * Rati|oX;...ti|
|000033b0| 6c 65 59 20 3d 20 43 72 | 6f 73 73 68 61 69 72 53 |leY = Cr|osshairS|
|000033c0| 63 61 6c 65 20 2a 20 53 | 69 7a 65 59 20 2a 20 52 |cale * S|izeY * R|
|000033d0| 61 74 69 6f 58 3b 0d 0a | 0d 0a 09 2f 2f 20 43 6c |atioX;..|...// Cl|
|000033e0| 69 70 20 43 72 6f 73 73 | 68 61 69 72 20 70 6f 73 |ip Cross|hair pos|
|000033f0| 69 74 69 6f 6e 0d 0a 09 | 63 6c 61 73 73 27 48 55 |ition...|class'HU|
|00003400| 44 5f 41 73 73 61 75 6c | 74 27 2e 73 74 61 74 69 |D_Assaul|t'.stati|
|00003410| 63 2e 43 6c 69 70 53 63 | 72 65 65 6e 43 6f 6f 72 |c.ClipSc|reenCoor|
|00003420| 64 73 28 20 43 2c 20 53 | 63 72 65 65 6e 50 6f 73 |ds( C, S|creenPos|
|00003430| 2e 58 2c 20 53 63 72 65 | 65 6e 50 6f 73 2e 59 2c |.X, Scre|enPos.Y,|
|00003440| 20 54 69 6c 65 58 2a 30 | 2e 35 2c 20 54 69 6c 65 | TileX*0|.5, Tile|
|00003450| 59 2a 30 2e 35 20 29 3b | 0d 0a 0d 0a 09 43 2e 53 |Y*0.5 );|.....C.S|
|00003460| 74 79 6c 65 20 3d 20 45 | 52 65 6e 64 65 72 53 74 |tyle = E|RenderSt|
|00003470| 79 6c 65 2e 53 54 59 5f | 41 6c 70 68 61 3b 0d 0a |yle.STY_|Alpha;..|
|00003480| 09 43 2e 44 72 61 77 43 | 6f 6c 6f 72 20 3d 20 63 |.C.DrawC|olor = c|
|00003490| 6c 61 73 73 27 43 61 6e | 76 61 73 27 2e 73 74 61 |lass'Can|vas'.sta|
|000034a0| 74 69 63 2e 4d 61 6b 65 | 43 6f 6c 6f 72 28 32 35 |tic.Make|Color(25|
|000034b0| 35 2c 20 32 35 35 2c 20 | 32 35 35 2c 20 32 35 35 |5, 255, |255, 255|
|000034c0| 29 3b 0d 0a 09 43 2e 53 | 65 74 50 6f 73 28 53 63 |);...C.S|etPos(Sc|
|000034d0| 72 65 65 6e 50 6f 73 2e | 58 20 2d 20 74 69 6c 65 |reenPos.|X - tile|
|000034e0| 58 2a 30 2e 35 2c 20 53 | 63 72 65 65 6e 50 6f 73 |X*0.5, S|creenPos|
|000034f0| 2e 59 20 2d 20 74 69 6c | 65 59 2a 30 2e 35 29 3b |.Y - til|eY*0.5);|
|00003500| 0d 0a 09 43 2e 44 72 61 | 77 54 69 6c 65 28 20 44 |...C.Dra|wTile( D|
|00003510| 65 66 61 75 6c 74 43 72 | 6f 73 73 68 61 69 72 2c |efaultCr|osshair,|
|00003520| 20 74 69 6c 65 58 2c 20 | 74 69 6c 65 59 2c 20 30 | tileX, |tileY, 0|
|00003530| 2e 30 2c 20 30 2e 30 2c | 20 53 69 7a 65 58 2c 20 |.0, 0.0,| SizeX, |
|00003540| 53 69 7a 65 59 29 3b 0d | 0a 0d 0a 09 72 65 74 75 |SizeY);.|....retu|
|00003550| 72 6e 20 74 72 75 65 3b | 0d 0a 7d 0d 0a 0d 0a 2f |rn true;|..}..../|
|00003560| 2a 20 43 68 65 63 6b 20 | 69 66 20 77 65 61 70 6f |* Check |if weapo|
|00003570| 6e 20 66 69 72 65 73 20 | 77 68 65 72 65 20 63 72 |n fires |where cr|
|00003580| 6f 73 73 68 61 69 72 20 | 69 73 20 61 69 6d 69 6e |osshair |is aimin|
|00003590| 67 20 61 74 20 0d 0a 28 | 62 65 63 61 75 73 65 20 |g at ..(|because |
|000035a0| 6f 66 20 6f 66 66 73 65 | 74 20 62 65 74 77 65 65 |of offse|t betwee|
|000035b0| 6e 20 56 65 68 69 63 6c | 65 50 72 6f 6a 53 70 61 |n Vehicl|eProjSpa|
|000035c0| 77 6e 4f 66 66 73 65 74 | 20 61 6e 64 20 50 4f 56 |wnOffset| and POV|
|000035d0| 20 69 6e 20 33 72 64 20 | 70 65 72 73 6f 6e 20 76 | in 3rd |person v|
|000035e0| 69 65 77 29 20 2a 2f 0d | 0a 73 69 6d 75 6c 61 74 |iew) */.|.simulat|
|000035f0| 65 64 20 66 75 6e 63 74 | 69 6f 6e 20 62 6f 6f 6c |ed funct|ion bool|
|00003600| 20 57 65 61 70 6f 6e 48 | 69 74 73 43 72 6f 73 73 | WeaponH|itsCross|
|00003610| 68 61 69 72 73 48 4c 28 | 29 0d 0a 7b 0d 0a 09 6c |hairsHL(|)..{...l|
|00003620| 6f 63 61 6c 20 76 65 63 | 74 6f 72 09 44 65 73 69 |ocal vec|tor.Desi|
|00003630| 72 65 64 48 4c 2c 20 44 | 65 73 69 72 65 64 48 4e |redHL, D|esiredHN|
|00003640| 2c 20 48 4c 2c 20 48 4e | 3b 0d 0a 09 6c 6f 63 61 |, HL, HN|;...loca|
|00003650| 6c 20 41 63 74 6f 72 09 | 09 44 65 73 69 72 65 64 |l Actor.|.Desired|
|00003660| 48 69 74 41 63 74 6f 72 | 2c 20 48 69 74 41 63 74 |HitActor|, HitAct|
|00003670| 6f 72 3b 0d 0a 0d 0a 09 | 44 65 73 69 72 65 64 48 |or;.....|DesiredH|
|00003680| 69 74 41 63 74 6f 72 20 | 3d 20 43 61 6c 63 57 65 |itActor |= CalcWe|
|00003690| 61 70 6f 6e 46 69 72 65 | 28 20 44 65 73 69 72 65 |aponFire|( Desire|
|000036a0| 64 48 4c 2c 20 44 65 73 | 69 72 65 64 48 4e 20 29 |dHL, Des|iredHN )|
|000036b0| 3b 0d 0a 09 69 66 20 28 | 20 44 65 73 69 72 65 64 |;...if (| Desired|
|000036c0| 48 69 74 41 63 74 6f 72 | 20 3d 3d 20 4e 6f 6e 65 |HitActor| == None|
|000036d0| 20 29 0d 0a 09 09 72 65 | 74 75 72 6e 20 74 72 75 | )....re|turn tru|
|000036e0| 65 3b 0d 0a 0d 0a 09 48 | 69 74 41 63 74 6f 72 20 |e;.....H|itActor |
|000036f0| 3d 20 50 65 72 66 6f 72 | 6d 54 72 61 63 65 28 20 |= Perfor|mTrace( |
|00003700| 48 4c 2c 20 48 4e 2c 20 | 44 65 73 69 72 65 64 48 |HL, HN, |DesiredH|
|00003710| 4c 2c 20 47 65 74 46 69 | 72 65 53 74 61 72 74 28 |L, GetFi|reStart(|
|00003720| 29 20 29 3b 0d 0a 09 69 | 66 20 28 20 48 4c 20 3d |) );...i|f ( HL =|
|00003730| 3d 20 44 65 73 69 72 65 | 64 48 4c 20 29 0d 0a 09 |= Desire|dHL )...|
|00003740| 09 72 65 74 75 72 6e 20 | 74 72 75 65 3b 0d 0a 0d |.return |true;...|
|00003750| 0a 09 72 65 74 75 72 6e | 20 66 61 6c 73 65 3b 0d |..return| false;.|
|00003760| 0a 7d 0d 0a 0d 0a 2f 2a | 20 56 69 73 75 61 6c 20 |.}..../*| Visual |
|00003770| 66 65 65 64 62 61 63 6b | 20 74 68 61 74 20 77 65 |feedback| that we|
|00003780| 61 70 6f 6e 20 77 69 6c | 6c 20 68 69 74 20 77 68 |apon wil|l hit wh|
|00003790| 65 72 65 20 63 72 6f 73 | 73 68 61 69 72 20 69 73 |ere cros|shair is|
|000037a0| 20 61 69 6d 69 6e 67 20 | 61 74 20 2a 2f 0d 0a 73 | aiming |at */..s|
|000037b0| 69 6d 75 6c 61 74 65 64 | 20 66 75 6e 63 74 69 6f |imulated| functio|
|000037c0| 6e 20 44 72 61 77 43 72 | 6f 73 73 68 61 69 72 41 |n DrawCr|osshairA|
|000037d0| 6c 69 67 6e 6d 65 6e 74 | 28 20 43 61 6e 76 61 73 |lignment|( Canvas|
|000037e0| 20 43 2c 20 56 65 63 74 | 6f 72 20 53 63 72 65 65 | C, Vect|or Scree|
|000037f0| 6e 50 6f 73 20 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |nPos )..|{...loca|
|00003800| 6c 20 66 6c 6f 61 74 09 | 09 52 61 74 69 6f 58 2c |l float.|.RatioX,|
|00003810| 20 52 61 74 69 6f 59 3b | 0d 0a 0d 0a 09 52 61 74 | RatioY;|.....Rat|
|00003820| 69 6f 58 20 3d 20 43 2e | 53 69 7a 65 58 20 2f 20 |ioX = C.|SizeX / |
|00003830| 36 34 30 2e 30 3b 0d 0a | 09 52 61 74 69 6f 59 20 |640.0;..|.RatioY |
|00003840| 3d 20 43 2e 53 69 7a 65 | 59 20 2f 20 34 38 30 2e |= C.Size|Y / 480.|
|00003850| 30 3b 0d 0a 0d 0a 09 43 | 2e 44 72 61 77 43 6f 6c |0;.....C|.DrawCol|
|00003860| 6f 72 20 3d 20 43 2e 4d | 61 6b 65 43 6f 6c 6f 72 |or = C.M|akeColor|
|00003870| 28 30 2c 32 35 35 2c 30 | 2c 31 39 32 29 3b 0d 0a |(0,255,0|,192);..|
|00003880| 09 43 2e 53 74 79 6c 65 | 09 09 3d 20 45 52 65 6e |.C.Style|..= ERen|
|00003890| 64 65 72 53 74 79 6c 65 | 2e 53 54 59 5f 41 6c 70 |derStyle|.STY_Alp|
|000038a0| 68 61 3b 0d 0a 09 43 2e | 53 65 74 50 6f 73 28 20 |ha;...C.|SetPos( |
|000038b0| 53 63 72 65 65 6e 50 6f | 73 2e 58 20 2d 20 31 36 |ScreenPo|s.X - 16|
|000038c0| 2a 52 61 74 69 6f 58 2c | 20 53 63 72 65 65 6e 50 |*RatioX,| ScreenP|
|000038d0| 6f 73 2e 59 20 2d 20 31 | 36 2a 52 61 74 69 6f 59 |os.Y - 1|6*RatioY|
|000038e0| 20 29 3b 0d 0a 09 43 2e | 44 72 61 77 54 69 6c 65 | );...C.|DrawTile|
|000038f0| 28 43 72 6f 73 73 68 61 | 69 72 48 69 74 46 65 65 |(Crossha|irHitFee|
|00003900| 64 62 61 63 6b 54 65 78 | 2c 20 33 32 2a 52 61 74 |dbackTex|, 32*Rat|
|00003910| 69 6f 58 2c 20 33 32 2a | 52 61 74 69 6f 59 2c 20 |ioX, 32*|RatioY, |
|00003920| 30 2e 30 2c 20 30 2e 30 | 2c 20 43 72 6f 73 73 68 |0.0, 0.0|, Crossh|
|00003930| 61 69 72 48 69 74 46 65 | 65 64 62 61 63 6b 54 65 |airHitFe|edbackTe|
|00003940| 78 2e 4d 61 74 65 72 69 | 61 6c 55 53 69 7a 65 28 |x.Materi|alUSize(|
|00003950| 29 2c 20 43 72 6f 73 73 | 68 61 69 72 48 69 74 46 |), Cross|hairHitF|
|00003960| 65 65 64 62 61 63 6b 54 | 65 78 2e 4d 61 74 65 72 |eedbackT|ex.Mater|
|00003970| 69 61 6c 56 53 69 7a 65 | 28 29 20 29 3b 0d 0a 7d |ialVSize|() );..}|
|00003980| 0d 0a 0d 0a 73 69 6d 75 | 6c 61 74 65 64 20 66 75 |....simu|lated fu|
|00003990| 6e 63 74 69 6f 6e 20 44 | 72 61 77 45 6e 65 6d 79 |nction D|rawEnemy|
|000039a0| 4e 61 6d 65 28 20 43 61 | 6e 76 61 73 20 43 2c 20 |Name( Ca|nvas C, |
|000039b0| 48 55 44 43 44 65 61 74 | 68 4d 61 74 63 68 20 48 |HUDCDeat|hMatch H|
|000039c0| 20 29 0d 0a 7b 0d 0a 09 | 6c 6f 63 61 6c 20 61 63 | )..{...|local ac|
|000039d0| 74 6f 72 09 09 48 69 74 | 41 63 74 6f 72 3b 0d 0a |tor..Hit|Actor;..|
|000039e0| 09 6c 6f 63 61 6c 20 76 | 65 63 74 6f 72 09 48 69 |.local v|ector.Hi|
|000039f0| 74 4c 6f 63 61 74 69 6f | 6e 2c 20 48 69 74 4e 6f |tLocatio|n, HitNo|
|00003a00| 72 6d 61 6c 3b 0d 0a 0d | 0a 09 69 66 20 28 20 48 |rmal;...|..if ( H|
|00003a10| 2e 62 4e 6f 45 6e 65 6d | 79 4e 61 6d 65 73 20 7c |.bNoEnem|yNames ||
|00003a20| 7c 20 28 43 6f 6e 74 72 | 6f 6c 6c 65 72 20 3d 3d || (Contr|oller ==|
|00003a30| 20 4e 6f 6e 65 29 20 29 | 0d 0a 09 09 72 65 74 75 | None) )|....retu|
|00003a40| 72 6e 3b 0d 0a 0d 0a 09 | 48 69 74 41 63 74 6f 72 |rn;.....|HitActor|
|00003a50| 20 3d 20 43 61 6c 63 57 | 65 61 70 6f 6e 46 69 72 | = CalcW|eaponFir|
|00003a60| 65 28 20 48 69 74 4c 6f | 63 61 74 69 6f 6e 2c 20 |e( HitLo|cation, |
|00003a70| 48 69 74 4e 6f 72 6d 61 | 6c 20 29 3b 0d 0a 0d 0a |HitNorma|l );....|
|00003a80| 09 69 66 20 28 20 50 61 | 77 6e 28 48 69 74 41 63 |.if ( Pa|wn(HitAc|
|00003a90| 74 6f 72 29 20 21 3d 20 | 4e 6f 6e 65 20 26 26 20 |tor) != |None && |
|00003aa0| 48 69 74 41 63 74 6f 72 | 20 21 3d 20 53 65 6c 66 |HitActor| != Self|
|00003ab0| 20 26 26 20 50 61 77 6e | 28 48 69 74 41 63 74 6f | && Pawn|(HitActo|
|00003ac0| 72 29 2e 50 6c 61 79 65 | 72 52 65 70 6c 69 63 61 |r).Playe|rReplica|
|00003ad0| 74 69 6f 6e 49 6e 66 6f | 20 21 3d 20 4e 6f 6e 65 |tionInfo| != None|
|00003ae0| 20 0d 0a 09 09 26 26 20 | 54 65 61 6d 20 21 3d 20 | ....&& |Team != |
|00003af0| 50 61 77 6e 28 48 69 74 | 41 63 74 6f 72 29 2e 47 |Pawn(Hit|Actor).G|
|00003b00| 65 74 54 65 61 6d 4e 75 | 6d 28 29 20 29 0d 0a 09 |etTeamNu|m() )...|
|00003b10| 7b 0d 0a 09 09 69 66 20 | 28 20 28 48 2e 4e 61 6d |{....if |( (H.Nam|
|00003b20| 65 64 50 6c 61 79 65 72 | 20 21 3d 20 50 61 77 6e |edPlayer| != Pawn|
|00003b30| 28 48 69 74 41 63 74 6f | 72 29 2e 50 6c 61 79 65 |(HitActo|r).Playe|
|00003b40| 72 52 65 70 6c 69 63 61 | 74 69 6f 6e 49 6e 66 6f |rReplica|tionInfo|
|00003b50| 29 20 7c 7c 20 28 4c 65 | 76 65 6c 2e 54 69 6d 65 |) || (Le|vel.Time|
|00003b60| 53 65 63 6f 6e 64 73 20 | 2d 20 48 2e 4e 61 6d 65 |Seconds |- H.Name|
|00003b70| 54 69 6d 65 20 3e 20 30 | 2e 35 29 20 29 0d 0a 09 |Time > 0|.5) )...|
|00003b80| 09 7b 0d 0a 09 09 09 48 | 2e 44 69 73 70 6c 61 79 |.{.....H|.Display|
|00003b90| 45 6e 65 6d 79 4e 61 6d | 65 28 43 2c 20 50 61 77 |EnemyNam|e(C, Paw|
|00003ba0| 6e 28 48 69 74 41 63 74 | 6f 72 29 2e 50 6c 61 79 |n(HitAct|or).Play|
|00003bb0| 65 72 52 65 70 6c 69 63 | 61 74 69 6f 6e 49 6e 66 |erReplic|ationInf|
|00003bc0| 6f 29 3b 0d 0a 09 09 09 | 48 2e 4e 61 6d 65 54 69 |o);.....|H.NameTi|
|00003bd0| 6d 65 20 3d 20 4c 65 76 | 65 6c 2e 54 69 6d 65 53 |me = Lev|el.TimeS|
|00003be0| 65 63 6f 6e 64 73 3b 0d | 0a 09 09 7d 0d 0a 09 09 |econds;.|...}....|
|00003bf0| 48 2e 4e 61 6d 65 64 50 | 6c 61 79 65 72 20 3d 20 |H.NamedP|layer = |
|00003c00| 50 61 77 6e 28 48 69 74 | 41 63 74 6f 72 29 2e 50 |Pawn(Hit|Actor).P|
|00003c10| 6c 61 79 65 72 52 65 70 | 6c 69 63 61 74 69 6f 6e |layerRep|lication|
|00003c20| 49 6e 66 6f 3b 0d 0a 09 | 7d 0d 0a 7d 0d 0a 0d 0a |Info;...|}..}....|
|00003c30| 2f 2f 4e 6f 74 69 66 79 | 20 76 65 68 69 63 6c 65 |//Notify| vehicle|
|00003c40| 20 74 68 61 74 20 61 6e | 20 65 6e 65 6d 79 20 68 | that an| enemy h|
|00003c50| 61 73 20 6c 6f 63 6b 65 | 64 20 6f 6e 20 74 6f 20 |as locke|d on to |
|00003c60| 69 74 0d 0a 65 76 65 6e | 74 20 4e 6f 74 69 66 79 |it..even|t Notify|
|00003c70| 45 6e 65 6d 79 4c 6f 63 | 6b 65 64 4f 6e 28 29 0d |EnemyLoc|kedOn().|
|00003c80| 0a 7b 0d 0a 09 73 75 70 | 65 72 2e 4e 6f 74 69 66 |.{...sup|er.Notif|
|00003c90| 79 45 6e 65 6d 79 4c 6f | 63 6b 65 64 4f 6e 28 29 |yEnemyLo|ckedOn()|
|00003ca0| 3b 0d 0a 0d 0a 09 69 66 | 20 28 20 50 6c 61 79 65 |;.....if| ( Playe|
|00003cb0| 72 43 6f 6e 74 72 6f 6c | 6c 65 72 28 43 6f 6e 74 |rControl|ler(Cont|
|00003cc0| 72 6f 6c 6c 65 72 29 20 | 21 3d 20 4e 6f 6e 65 20 |roller) |!= None |
|00003cd0| 26 26 20 4c 6f 63 6b 65 | 64 4f 6e 53 6f 75 6e 64 |&& Locke|dOnSound|
|00003ce0| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 50 6c | != None| )....Pl|
|00003cf0| 61 79 65 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 28 43 |ayerCont|roller(C|
|00003d00| 6f 6e 74 72 6f 6c 6c 65 | 72 29 2e 43 6c 69 65 6e |ontrolle|r).Clien|
|00003d10| 74 50 6c 61 79 53 6f 75 | 6e 64 28 20 4c 6f 63 6b |tPlaySou|nd( Lock|
|00003d20| 65 64 4f 6e 53 6f 75 6e | 64 20 29 3b 0d 0a 7d 0d |edOnSoun|d );..}.|
|00003d30| 0a 0d 0a 2f 2a 20 52 65 | 74 75 72 6e 20 77 6f 72 |.../* Re|turn wor|
|00003d40| 6c 64 20 6c 6f 63 61 74 | 69 6f 6e 20 6f 66 20 63 |ld locat|ion of c|
|00003d50| 72 6f 73 73 68 61 69 72 | 27 73 20 3d 3d 20 76 65 |rosshair|'s == ve|
|00003d60| 68 69 63 6c 65 27 73 20 | 66 6f 63 75 73 20 70 6f |hicle's |focus po|
|00003d70| 69 6e 74 20 2a 2f 0d 0a | 73 69 6d 75 6c 61 74 65 |int */..|simulate|
|00003d80| 64 20 66 75 6e 63 74 69 | 6f 6e 20 76 65 63 74 6f |d functi|on vecto|
|00003d90| 72 20 47 65 74 43 72 6f | 73 73 68 61 69 72 57 6f |r GetCro|sshairWo|
|00003da0| 72 6c 64 4c 6f 63 61 74 | 69 6f 6e 28 29 0d 0a 7b |rldLocat|ion()..{|
|00003db0| 0d 0a 09 72 65 74 75 72 | 6e 20 47 65 74 46 69 72 |...retur|n GetFir|
|00003dc0| 65 53 74 61 72 74 28 20 | 36 35 35 33 36 20 29 3b |eStart( |65536 );|
|00003dd0| 09 2f 2f 20 66 61 72 20 | 66 6f 63 75 73 20 70 6f |.// far |focus po|
|00003de0| 69 6e 74 20 74 6f 20 65 | 6e 73 75 72 65 20 74 72 |int to e|nsure tr|
|00003df0| 61 63 65 20 68 69 74 0d | 0a 7d 0d 0a 0d 0a 2f 2a |ace hit.|.}..../*|
|00003e00| 20 52 65 74 75 72 6e 73 | 20 77 6f 72 6c 64 20 6c | Returns| world l|
|00003e10| 6f 63 61 74 69 6f 6e 20 | 6f 66 20 76 65 68 69 63 |ocation |of vehic|
|00003e20| 6c 65 20 66 69 72 65 20 | 73 74 61 72 74 20 2a 2f |le fire |start */|
|00003e30| 0d 0a 73 69 6d 75 6c 61 | 74 65 64 20 66 75 6e 63 |..simula|ted func|
|00003e40| 74 69 6f 6e 20 76 65 63 | 74 6f 72 20 47 65 74 46 |tion vec|tor GetF|
|00003e50| 69 72 65 53 74 61 72 74 | 28 20 6f 70 74 69 6f 6e |ireStart|( option|
|00003e60| 61 6c 20 66 6c 6f 61 74 | 20 58 4f 66 66 73 65 74 |al float| XOffset|
|00003e70| 20 29 0d 0a 7b 0d 0a 09 | 6c 6f 63 61 6c 20 56 65 | )..{...|local Ve|
|00003e80| 63 74 6f 72 20 53 74 61 | 72 74 4f 66 66 73 65 74 |ctor Sta|rtOffset|
|00003e90| 2c 20 58 2c 20 59 2c 20 | 5a 3b 0d 0a 0d 0a 09 47 |, X, Y, |Z;.....G|
|00003ea0| 65 74 41 78 65 73 28 52 | 6f 74 61 74 69 6f 6e 2c |etAxes(R|otation,|
|00003eb0| 20 58 2c 20 59 2c 20 5a | 29 3b 0d 0a 09 53 74 61 | X, Y, Z|);...Sta|
|00003ec0| 72 74 4f 66 66 73 65 74 | 20 3d 20 56 65 68 69 63 |rtOffset| = Vehic|
|00003ed0| 6c 65 50 72 6f 6a 53 70 | 61 77 6e 4f 66 66 73 65 |leProjSp|awnOffse|
|00003ee0| 74 3b 0d 0a 09 69 66 20 | 28 20 62 43 48 5a 65 72 |t;...if |( bCHZer|
|00003ef0| 6f 59 4f 66 66 73 65 74 | 20 29 0d 0a 09 09 53 74 |oYOffset| )....St|
|00003f00| 61 72 74 4f 66 66 73 65 | 74 2e 59 20 3d 20 30 3b |artOffse|t.Y = 0;|
|00003f10| 0d 0a 09 72 65 74 75 72 | 6e 20 4c 6f 63 61 74 69 |...retur|n Locati|
|00003f20| 6f 6e 20 2b 20 58 2a 28 | 53 74 61 72 74 4f 66 66 |on + X*(|StartOff|
|00003f30| 73 65 74 2e 58 2b 58 4f | 66 66 73 65 74 29 20 2b |set.X+XO|ffset) +|
|00003f40| 20 59 2a 53 74 61 72 74 | 4f 66 66 73 65 74 2e 59 | Y*Start|Offset.Y|
|00003f50| 20 2b 20 5a 2a 53 74 61 | 72 74 4f 66 66 73 65 74 | + Z*Sta|rtOffset|
|00003f60| 2e 5a 3b 0d 0a 7d 0d 0a | 0d 0a 66 75 6e 63 74 69 |.Z;..}..|..functi|
|00003f70| 6f 6e 20 76 65 63 74 6f | 72 20 47 65 74 42 6f 74 |on vecto|r GetBot|
|00003f80| 45 72 72 6f 72 28 76 65 | 63 74 6f 72 20 53 74 61 |Error(ve|ctor Sta|
|00003f90| 72 74 4c 6f 63 61 74 69 | 6f 6e 29 0d 0a 7b 0d 0a |rtLocati|on)..{..|
|00003fa0| 09 43 6f 6e 74 72 6f 6c | 6c 65 72 2e 53 68 6f 74 |.Control|ler.Shot|
|00003fb0| 54 61 72 67 65 74 20 3d | 20 50 61 77 6e 28 43 6f |Target =| Pawn(Co|
|00003fc0| 6e 74 72 6f 6c 6c 65 72 | 2e 54 61 72 67 65 74 29 |ntroller|.Target)|
|00003fd0| 3b 0d 0a 09 69 66 20 28 | 20 43 6f 6e 74 72 6f 6c |;...if (| Control|
|00003fe0| 6c 65 72 2e 54 61 72 67 | 65 74 20 21 3d 20 4f 6c |ler.Targ|et != Ol|
|00003ff0| 64 54 61 72 67 65 74 20 | 29 0d 0a 09 7b 0d 0a 09 |dTarget |)...{...|
|00004000| 09 42 6f 74 45 72 72 6f | 72 20 3d 20 28 31 35 30 |.BotErro|r = (150|
|00004010| 30 20 2d 20 31 30 30 20 | 2a 20 4c 65 76 65 6c 2e |0 - 100 |* Level.|
|00004020| 47 61 6d 65 2e 47 61 6d | 65 44 69 66 66 69 63 75 |Game.Gam|eDifficu|
|00004030| 6c 74 79 29 20 2a 20 56 | 52 61 6e 64 28 29 3b 0d |lty) * V|Rand();.|
|00004040| 0a 09 09 4f 6c 64 54 61 | 72 67 65 74 20 3d 20 43 |...OldTa|rget = C|
|00004050| 6f 6e 74 72 6f 6c 6c 65 | 72 2e 54 61 72 67 65 74 |ontrolle|r.Target|
|00004060| 3b 0d 0a 09 7d 0d 0a 09 | 42 6f 74 45 72 72 6f 72 |;...}...|BotError|
|00004070| 20 2b 3d 20 31 30 30 20 | 2a 20 56 52 61 6e 64 28 | += 100 |* VRand(|
|00004080| 29 20 2b 20 28 31 30 30 | 20 2d 20 32 30 30 20 2a |) + (100| - 200 *|
|00004090| 46 52 61 6e 64 28 29 29 | 20 2a 20 4e 6f 72 6d 61 |FRand())| * Norma|
|000040a0| 6c 28 43 6f 6e 74 72 6f | 6c 6c 65 72 2e 54 61 72 |l(Contro|ller.Tar|
|000040b0| 67 65 74 2e 56 65 6c 6f | 63 69 74 79 29 3b 0d 0a |get.Velo|city);..|
|000040c0| 09 69 66 20 28 20 28 50 | 61 77 6e 28 4f 6c 64 54 |.if ( (P|awn(OldT|
|000040d0| 61 72 67 65 74 29 20 21 | 3d 20 4e 6f 6e 65 29 20 |arget) !|= None) |
|000040e0| 26 26 20 50 61 77 6e 28 | 4f 6c 64 54 61 72 67 65 |&& Pawn(|OldTarge|
|000040f0| 74 29 2e 62 53 74 61 74 | 69 6f 6e 61 72 79 20 29 |t).bStat|ionary )|
|00004100| 0d 0a 09 09 42 6f 74 45 | 72 72 6f 72 20 2a 3d 20 |....BotE|rror *= |
|00004110| 30 2e 36 3b 0d 0a 09 42 | 6f 74 45 72 72 6f 72 20 |0.6;...B|otError |
|00004120| 3d 20 4e 6f 72 6d 61 6c | 28 42 6f 74 45 72 72 6f |= Normal|(BotErro|
|00004130| 72 29 20 2a 20 46 4d 69 | 6e 28 56 53 69 7a 65 28 |r) * FMi|n(VSize(|
|00004140| 42 6f 74 45 72 72 6f 72 | 29 2c 20 46 4d 69 6e 28 |BotError|), FMin(|
|00004150| 31 35 30 30 20 2d 20 31 | 30 30 2a 4c 65 76 65 6c |1500 - 1|00*Level|
|00004160| 2e 47 61 6d 65 2e 47 61 | 6d 65 44 69 66 66 69 63 |.Game.Ga|meDiffic|
|00004170| 75 6c 74 79 2c 30 2e 32 | 20 2a 20 56 53 69 7a 65 |ulty,0.2| * VSize|
|00004180| 28 43 6f 6e 74 72 6f 6c | 6c 65 72 2e 54 61 72 67 |(Control|ler.Targ|
|00004190| 65 74 2e 4c 6f 63 61 74 | 69 6f 6e 20 2d 20 53 74 |et.Locat|ion - St|
|000041a0| 61 72 74 4c 6f 63 61 74 | 69 6f 6e 29 29 29 3b 0d |artLocat|ion)));.|
|000041b0| 0a 09 72 65 74 75 72 6e | 20 42 6f 74 45 72 72 6f |..return| BotErro|
|000041c0| 72 3b 0d 0a 7d 0d 0a 0d | 0a 2f 2a 20 54 72 61 63 |r;..}...|./* Trac|
|000041d0| 65 20 66 72 6f 6d 20 56 | 69 65 77 20 74 6f 20 43 |e from V|iew to C|
|000041e0| 72 6f 73 73 48 61 69 72 | 2c 20 61 6e 64 20 72 65 |rossHair|, and re|
|000041f0| 74 75 72 6e 20 48 69 74 | 41 63 74 6f 72 2c 20 48 |turn Hit|Actor, H|
|00004200| 69 74 4c 6f 63 61 74 69 | 6f 6e 20 61 6e 64 20 48 |itLocati|on and H|
|00004210| 69 74 4e 6f 72 6d 61 6c | 20 2a 2f 0d 0a 73 69 6d |itNormal| */..sim|
|00004220| 75 6c 61 74 65 64 20 66 | 75 6e 63 74 69 6f 6e 20 |ulated f|unction |
|00004230| 41 63 74 6f 72 20 43 61 | 6c 63 57 65 61 70 6f 6e |Actor Ca|lcWeapon|
|00004240| 46 69 72 65 28 20 6f 75 | 74 20 76 65 63 74 6f 72 |Fire( ou|t vector|
|00004250| 20 48 69 74 4c 6f 63 61 | 74 69 6f 6e 2c 20 6f 75 | HitLoca|tion, ou|
|00004260| 74 20 56 65 63 74 6f 72 | 20 48 69 74 4e 6f 72 6d |t Vector| HitNorm|
|00004270| 61 6c 20 29 0d 0a 7b 0d | 0a 09 6c 6f 63 61 6c 20 |al )..{.|..local |
|00004280| 76 65 63 74 6f 72 09 54 | 61 72 67 65 74 2c 20 53 |vector.T|arget, S|
|00004290| 74 61 72 74 4c 6f 63 61 | 74 69 6f 6e 2c 20 43 61 |tartLoca|tion, Ca|
|000042a0| 6e 6e 6f 6e 4c 6f 63 61 | 74 69 6f 6e 3b 0d 0a 09 |nnonLoca|tion;...|
|000042b0| 6c 6f 63 61 6c 20 41 63 | 74 6f 72 09 09 41 3b 0d |local Ac|tor..A;.|
|000042c0| 0a 09 6c 6f 63 61 6c 20 | 52 6f 74 61 74 6f 72 09 |..local |Rotator.|
|000042d0| 52 6f 74 3b 0d 0a 09 6c | 6f 63 61 6c 20 76 65 63 |Rot;...l|ocal vec|
|000042e0| 74 6f 72 09 58 2c 20 59 | 2c 20 5a 3b 0d 0a 09 6c |tor.X, Y|, Z;...l|
|000042f0| 6f 63 61 6c 20 66 6c 6f | 61 74 09 09 41 6e 67 6c |ocal flo|at..Angl|
|00004300| 65 3b 0d 0a 09 0d 0a 09 | 2f 2f 20 41 76 6f 69 64 |e;......|// Avoid|
|00004310| 20 6d 75 6c 74 69 70 6c | 65 20 74 72 61 63 65 73 | multipl|e traces|
|00004320| 20 74 68 65 20 73 61 6d | 65 20 74 69 63 6b 0d 0a | the sam|e tick..|
|00004330| 09 69 66 20 28 20 4c 61 | 73 74 43 61 6c 63 57 65 |.if ( La|stCalcWe|
|00004340| 61 70 6f 6e 46 69 72 65 | 20 3d 3d 20 4c 65 76 65 |aponFire| == Leve|
|00004350| 6c 2e 54 69 6d 65 53 65 | 63 6f 6e 64 73 20 29 0d |l.TimeSe|conds ).|
|00004360| 0a 09 7b 0d 0a 09 09 2f | 2f 6c 6f 67 28 22 41 53 |..{..../|/log("AS|
|00004370| 56 65 68 69 63 6c 65 3a | 3a 43 61 6c 63 57 65 61 |Vehicle:|:CalcWea|
|00004380| 70 6f 6e 46 69 72 65 22 | 20 40 20 4c 65 76 65 6c |ponFire"| @ Level|
|00004390| 2e 54 69 6d 65 53 65 63 | 6f 6e 64 73 20 29 3b 0d |.TimeSec|onds );.|
|000043a0| 0a 09 09 48 69 74 4c 6f | 63 61 74 69 6f 6e 20 3d |...HitLo|cation =|
|000043b0| 20 4c 61 73 74 43 61 6c | 63 48 4c 3b 0d 0a 09 09 | LastCal|cHL;....|
|000043c0| 48 69 74 4e 6f 72 6d 61 | 6c 09 3d 20 4c 61 73 74 |HitNorma|l.= Last|
|000043d0| 43 61 6c 63 48 4e 3b 0d | 0a 09 09 72 65 74 75 72 |CalcHN;.|...retur|
|000043e0| 6e 20 4c 61 73 74 43 61 | 6c 63 48 41 3b 0d 0a 09 |n LastCa|lcHA;...|
|000043f0| 7d 0d 0a 0d 0a 09 43 61 | 6e 6e 6f 6e 4c 6f 63 61 |}.....Ca|nnonLoca|
|00004400| 74 69 6f 6e 20 3d 20 47 | 65 74 46 69 72 65 53 74 |tion = G|etFireSt|
|00004410| 61 72 74 28 29 3b 0d 0a | 09 69 66 20 28 20 50 6c |art();..|.if ( Pl|
|00004420| 61 79 65 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 28 43 |ayerCont|roller(C|
|00004430| 6f 6e 74 72 6f 6c 6c 65 | 72 29 20 21 3d 20 4e 6f |ontrolle|r) != No|
|00004440| 6e 65 20 29 0d 0a 09 7b | 0d 0a 09 09 50 6c 61 79 |ne )...{|....Play|
|00004450| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 28 43 6f 6e |erContro|ller(Con|
|00004460| 74 72 6f 6c 6c 65 72 29 | 2e 50 6c 61 79 65 72 43 |troller)|.PlayerC|
|00004470| 61 6c 63 56 69 65 77 28 | 41 2c 20 53 74 61 72 74 |alcView(|A, Start|
|00004480| 4c 6f 63 61 74 69 6f 6e | 2c 20 52 6f 74 20 29 3b |Location|, Rot );|
|00004490| 0d 0a 09 7d 0d 0a 09 65 | 6c 73 65 20 0d 0a 09 7b |...}...e|lse ...{|
|000044a0| 0d 0a 09 09 53 74 61 72 | 74 4c 6f 63 61 74 69 6f |....Star|tLocatio|
|000044b0| 6e 20 3d 20 43 61 6e 6e | 6f 6e 4c 6f 63 61 74 69 |n = Cann|onLocati|
|000044c0| 6f 6e 3b 0d 0a 09 09 52 | 6f 74 20 3d 20 52 6f 74 |on;....R|ot = Rot|
|000044d0| 61 74 69 6f 6e 3b 0d 0a | 09 7d 0d 0a 09 0d 0a 09 |ation;..|.}......|
|000044e0| 54 61 72 67 65 74 20 3d | 20 47 65 74 43 72 6f 73 |Target =| GetCros|
|000044f0| 73 68 61 69 72 57 6f 72 | 6c 64 4c 6f 63 61 74 69 |shairWor|ldLocati|
|00004500| 6f 6e 28 29 3b 0d 0a 0d | 0a 09 69 66 20 28 20 43 |on();...|..if ( C|
|00004510| 6f 6e 74 72 6f 6c 6c 65 | 72 20 21 3d 20 4e 6f 6e |ontrolle|r != Non|
|00004520| 65 20 29 0d 0a 09 7b 0d | 0a 09 09 69 66 20 28 20 |e )...{.|...if ( |
|00004530| 43 6f 6e 74 72 6f 6c 6c | 65 72 2e 54 61 72 67 65 |Controll|er.Targe|
|00004540| 74 20 3d 3d 20 4e 6f 6e | 65 20 29 0d 0a 09 09 09 |t == Non|e ).....|
|00004550| 43 6f 6e 74 72 6f 6c 6c | 65 72 2e 54 61 72 67 65 |Controll|er.Targe|
|00004560| 74 20 3d 20 43 6f 6e 74 | 72 6f 6c 6c 65 72 2e 45 |t = Cont|roller.E|
|00004570| 6e 65 6d 79 3b 0d 0a 09 | 09 69 66 20 28 20 43 6f |nemy;...|.if ( Co|
|00004580| 6e 74 72 6f 6c 6c 65 72 | 2e 54 61 72 67 65 74 20 |ntroller|.Target |
|00004590| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 09 54 61 |!= None |).....Ta|
|000045a0| 72 67 65 74 20 2b 3d 20 | 47 65 74 42 6f 74 45 72 |rget += |GetBotEr|
|000045b0| 72 6f 72 28 53 74 61 72 | 74 4c 6f 63 61 74 69 6f |ror(Star|tLocatio|
|000045c0| 6e 29 3b 0d 0a 09 7d 0d | 0a 09 0d 0a 09 41 20 3d |n);...}.|.....A =|
|000045d0| 20 50 65 72 66 6f 72 6d | 54 72 61 63 65 28 20 48 | Perform|Trace( H|
|000045e0| 69 74 4c 6f 63 61 74 69 | 6f 6e 2c 20 48 69 74 4e |itLocati|on, HitN|
|000045f0| 6f 72 6d 61 6c 2c 20 54 | 61 72 67 65 74 2c 20 53 |ormal, T|arget, S|
|00004600| 74 61 72 74 4c 6f 63 61 | 74 69 6f 6e 20 29 3b 0d |tartLoca|tion );.|
|00004610| 0a 09 0d 0a 09 2f 2f 20 | 4d 61 6b 65 20 73 75 72 |.....// |Make sur|
|00004620| 65 20 54 75 72 72 65 74 | 20 63 61 6e 6e 6f 74 20 |e Turret| cannot |
|00004630| 68 69 74 20 73 6f 6d 65 | 74 68 69 6e 67 20 6c 6f |hit some|thing lo|
|00004640| 63 61 74 65 64 20 62 65 | 68 69 6e 64 20 69 74 27 |cated be|hind it'|
|00004650| 73 20 43 61 6e 6e 6f 6e | 2e 0d 0a 09 47 65 74 41 |s Cannon|....GetA|
|00004660| 78 65 73 28 52 6f 74 2c | 20 58 2c 20 59 2c 20 5a |xes(Rot,| X, Y, Z|
|00004670| 29 3b 0d 0a 09 41 6e 67 | 6c 65 20 3d 20 28 48 69 |);...Ang|le = (Hi|
|00004680| 74 4c 6f 63 61 74 69 6f | 6e 20 2d 20 43 61 6e 6e |tLocatio|n - Cann|
|00004690| 6f 6e 4c 6f 63 61 74 69 | 6f 6e 29 20 44 6f 74 20 |onLocati|on) Dot |
|000046a0| 58 3b 20 0d 0a 0d 0a 09 | 69 66 20 28 20 41 20 3d |X; .....|if ( A =|
|000046b0| 3d 20 4e 6f 6e 65 20 7c | 7c 20 41 6e 67 6c 65 20 |= None ||| Angle |
|000046c0| 3c 20 30 20 29 0d 0a 09 | 7b 0d 0a 09 09 48 69 74 |< 0 )...|{....Hit|
|000046d0| 4c 6f 63 61 74 69 6f 6e | 20 3d 20 54 61 72 67 65 |Location| = Targe|
|000046e0| 74 3b 0d 0a 09 09 48 69 | 74 4e 6f 72 6d 61 6c 09 |t;....Hi|tNormal.|
|000046f0| 3d 20 76 65 63 74 28 30 | 2c 30 2c 30 29 3b 0d 0a |= vect(0|,0,0);..|
|00004700| 09 7d 0d 0a 0d 0a 09 2f | 2f 20 53 61 76 65 20 72 |.}...../|/ Save r|
|00004710| 65 73 75 6c 74 73 2c 20 | 62 65 63 61 75 73 65 20 |esults, |because |
|00004720| 63 61 6e 20 62 65 20 63 | 61 6c 6c 65 64 20 73 65 |can be c|alled se|
|00004730| 76 65 72 61 6c 20 74 69 | 6d 65 73 20 70 65 72 20 |veral ti|mes per |
|00004740| 74 69 63 6b 0d 0a 09 4c | 61 73 74 43 61 6c 63 57 |tick...L|astCalcW|
|00004750| 65 61 70 6f 6e 46 69 72 | 65 09 3d 20 4c 65 76 65 |eaponFir|e.= Leve|
|00004760| 6c 2e 54 69 6d 65 53 65 | 63 6f 6e 64 73 3b 0d 0a |l.TimeSe|conds;..|
|00004770| 09 4c 61 73 74 43 61 6c | 63 48 41 09 09 09 3d 20 |.LastCal|cHA...= |
|00004780| 41 3b 0d 0a 09 4c 61 73 | 74 43 61 6c 63 48 4c 09 |A;...Las|tCalcHL.|
|00004790| 09 09 3d 20 48 69 74 4c | 6f 63 61 74 69 6f 6e 3b |..= HitL|ocation;|
|000047a0| 0d 0a 09 4c 61 73 74 43 | 61 6c 63 48 4e 09 09 09 |...LastC|alcHN...|
|000047b0| 3d 20 48 69 74 4e 6f 72 | 6d 61 6c 3b 0d 0a 0d 0a |= HitNor|mal;....|
|000047c0| 09 72 65 74 75 72 6e 20 | 41 3b 0d 0a 7d 0d 0a 0d |.return |A;..}...|
|000047d0| 0a 73 69 6d 75 6c 61 74 | 65 64 20 66 75 6e 63 74 |.simulat|ed funct|
|000047e0| 69 6f 6e 20 41 63 74 6f | 72 20 50 65 72 66 6f 72 |ion Acto|r Perfor|
|000047f0| 6d 54 72 61 63 65 28 20 | 6f 75 74 20 76 65 63 74 |mTrace( |out vect|
|00004800| 6f 72 20 48 69 74 4c 6f | 63 61 74 69 6f 6e 2c 20 |or HitLo|cation, |
|00004810| 6f 75 74 20 56 65 63 74 | 6f 72 20 48 69 74 4e 6f |out Vect|or HitNo|
|00004820| 72 6d 61 6c 2c 20 76 65 | 63 74 6f 72 20 45 6e 64 |rmal, ve|ctor End|
|00004830| 2c 20 76 65 63 74 6f 72 | 20 53 74 61 72 74 20 29 |, vector| Start )|
|00004840| 0d 0a 7b 0d 0a 09 6c 6f | 63 61 6c 20 41 63 74 6f |..{...lo|cal Acto|
|00004850| 72 09 09 41 3b 0d 0a 09 | 6c 6f 63 61 6c 20 62 6f |r..A;...|local bo|
|00004860| 6f 6c 09 09 62 44 72 69 | 76 65 72 42 6c 6f 63 6b |ol..bDri|verBlock|
|00004870| 5a 65 72 6f 45 78 74 65 | 6e 74 3b 0d 0a 0d 0a 09 |ZeroExte|nt;.....|
|00004880| 2f 2f 20 54 72 61 63 65 | 20 74 68 72 6f 75 67 68 |// Trace| through|
|00004890| 20 76 65 68 69 63 6c 65 | 20 6f 72 20 64 72 69 76 | vehicle| or driv|
|000048a0| 65 72 0d 0a 09 62 42 6c | 6f 63 6b 5a 65 72 6f 45 |er...bBl|ockZeroE|
|000048b0| 78 74 65 6e 74 54 72 61 | 63 65 73 20 3d 20 66 61 |xtentTra|ces = fa|
|000048c0| 6c 73 65 3b 0d 0a 09 69 | 66 20 28 20 44 72 69 76 |lse;...i|f ( Driv|
|000048d0| 65 72 20 21 3d 20 4e 6f | 6e 65 20 29 0d 0a 09 7b |er != No|ne )...{|
|000048e0| 0d 0a 09 09 62 44 72 69 | 76 65 72 42 6c 6f 63 6b |....bDri|verBlock|
|000048f0| 5a 65 72 6f 45 78 74 65 | 6e 74 09 09 09 3d 20 44 |ZeroExte|nt...= D|
|00004900| 72 69 76 65 72 2e 62 42 | 6c 6f 63 6b 5a 65 72 6f |river.bB|lockZero|
|00004910| 45 78 74 65 6e 74 54 72 | 61 63 65 73 3b 0d 0a 09 |ExtentTr|aces;...|
|00004920| 09 44 72 69 76 65 72 2e | 62 42 6c 6f 63 6b 5a 65 |.Driver.|bBlockZe|
|00004930| 72 6f 45 78 74 65 6e 74 | 54 72 61 63 65 73 09 3d |roExtent|Traces.=|
|00004940| 20 66 61 6c 73 65 3b 0d | 0a 09 7d 0d 0a 0d 0a 09 | false;.|..}.....|
|00004950| 41 20 3d 20 54 72 61 63 | 65 28 48 69 74 4c 6f 63 |A = Trac|e(HitLoc|
|00004960| 61 74 69 6f 6e 2c 20 48 | 69 74 4e 6f 72 6d 61 6c |ation, H|itNormal|
|00004970| 2c 20 45 6e 64 2c 20 53 | 74 61 72 74 2c 20 74 72 |, End, S|tart, tr|
|00004980| 75 65 29 3b 0d 0a 0d 0a | 09 69 66 20 28 20 41 20 |ue);....|.if ( A |
|00004990| 3d 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 7b 0d 0a 09 |== None |)...{...|
|000049a0| 09 48 69 74 4c 6f 63 61 | 74 69 6f 6e 20 3d 20 45 |.HitLoca|tion = E|
|000049b0| 6e 64 3b 0d 0a 09 09 48 | 69 74 4e 6f 72 6d 61 6c |nd;....H|itNormal|
|000049c0| 09 3d 20 76 65 63 74 28 | 30 2c 30 2c 30 29 3b 0d |.= vect(|0,0,0);.|
|000049d0| 0a 09 7d 0d 0a 0d 0a 09 | 62 42 6c 6f 63 6b 5a 65 |..}.....|bBlockZe|
|000049e0| 72 6f 45 78 74 65 6e 74 | 54 72 61 63 65 73 20 3d |roExtent|Traces =|
|000049f0| 20 74 72 75 65 3b 0d 0a | 09 69 66 20 28 20 44 72 | true;..|.if ( Dr|
|00004a00| 69 76 65 72 20 21 3d 20 | 4e 6f 6e 65 20 29 0d 0a |iver != |None )..|
|00004a10| 09 09 44 72 69 76 65 72 | 2e 62 42 6c 6f 63 6b 5a |..Driver|.bBlockZ|
|00004a20| 65 72 6f 45 78 74 65 6e | 74 54 72 61 63 65 73 20 |eroExten|tTraces |
|00004a30| 3d 20 62 44 72 69 76 65 | 72 42 6c 6f 63 6b 5a 65 |= bDrive|rBlockZe|
|00004a40| 72 6f 45 78 74 65 6e 74 | 3b 0d 0a 0d 0a 09 72 65 |roExtent|;.....re|
|00004a50| 74 75 72 6e 20 41 3b 0d | 0a 7d 0d 0a 0d 0a 73 74 |turn A;.|.}....st|
|00004a60| 61 74 69 63 20 66 75 6e | 63 74 69 6f 6e 20 53 74 |atic fun|ction St|
|00004a70| 61 74 69 63 50 72 65 63 | 61 63 68 65 28 4c 65 76 |aticPrec|ache(Lev|
|00004a80| 65 6c 49 6e 66 6f 20 4c | 29 0d 0a 7b 0d 0a 20 20 |elInfo L|)..{.. |
|00004a90| 20 20 73 75 70 65 72 2e | 53 74 61 74 69 63 50 72 | super.|StaticPr|
|00004aa0| 65 63 61 63 68 65 28 20 | 4c 20 29 3b 0d 0a 0d 0a |ecache( |L );....|
|00004ab0| 09 4c 2e 41 64 64 50 72 | 65 63 61 63 68 65 4d 61 |.L.AddPr|ecacheMa|
|00004ac0| 74 65 72 69 61 6c 28 20 | 64 65 66 61 75 6c 74 2e |terial( |default.|
|00004ad0| 4e 6f 45 6e 74 72 79 54 | 65 78 74 75 72 65 20 29 |NoEntryT|exture )|
|00004ae0| 3b 0d 0a 09 4c 2e 41 64 | 64 50 72 65 63 61 63 68 |;...L.Ad|dPrecach|
|00004af0| 65 4d 61 74 65 72 69 61 | 6c 28 20 64 65 66 61 75 |eMateria|l( defau|
|00004b00| 6c 74 2e 54 65 61 6d 42 | 65 61 63 6f 6e 54 65 78 |lt.TeamB|eaconTex|
|00004b10| 74 75 72 65 20 29 3b 0d | 0a 09 4c 2e 41 64 64 50 |ture );.|..L.AddP|
|00004b20| 72 65 63 61 63 68 65 4d | 61 74 65 72 69 61 6c 28 |recacheM|aterial(|
|00004b30| 20 64 65 66 61 75 6c 74 | 2e 54 65 61 6d 42 65 61 | default|.TeamBea|
|00004b40| 63 6f 6e 42 6f 72 64 65 | 72 4d 61 74 65 72 69 61 |conBorde|rMateria|
|00004b50| 6c 20 29 3b 0d 0a 09 4c | 2e 41 64 64 50 72 65 63 |l );...L|.AddPrec|
|00004b60| 61 63 68 65 4d 61 74 65 | 72 69 61 6c 28 20 64 65 |acheMate|rial( de|
|00004b70| 66 61 75 6c 74 2e 43 72 | 6f 73 73 68 61 69 72 48 |fault.Cr|osshairH|
|00004b80| 69 74 46 65 65 64 62 61 | 63 6b 54 65 78 20 29 3b |itFeedba|ckTex );|
|00004b90| 0d 0a 09 4c 2e 41 64 64 | 50 72 65 63 61 63 68 65 |...L.Add|Precache|
|00004ba0| 4d 61 74 65 72 69 61 6c | 28 20 64 65 66 61 75 6c |Material|( defaul|
|00004bb0| 74 2e 44 65 66 61 75 6c | 74 43 72 6f 73 73 68 61 |t.Defaul|tCrossha|
|00004bc0| 69 72 20 29 3b 0d 0a 09 | 4c 2e 41 64 64 50 72 65 |ir );...|L.AddPre|
|00004bd0| 63 61 63 68 65 4d 61 74 | 65 72 69 61 6c 28 20 64 |cacheMat|erial( d|
|00004be0| 65 66 61 75 6c 74 2e 56 | 65 68 69 63 6c 65 49 63 |efault.V|ehicleIc|
|00004bf0| 6f 6e 2e 4d 61 74 65 72 | 69 61 6c 20 29 3b 0d 0a |on.Mater|ial );..|
|00004c00| 7d 0d 0a 0d 0a 73 69 6d | 75 6c 61 74 65 64 20 66 |}....sim|ulated f|
|00004c10| 75 6e 63 74 69 6f 6e 20 | 55 70 64 61 74 65 50 72 |unction |UpdatePr|
|00004c20| 65 63 61 63 68 65 4d 61 | 74 65 72 69 61 6c 73 28 |ecacheMa|terials(|
|00004c30| 29 0d 0a 7b 0d 0a 09 4c | 65 76 65 6c 2e 41 64 64 |)..{...L|evel.Add|
|00004c40| 50 72 65 63 61 63 68 65 | 4d 61 74 65 72 69 61 6c |Precache|Material|
|00004c50| 28 20 64 65 66 61 75 6c | 74 2e 4e 6f 45 6e 74 72 |( defaul|t.NoEntr|
|00004c60| 79 54 65 78 74 75 72 65 | 20 29 3b 0d 0a 09 4c 65 |yTexture| );...Le|
|00004c70| 76 65 6c 2e 41 64 64 50 | 72 65 63 61 63 68 65 4d |vel.AddP|recacheM|
|00004c80| 61 74 65 72 69 61 6c 28 | 20 64 65 66 61 75 6c 74 |aterial(| default|
|00004c90| 2e 54 65 61 6d 42 65 61 | 63 6f 6e 54 65 78 74 75 |.TeamBea|conTextu|
|00004ca0| 72 65 20 29 3b 0d 0a 09 | 4c 65 76 65 6c 2e 41 64 |re );...|Level.Ad|
|00004cb0| 64 50 72 65 63 61 63 68 | 65 4d 61 74 65 72 69 61 |dPrecach|eMateria|
|00004cc0| 6c 28 20 64 65 66 61 75 | 6c 74 2e 54 65 61 6d 42 |l( defau|lt.TeamB|
|00004cd0| 65 61 63 6f 6e 42 6f 72 | 64 65 72 4d 61 74 65 72 |eaconBor|derMater|
|00004ce0| 69 61 6c 20 29 3b 0d 0a | 09 4c 65 76 65 6c 2e 41 |ial );..|.Level.A|
|00004cf0| 64 64 50 72 65 63 61 63 | 68 65 4d 61 74 65 72 69 |ddPrecac|heMateri|
|00004d00| 61 6c 28 20 64 65 66 61 | 75 6c 74 2e 43 72 6f 73 |al( defa|ult.Cros|
|00004d10| 73 68 61 69 72 48 69 74 | 46 65 65 64 62 61 63 6b |shairHit|Feedback|
|00004d20| 54 65 78 20 29 3b 0d 0a | 09 4c 65 76 65 6c 2e 41 |Tex );..|.Level.A|
|00004d30| 64 64 50 72 65 63 61 63 | 68 65 4d 61 74 65 72 69 |ddPrecac|heMateri|
|00004d40| 61 6c 28 20 64 65 66 61 | 75 6c 74 2e 44 65 66 61 |al( defa|ult.Defa|
|00004d50| 75 6c 74 43 72 6f 73 73 | 68 61 69 72 20 29 3b 0d |ultCross|hair );.|
|00004d60| 0a 09 4c 65 76 65 6c 2e | 41 64 64 50 72 65 63 61 |..Level.|AddPreca|
|00004d70| 63 68 65 4d 61 74 65 72 | 69 61 6c 28 20 56 65 68 |cheMater|ial( Veh|
|00004d80| 69 63 6c 65 49 63 6f 6e | 2e 4d 61 74 65 72 69 61 |icleIcon|.Materia|
|00004d90| 6c 20 29 3b 0d 0a 0d 0a | 09 73 75 70 65 72 2e 55 |l );....|.super.U|
|00004da0| 70 64 61 74 65 50 72 65 | 63 61 63 68 65 4d 61 74 |pdatePre|cacheMat|
|00004db0| 65 72 69 61 6c 73 28 29 | 3b 0d 0a 7d 0d 0a 0d 0a |erials()|;..}....|
|00004dc0| 2f 2f 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |//======|========|
|00004dd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004de0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004df0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|00004e10| 0a 2f 2f 20 64 65 66 61 | 75 6c 74 70 72 6f 70 65 |.// defa|ultprope|
|00004e20| 72 74 69 65 73 0d 0a 2f | 2f 3d 3d 3d 3d 3d 3d 3d |rties../|/=======|
|00004e30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e70| 3d 3d 3d 3d 3d 3d 0d 0a | 0d 0a 00 |======..|... |
+--------+-------------------------+-------------------------+--------+--------+