=  java/lang/Object()V   !zombie/core/physics/CarController clientForceF    EngineForce    BrakingForce   VehicleSteering  isGasZ  isGasR  isBreak " #  atRestTimer % & regulatorTimer ( )isEnable+zombie/core/physics/Transform * . /0tempXfrmLzombie/core/physics/Transform;2zombie/iso/Vector2 1 5 67tempVec2Lzombie/iso/Vector2;9org/joml/Vector3f 8 < => tempVec3fLorg/joml/Vector3f; @ A> tempVec3f_2 C D> tempVec3f_3 F G acceleratorOn I JbrakeOn L M speedO0zombie/core/physics/CarController$ClientControls N R STclientControls2Lzombie/core/physics/CarController$ClientControls; V W drunkDelayCommandTimer Y Z wasBreaking \ ]wasGas _ `wasGasR b c wasSteering e fg vehicleObjectLzombie/vehicles/BaseVehicle; i jengineStartingFromKeyboard lmn opzombie/vehicles/BaseVehicle getScript*()Lzombie/scripting/objects/VehicleScript; lr s  savedPhysicsZ uvw xyjava/lang/FloatisNaN(F)Z l{ | z ~ java/lang/Mathmax(FF)F  &zombie/scripting/objects/VehicleScript getWheelCount()I getModelOffset()Lorg/joml/Vector3f; 8 y()F getWheel1(I)Lzombie/scripting/objects/VehicleScript$Wheel;  ,zombie/scripting/objects/VehicleScript$Wheel getOffset radius getCenterOfMassOffset  getExtents ~ min l 0 jniTransform * >origin 8  zombie/network/GameServerbServer l  VehicleIDS l x l l savedRotLorg/joml/Quaternionf; org/joml/Quaternionf { w  getFullName()Ljava/lang/String;  zombie/core/physics/Bullet addVehicle(IFFFFFFFLjava/lang/String;)V  )zombie/vehicles/BaseVehicle$AuthorizationRemote+Lzombie/vehicles/BaseVehicle$Authorization; l isNetPlayerAuthorization.(Lzombie/vehicles/BaseVehicle$Authorization;)Z setVehicleStatic!(Lzombie/vehicles/BaseVehicle;Z)I  zombie/debug/DebugLogVehicleLzombie/debug/DebugLogStream;;Vehicle vid=%d type=%s has been added at (%f;%f;%f) auth=%s  java/lang/ShortvalueOf(S)Ljava/lang/Short; u (F)Ljava/lang/Float; l getAuthorizationDescription  zombie/debug/DebugLogStreamdebugln(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V  gears-[Lzombie/core/physics/CarController$GearInfo;  *zombie/core/physics/CarController$GearInfominSpeedI  maxSpeed l  getVehicleTowedBy()Lzombie/vehicles/BaseVehicle; l  getCurrentSpeedKmHour l  getDriver&()Lzombie/characters/IsoGameCharacter;  "zombie/characters/IsoGameCharacter getMoodles%()Lzombie/characters/Moodles/Moodles;  $zombie/characters/Moodles/MoodleTypeDrunk&Lzombie/characters/Moodles/MoodleType;  !"!zombie/characters/Moodles/MoodlesgetMoodleLevel)(Lzombie/characters/Moodles/MoodleType;)I l$ %&getLinearVelocity((Lorg/joml/Vector3f;)Lorg/joml/Vector3f; 8( )length? 8- . normalize l0 1&getForwardVector 83 45dot(Lorg/joml/Vector3fc;)F 789 :zombie/network/GameClientbClient l< = jniSpeedB @AB CDzombie/network/ServerOptionsinstanceLzombie/network/ServerOptions; @F GH SpeedLimit1Lzombie/network/ServerOptions$DoubleServerOption; JKL MN/zombie/network/ServerOptions$DoubleServerOptiongetValue()D PQR STzombie/GameTime getInstance()Lzombie/GameTime; lV WgetFakeSpeedModifier PY Z[Lerp(FFF)F N] ^forward N` abackward Nc dbrake lf gh engineState.Lzombie/vehicles/BaseVehicle$engineStateTypes; jkl mh,zombie/vehicles/BaseVehicle$engineStateTypesIdle o pqdelayCommandWhileDrunk(Z)Z Ns t steering v pw(F)F y zupdateRegulator l| }~isInvalidChunkAhead()Z l ~isInvalidChunkBehind N shift N wasUsingParkingBrakes l  throttle P  getMultiplierA l ~ isRegulator? l getRegulatorSpeed?L  .zombie/core/physics/CarController$ControlState NoControl0Lzombie/core/physics/CarController$ControlState;  Braking  Forward  Reverse  zombie/ui/UIManager speedControlsLzombie/ui/SpeedControls;  zombie/ui/SpeedControlsSetCurrentGameSpeed(I)V  control_NoControl  control_Reverse(F)V  control_ForwardNew  updateBackSignal  control_Braking  updateBrakeLights l getTowAttachmentSelf l addPointConstrainta(Lzombie/characters/IsoPlayer;Lzombie/vehicles/BaseVehicle;Ljava/lang/String;Ljava/lang/String;)V  updateRammingSound ~ wabs= l  getMaxSpeed=u?zG{=#  wgetSteeringClamp  [zombie/core/math/PZMathclamp  bulletVariables3Lzombie/core/physics/CarController$BulletVariables;  1zombie/core/physics/CarController$BulletVariablessetU(Lzombie/vehicles/BaseVehicle;FFF)Lzombie/core/physics/CarController$BulletVariables;   checkTire6(Lzombie/core/physics/CarController$BulletVariables;)V    engineForce    brakingForce   vehicleSteering l ~isDoingOffroad l getTransmissionNumber? l setCurrentSteering l  setBraking(Z)V   checkShouldBeActive   controlVehicle(IFFF)V   getInventory"()Lzombie/inventory/ItemContainer; l getKeyId  zombie/inventory/ItemContainer haveThisKeyId#(I)Lzombie/inventory/InventoryItem;   !java/lang/BooleanTRUELjava/lang/Boolean; # $!FALSE 7& C'Lzombie/network/GameClient;)zombie/characters/IsoPlayer+vehicle- startEngine/haveKey 71 23sendClientCommandVW(Lzombie/characters/IsoPlayer;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V l5 6tryStartEngine j8 9hRunning@ < =park l? @ getScriptNameBTrailer DEF GHjava/lang/Stringcontains(Ljava/lang/CharSequence;)ZA ?A lM NgetCurrentSpeedForRegulator lP QsetRegulatorSpeed lS T setRegulator lV W~isEngineRunning lY Z[ engineSpeedDBH ~^ _(DD)D a bgetEngineIdleSpeed def gh"zombie/vehicles/TransmissionNumberN$Lzombie/vehicles/TransmissionNumber; lj khtransmissionNumber@@Ap pqr stzombie/core/RandNext(II)I pv sw(I)I ly zgetBrakingForceAP } ~Traits4Lzombie/characters/IsoGameCharacter$CharacterTraits;  2zombie/characters/IsoGameCharacter$CharacterTraits SpeedDemon4Lzombie/characters/traits/TraitCollection$TraitSlot;  ~2zombie/characters/traits/TraitCollection$TraitSlotisSet   SundayDriver  gearRatioCount d hSpeed1E; d hSpeed2B d hSpeed3Bp d hSpeed4B d hSpeed5B d hSpeed6C d hSpeed7C d hSpeed8CHE d getNext'(I)Lzombie/vehicles/TransmissionNumber; l changeTransmission'(Lzombie/vehicles/TransmissionNumber;)V d getIndex@p l transmissionChangeTimeLzombie/core/utils/UpdateLimit;  ~zombie/core/utils/UpdateLimitCheck@p@Y ~ _?Q@X?zG{ l getEnginePower@p  getPassengerCount  getMass? lC@??33A l getVehicleEngineRPM$()Lzombie/vehicles/VehicleEngineRPM;   zombie/vehicles/VehicleEngineRPM m_rpmData [Lzombie/vehicles/EngineRPMData;  wfloor  t   zombie/vehicles/EngineRPMData gearChange l NgetEngineSpeed   afterGearChangeB@$  #zombie/core/physics/CarController$1-$SwitchMap$zombie$vehicles$TransmissionNumber[I d  ordinal@@  getEngineForce??33@@L d hRDz??333 l" #$ramSoundJ& VehicleSkid(zombie/iso/IsoObject l* +, playSoundImpl+(Ljava/lang/String;Lzombie/iso/IsoObject;)J ./0 12java/lang/SystemcurrentTimeMillis()J l6 7$ ramSoundTime l9 :; stopSound(J)I l= >~ hasBackSignal l@ A~isBackSignalEmittingC onBackSignalEstateGstart lI JonBackMoveSignalStartLstop lN OonBackMoveSignalStop lQ R~getStoplightsOnTsetStoplightsOnVon lX T pZ [wAdjustForFramerate] TireFrontLeft l_ `a getPartById1(Ljava/lang/String;)Lzombie/vehicles/VehiclePart; cde fgzombie/vehicles/VehiclePartgetInventoryItem"()Lzombie/inventory/InventoryItem;?333333kTireFrontRightm TireRearLeft?q TireRearRight ls t~isKeyboardControlled vwx Syzombie/core/Core()Lzombie/core/Core;{Left v} ~getKey(Ljava/lang/String;)I  zombie/input/GameKeyboard isKeyDown(I)ZRightBackwardorg/lwjglx/input/Keyboard l  getJoypad  Czombie/input/JoypadManagerLzombie/input/JoypadManager;   isLeftPressed  isRightPressed   isRTPressed   isLTPressed   isBPressed  getMovementAxisX(I)F N $ forceBrake N reset l  getVehicleTowing l  getController%()Lzombie/core/physics/CarController; l $physicActiveCheck<#  ~shouldBeActive  setVehicleActive(IZ)V l ~isAtRest P  getTimeDelta v bDebug  Czombie/debug/DebugOptionsLzombie/debug/DebugOptions;  VehicleRenderOutline!Lzombie/debug/BooleanDebugOption;  M~zombie/debug/BooleanDebugOption l getWorldTransform@(Lzombie/core/physics/Transform;)Lzombie/core/physics/Transform; l getPoly-()Lzombie/vehicles/PolygonalMap2$VehiclePoly;   )zombie/vehicles/PolygonalMap2$VehiclePolyx1   y1   x2   y2  zombie/debug/LineDraweraddLine(FFFFFFFFFLjava/lang/String;Z)V   x3   y3   x4   y4  >_UNIT_Y 8 (FFF)Lorg/joml/Vector3f; 8 )(Lorg/joml/Vector3fc;)Lorg/joml/Vector3f;    getModel0()Lzombie/scripting/objects/VehicleScript$Model; 8 add l  getWorldPos;(Lorg/joml/Vector3f;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; 8 l getWheelForwardVector(ILorg/joml/Vector3f;)V 8{  C#zombie/core/physics/WorldSimulation%Lzombie/core/physics/WorldSimulation;  ! offsetX # $ offsetY & ' width ) *+drawRect(Lorg/joml/Vector3f;FFFF)V l- . collideX l0 1 collideY> 4 56 drawCircle(FFF)V 8 9getMovementAxisY ; <= getDeadZone(II)F 1? @(FF)Lzombie/iso/Vector2; 1B CD setLength(F)Lzombie/iso/Vector2;I 1G Hrotate lJ KgetX lM NgetY 1 1> S TU DrawIsoLine(FFFFFFFFFFI)V W *X(Lorg/joml/Vector3f;FFFFFFF)V 8Z [\cross<(Lorg/joml/Vector3fc;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; ^ 5_ (FFFFFFF)V a bc DrawIsoCircle (FFFFIFFFF)V 8e 6 g h(IIF)V  (Lzombie/vehicles/BaseVehicle;)VCodeLineNumberTable StackMapTablefindGear/(F)Lzombie/core/physics/CarController$GearInfo; acceleratorgetClientControls4()Lzombie/core/physics/CarController$ClientControls;update updateTrailercontrol_ForwardupdateControlsisGasPedalPressedisBrakePedalPresseddebug SourceFileCarController.java NestMembers InnerClassesClientControlsWheel AuthorizationGearInfoDoubleServerOptionengineStateTypes ControlStateBulletVariablesCharacterTraits(zombie/characters/traits/TraitCollection TraitSlotzombie/vehicles/PolygonalMap2 VehiclePoly,zombie/scripting/objects/VehicleScript$ModelModel1fg    # & )/067=>A>D>>GJM STjW Z]`cjk ** * * * **** !* $*'**Y,-*1Y34*8Y:;*8Y:?*8Y:B*E*H* K*NYPQ* U*X*[*^*a*+d*h+kM+qF%tg+z }8,,,:b8,,fb8,, nf8 fF+%h+++%++++,Ǹ++Ѷ׸W+,++%+l23$ &'()*"+',-.207UBVMWXXcYn\s]xa}45678:;=>?A BC F&HPJSHVL[M^LbOkPQOSml'jnokl4=+#2#2 2l &,2m )pk"*El dk"*Hl qrk*Qlsk  *d*dkL**d K*d *d = F*d*?#: '*!,W*;:*d/W2F 862*d;>?EIn8j8O UX8*d j8****Q\% *% ***Q_% *% ***Qb****Q\*Q_****deiv**X***n**[***n**^***n*Qr *a*Q**Qrur*x**X**[**^**Qr a**d{***#**d****Q****Q*d8* *Onb8Onf8  8  8*d(*!*8*d**dOn8: * : ,** : **:    *  *  ** ***d:  1  )*d 6*d *d Ŷ**QrҕC *K*dnf8  Җ8 *Y*Qr*bjj jf\*ύט * E* !*Yjf** }*Yjb** +*K8 ** v ݵ*d* **: * *  * * *d"*d>>*Y ko *d**d***d* ** * q*deid*h]*h6K*d *d "N%*d (*,Y.SY-S0 *d4*h* *h*de7C*E4*d;:&*dk*d ** *;lZ BDQWdjpz ).38LQV[ l z  ! &!+"3#D$I%N&S)]*b+g,l-t0}235789:<=>@DFH JLN&P.R<TAWIYP\X]\`dajdrexh|jknrsuxz{|}~.6?N]lx *GLRsm3 4@@87/  "*$l8%  .( ?l4!&jzB'Htkg*dL+)+ !*d *d+*d+Ŷȱ**d K****[*^*X*d + (*d 6*d+*d+Ŷȱ** * * *d>AC *I*d* ** lj  $89DINSX]bjm l*\)zkZ*$ *Y$OJnf$*Q *Q\*$ *d*dKbd*d*d *dD*d &*dL*d*d*dLO*d*d:bO*dR*K$*Q_*$ *K$*d:5*d*d *d*d*d:fO*dR*d ,*d O*dR* * *dRlV &9o    $08CQY m H .= & kOnD*dU+*dXf*d*dX\#jg]XJ*dX*dk`"*d**dYXK#jgX*dYXK#jcX*d *dci* *dXl *n *Il>$ &(!*=-S/]1r68:<=?CEm =4kOnD*dX*dk`*dYX o#jgX*dYXu#jcX*dci* **dx*Qb*Y{jl* I K!M;QPSZT_UjWtY[m;/uk OnE*d N--|6--|6*dk6 8*dic3*di6*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8%;*d*di6"*d*di6*di 64*dXT*dÙG*d*di1*dXȗ#*dÙ*d*di*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*di#jn8*dYX**dXgkʸ$kgX5#\\*dYX*dXgk#f$kgX2#**dYX*dXgk#f$kgX**dԇ**dXock *Y * #njf 6*dis*di*dkٚ*dk6#1*Y *dnj *Y j *dX*Y *dXglok )*Y j #K*Y #fKnj 4#*djJ*Y *djKb#fKnj )#*dӕ*Y *dKb#fKnj * *Q*Q*Y j 6*d;?EI* ljZ_ ab+cCeOfRg_iijlmyoqsuwy{} !,1:MS\or #0;HS`kx=Zmp&.@EUv  md'(@@* &5-Z.pJ 2'*5%"kl \OnE*d N--|6--|6*dk6 8*d:*dn8 # *dӸ8   n`6  6  d28:  k.6>FNV^f: 8: 0: (: : : : : *dic*d ix*didi*di W*d*did29# *dij&*d i*d*did2X*di:*did+*d*dX*did2b̵X*dX**dYX**dXgk$kgXi*di .B$*06<I  :8 *dYX $jcX*dԆ8 *dk8  *di . j8 * *dXock *Y * #njf 6*dis*di*dkٚ*dk6#1*Y *dnj *Y j *dX*Y *dXglok )*Y j #K*Y #fKnj 4#*djJ*Y *djKb#fKnj )#*dӕ*Y *dKb#fKnj * *Q*Q*Y j 6*d;?EI* lFQ !"+#C%O'R)^+k,y-.0125689;<>?ABDEGHJ NP&RKSoTxVWZ\_aeHgNhTiZj`kflko|stuwxz{|~'*;X]iw'/;V[m&(@@ vdtE41B7vdEvdnJvd2'*5%"k lOnE#jD*d N--|6--|6*di#jn8*dYX**dXgkʸ$kgX-*dYX*dXgk#f$kgX**dYX*dXgk#f$kgX* *dԆj*dXock *dX*Y *dXglok )*Y j #*Y n#bInj #*Y #bInj * lZ 1IS^!&2:LTfkm .@@i&H*k&*dU# * *dk` j!#* *dk` jn*d! .*d*d%')!*d-3aиua5*d! N*d5-@*d*d!8W*d !&*d! *d*d!8W*d !l6 4BNcym$63"k*W*dUM*d<C*d?96,%*d (*BYDSYFS0 *dH*C*d?96,%*d (*BYDSYKS0 *dMl& %+T[lr mT?k*K*dP6)%*d (*SYUSYS0S*dWH*dP6)%*d (*SYUSY"S0 *dWl:>DO$Y&Z(`*,.1m+ + pqkg6*YUObU*d hY*U * Ul45-62749m4pwkg6*YUObU*d hY*U * U# l>?-@2A4Cm4k=*d\^*d\^b+Yho+Yho*dj^*dj^b+Yho+Yho*dl^*dl^b+Yno+Yno*dp^*dp^b+Yno+Ynol6 HI+K9MVNdPrRSTVWXZm wk NJ*druz|<u|=u|>u|696*6*Q r*QYr fr*QYr br*Q\*Q_*Qb*Q*Qb *Q*d<[=>6668*Qr*Q\*Q_*Qb*Q --*QeA  3*Qb*Ql%^_`a*b7cEdLeSf[g_hlipj}klmnoprstuvwxyz#/=EMm$l4d5=kc#*dk*d *dx  **Z[**Z^*Q*dci*d*d;l& &0:AKUbm&;~kQ*d*dL+'*dU *  E$++l& /@GIml@@ ki*"*'*d*'* !E*'>*d™4*! *Y!Of!*! *d*'l2 &7@OXchm(x~k8* *lm@y~k*lzk ș˴жԚ*dkL*;M*d,/W*-N*d-W*d:         W6*dk+:*;W+ *;+ W*d*;*;W*;8*;8*d*; *;b*;b **;f"f%(Q*d, 3*d,/W**d,*d/23*d ,*d /*d6878:8_*4>:AWEF*dI*dL*dz*dIOb*dLPb*dz *d8*d8*dz8fb QRfb QRl. ).7@^| +Mqw     /QTom<8*6z<C8*[*+k+ *+$% Vl  *Xk; +8 +8 +8 *B: + YW 8 +Y jj+Y jj Y jj Y jj$+b8%+b8$+f8%+f8  nf8  nb8  nf8  nb8  nf8  nb8  nf8  nb8b8"b8b8"b8b8"b8b8"b8        +   Wl$&' (*+"/%031A2P3_4g5o6w789:;<=>?ABCD EF!G,H7ILJaKvLNO56k( *#$% ]l S T5_k. #$ %`l XY{kV8Y dY fSY2fSY2fSYilZ $7K|}~ Nj Nl@J@ jl@@