=org/lwjgl/opengl/GL11  java/lang/Object()V java/util/HashMap   %zombie/core/skinnedmodel/ModelManager m_modelMapLjava/util/HashMap;   m_bCreatedZ  bDebugEnableModels  bCreateSoftwareMeshes  SoftwareMeshAnims java/util/ArrayList  # $% m_modelSlotsLjava/util/ArrayList;'zombie/popman/ObjectPool) *+allocate&()Lzombie/popman/ObjectPool$Allocator; &- .'(Lzombie/popman/ObjectPool$Allocator;)V 0 12m_modelInstancePoolLzombie/popman/ObjectPool; 4 5%m_tempWeaponPartList 7 8m_animationAssets:3zombie/core/skinnedmodel/ModelManager$ModAnimations<game 9> ?(Ljava/lang/String;)V A BCm_gameAnimations5Lzombie/core/skinnedmodel/ModelManager$ModAnimations; E Fm_modAnimations H I% m_cachedAnimsKjava/util/HashSet J N OP m_containsLjava/util/HashSet; R S% m_torchesUjava/util/Stack T X YZ m_freeLightsLjava/util/Stack; \ ]% m_torchLights _ `%ToRemove b c%ToResetNextFrame e f%ToResetEquippedNextFrame h i%m_resetAfterRender k lZm_lights n oZ m_lightsTempqzombie/iso/Vector2 p t uv m_tempVec2Lzombie/iso/Vector2; x yv m_tempVec2_2 {|} ~zombie/network/GameServerbServer  zombie/network/ServerGUI isCreated()Zzombie/core/textures/Texture!zombie/core/textures/TextureFlags (III)V  zombie/core/PerformanceSettingsUseFBOszombie/core/textures/TextureFBO  (Lzombie/interfaces/ITexture;Z)V bitmap!Lzombie/core/textures/TextureFBO;java/lang/Exception printStackTrace  zombie/debug/DebugLog AnimationLzombie/debug/DebugLogStream;.FBO not compatible with gfx card at this time.  zombie/debug/DebugLogStreamerror(Ljava/lang/Object;)VLoading 3D models ?println initAnimationMeshes(Z)V 9 m_modIDLjava/lang/String; put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;  zombie/scripting/ScriptManagerinstance Lzombie/scripting/ScriptManager;Human getAnimationsMesh=(Ljava/lang/String;)Lzombie/scripting/objects/AnimationsMesh;  'zombie/scripting/objects/AnimationsMesh modelMesh*Lzombie/core/skinnedmodel/model/ModelMesh; NoOpenGL;zombie/core/skinnedmodel/animation/SoftwareSkinnedModelAnim2zombie/core/skinnedmodel/animation/StaticAnimation  toArray(([Ljava/lang/Object;)[Ljava/lang/Object;5[Lzombie/core/skinnedmodel/animation/StaticAnimation;  (zombie/core/skinnedmodel/model/ModelMesh softwareMesh2Lzombie/core/skinnedmodel/model/SoftwareModelMesh;  skinningData-Lzombie/core/skinnedmodel/model/SkinningData; ([Lzombie/core/skinnedmodel/animation/StaticAnimation;Lzombie/core/skinnedmodel/model/SoftwareModelMesh;Lzombie/core/skinnedmodel/model/SkinningData;)V getPath()Lzombie/asset/AssetPath;  zombie/asset/AssetPath()Ljava/lang/String;skinned/malebody  loadModelv(Ljava/lang/String;Ljava/lang/String;Lzombie/core/skinnedmodel/model/ModelMesh;)Lzombie/core/skinnedmodel/model/Model;skinned/femalebodyskinned/Male_Skeletonskinned/Female_Skeleton   m_animModel  loadModAnimations bob/bob_idle    getAnimationAssetRequiredC(Ljava/lang/String;)Lzombie/core/skinnedmodel/model/AnimationAsset;    $zombie/core/skinnedmodel/model/Model addDependency(Lzombie/asset/Asset;)V bob/bob_walk bob/bob_run   m_maleModel&Lzombie/core/skinnedmodel/model/Model;   m_femaleModel  m_skeletonMaleModel  !m_skeletonFemaleModel #$% &;zombie/core/skinnedmodel/advancedanimation/AdvancedAnimator systemInit ()* +6zombie/core/skinnedmodel/population/PopTemplateManager8Lzombie/core/skinnedmodel/population/PopTemplateManager; (- .init 012 3zombie/debug/DebugTypeLzombie/debug/DebugType; 5 67 isEnabled(Lzombie/debug/DebugType;)Z9!createSoftwareMesh: %B, model: %s ;<= >?java/lang/BooleanvalueOf(Z)Ljava/lang/Boolean; A BCdebugln9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V E FGloadModelInternal(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lzombie/core/skinnedmodel/model/ModelMesh;Z)Lzombie/core/skinnedmodel/model/Model;   J KLTagLjava/lang/Object;N+zombie/core/skinnedmodel/model/SkinningData PQR Sjava/lang/String toLowerCase U VWtryGetLoadedModel`(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;Z)Lzombie/core/skinnedmodel/model/Model; Y Z'Lzombie/core/skinnedmodel/ModelManager; \ ]^loadAdditionalModel:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)V ` abgetLoadedModel_(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Lzombie/core/skinnedmodel/model/Model; d ef newInstance(Lzombie/core/skinnedmodel/model/Model;Lzombie/characters/IsoGameCharacter;Lzombie/core/skinnedmodel/animation/AnimationPlayer;)Lzombie/core/skinnedmodel/model/ModelInstance;h java/io/File jkl mzombie/ZomboidFileSystemLzombie/ZomboidFileSystem; jo pqbaseLjava/io/File; gs t#(Ljava/io/File;Ljava/lang/String;)V jv wxbaseURILjava/net/URI; jz {|getMediaRootFile()Ljava/io/File; g~ toURI()Ljava/net/URI;  loadAnimsFromDir(Ljava/net/URI;Ljava/net/URI;Ljava/io/File;Lzombie/core/skinnedmodel/model/ModelMesh;Lzombie/core/skinnedmodel/ModelManager$ModAnimations;)V g exists  General ERROR: %s g  ((Ljava/lang/String;[Ljava/lang/Object;)V g | getParentFile - Parent exists: %B, %s g  isDirectory g  listFiles()[Ljava/io/File; j  getAnimName0(Ljava/net/URI;Ljava/io/File;)Ljava/lang/String;  loadAnim(Ljava/lang/String;Lzombie/core/skinnedmodel/model/ModelMesh;Lzombie/core/skinnedmodel/ModelManager$ModAnimations;)Lzombie/core/skinnedmodel/model/AnimationAsset;  zombie/core/opengl/RenderThread RenderThreadLjava/lang/Thread;  org/lwjglx/opengl/DisplayprocessMessages  zombie/DebugFileWatcherLzombie/DebugFileWatcher;5zombie/core/skinnedmodel/ModelManager$AnimDirReloader  (Lzombie/core/skinnedmodel/ModelManager;Ljava/net/URI;Ljava/net/URI;Ljava/lang/String;Lzombie/core/skinnedmodel/model/ModelMesh;Lzombie/core/skinnedmodel/ModelManager$ModAnimations;)V  GetFileWatcher ()Lzombie/PredicatedFileWatcher;  add!(Lzombie/PredicatedFileWatcher;)V   getCurrentID()Iorg/lwjgl/opengl/GL30@  glBindFramebuffer(II)V%org/lwjgl/opengl/ARBFramebufferObject %org/lwjgl/opengl/EXTFramebufferObject  glBindFramebufferEXT  glPushClientAttrib(I)V   glPushAttrib   glMatrixMode   glPushMatrix  glLoadIdentity  glOrtho (DDDDDD)V   glViewport(IIII)V  !org/lwjgl/opengl/ARBShaderObjectsglUseProgramObjectARB  zombie/core/opengl/Shader ShaderMap  >java/lang/Integer(I)Ljava/lang/Integer;   containsKey(Ljava/lang/Object;)Z  get&(Ljava/lang/Object;)Ljava/lang/Object;    startRenderThread%(Lzombie/core/textures/TextureDraw;)V>?u   glColor4f(FFFF)V  glBegin   glTexCoord2f(FF)V   glVertex2f  glEnd    glPopMatrix " # glPopAttrib % &glPopClientAttrib ( )* lastTextureIDI ,-. /zombie/core/SpriteRendererLzombie/core/SpriteRenderer; ,1 23getRenderingPlayerCamera(I)Lzombie/iso/PlayerCamera; 567 8*zombie/iso/PlayerCameraOffscreenWidth 5: ;*OffscreenHeight =>? @Azombie/iso/sprite/SkyBox getInstance()Lzombie/iso/sprite/SkyBox; =C DswapTextureFBO FGH Iorg/lwjglx/opengl/Util checkGLErrorKjava/lang/Throwable MNO @Pzombie/iso/IsoWater()Lzombie/iso/IsoWater; MR SwaterProjectionUzombie/iso/WaterShader TW XYupdateWaterParams&(Lzombie/core/textures/TextureDraw;I)V M[ \ waterGeometry ^_` Iazombie/core/opengl/PZGLUtil(Z)ZcDEBUG: EXCEPTION RenderWater ^e fg printGLState(Ljava/io/PrintStream;)V ijk @lzombie/iso/IsoPuddles()Lzombie/iso/IsoPuddles; in opuddlesProjectionqzombie/iso/PuddlesShader ps tupdatePuddlesParams iv wpuddlesGeometryyDEBUG: EXCEPTION RenderPuddles {|} @~zombie/iso/ParticlesFire()Lzombie/iso/ParticlesFire; { getFireShaderID { getSmokeShaderID { getVapeShaderID {  getShaderTime()F   glBlendFunczombie/iso/FireShader  updateFireParams'(Lzombie/core/textures/TextureDraw;IF)V { getGeometryFirezombie/iso/SmokeShader  updateSmokeParams {  getGeometry DEBUG: EXCEPTION RenderParticles  "zombie/characters/IsoGameCharacter legsSpriteLzombie/iso/sprite/IsoSprite;  zombie/iso/sprite/IsoSprite modelSlot1Lzombie/core/skinnedmodel/ModelManager$ModelSlot;  /zombie/core/skinnedmodel/ModelManager$ModelSlotmodel.Lzombie/core/skinnedmodel/model/ModelInstance;  resetModelInstanceC(Lzombie/core/skinnedmodel/model/ModelInstance;Ljava/lang/Object;)V  %sub  size  (I)Ljava/lang/Object;,zombie/core/skinnedmodel/model/ModelInstance  primaryHandModel  secondaryHandModel  attachedModels0Lzombie/characters/AttachedItems/AttachedModels;  .zombie/characters/AttachedItems/AttachedModelscontains  resetModelInstanceRecurse  getReadyModelData()Ljava/util/ArrayList;  derefModelInstances(Ljava/util/ArrayList;)V  clear  dressInRandomOutfit'(Lzombie/characters/IsoGameCharacter;)V   getBodyModelL(Lzombie/characters/IsoGameCharacter;)Lzombie/core/skinnedmodel/model/Model;  getAnimationPlayer6()Lzombie/core/skinnedmodel/animation/AnimationPlayer;  setOwner  isFemale FemaleBodyMaleBody  getModelScript:(Ljava/lang/String;)Lzombie/scripting/objects/ModelScript;   m_modelScript&Lzombie/scripting/objects/ModelScript;  DoCharacterModelPartsX(Lzombie/characters/IsoGameCharacter;Lzombie/core/skinnedmodel/ModelManager$ModelSlot;)V J iterator()Ljava/util/Iterator;   java/util/IteratorhasNext   next()Ljava/lang/Object;   reloadOutfit   isSceneCulled   remove  bRemove  getSlotW(Lzombie/characters/IsoGameCharacter;)Lzombie/core/skinnedmodel/ModelManager$ModelSlot; ! "*framesSinceStart $%& 'java/util/ObjectsrequireNonNull) *+runD(Lzombie/core/skinnedmodel/model/ModelInstance;)Ljava/lang/Runnable; - ./invokeOnRenderContext(Ljava/lang/Runnable;)V 1 2active 4 56 character$Lzombie/characters/IsoGameCharacter; 4 9 :;objectLzombie/iso/IsoMovingObject; = >?getForwardDirection()Lzombie/iso/Vector2; A BC SetForceDir(Lzombie/iso/Vector2;)V JE  G HIonCullStateChanged+(Lzombie/core/skinnedmodel/ModelManager;Z)V K LM AnimPlayer4Lzombie/core/skinnedmodel/animation/AnimationPlayer; OPQ R2zombie/core/skinnedmodel/animation/AnimationPlayerisBoneTransformsNeedFirstFrame T UUpdate WXY Z["zombie/core/logger/ExceptionLogger logException(Ljava/lang/Throwable;)V]zombie/characters/IsoZombie _`a bczombie/util/Type tryCastTo7(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object; \e fisReanimatedPlayer \h i wasFakeDead klm nzombie/network/GameClientbClient p qisPersistentOutfitInit s tgetPersistentOutfitID \v wdressInPersistentOutfitID yz{ |zombie/debug/DebugOptionsLzombie/debug/DebugOptions; y~ ZombieOutfitRandom!Lzombie/debug/BooleanDebugOption;  zombie/debug/BooleanDebugOptiongetValue \ bDressInRandomOutfit \   isZombie \  isSkeleton J  DoCharacterModelEquipped RightHandMask  ? clearVariable  maskVariableValue  LeftHandMask     getAttachedItems1()Lzombie/characters/AttachedItems/AttachedItems; -zombie/characters/AttachedItems/AttachedItems  1(I)Lzombie/characters/AttachedItems/AttachedItem;  ,zombie/characters/AttachedItems/AttachedItemgetItem"()Lzombie/inventory/InventoryItem;  zombie/inventory/InventoryItemgetStaticModel  zombie/util/StringUtilsisNullOrWhitespace(Ljava/lang/String;)Z  getGroup9()Lzombie/characters/AttachedItems/AttachedLocationGroup;   getLocation  5zombie/characters/AttachedItems/AttachedLocationGroupF(Ljava/lang/String;)Lzombie/characters/AttachedItems/AttachedLocation;  0zombie/characters/AttachedItems/AttachedLocationgetAttachmentName   addStatic(Lzombie/core/skinnedmodel/model/ModelInstance;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance; E!zombie/inventory/types/HandWeapon  addWeaponPartModels(Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Lzombie/inventory/types/HandWeapon;Lzombie/core/skinnedmodel/model/ModelInstance;)V  @zombie/core/Core()Lzombie/core/Core;  getOptionSimpleWeaponTextures  >zombie/core/skinnedmodel/model/ModelInstanceTextureInitializerallocB()Lzombie/core/skinnedmodel/model/ModelInstanceTextureInitializer;  .Q(Lzombie/core/skinnedmodel/model/ModelInstance;Lzombie/inventory/InventoryItem;)V  setTextureInitializerC(Lzombie/core/skinnedmodel/model/ModelInstanceTextureInitializer;)V E  getPrimaryHandItem  getSecondaryHandItem  isHideWeaponModelzombie/characters/IsoPlayer  forceNullOverride  getCharacterActions()Ljava/util/Stack; T isEmpty T2zombie/characters/CharacterTimedActions/BaseAction   overrideHandModels   getPrimaryHandMdl Bip01_Prop1  (Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance;   getSecondaryHandMdl Bip01_Prop2  overridePrimaryHandModel   isNullOrEmpty ! "overrideSecondaryHandModel $ %&getItemReplacementPrimaryHand,()Lzombie/scripting/objects/ItemReplacement; ( )*addEquippedModelInstance(Lzombie/characters/IsoGameCharacter;Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Lzombie/inventory/InventoryItem;Ljava/lang/String;Lzombie/scripting/objects/ItemReplacement;Z)Lzombie/core/skinnedmodel/model/ModelInstance; , -&getItemReplacementSecondHand  01(zombie/scripting/objects/ItemReplacement 03 45 clothingItem2Lzombie/core/skinnedmodel/population/ClothingItem; 07 8 attachment : ;<addMaskingModel(Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Lzombie/characters/IsoGameCharacter;Lzombie/inventory/InventoryItem;Lzombie/scripting/objects/ItemReplacement;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance; > ?@ getVisual.()Lzombie/core/skinnedmodel/visual/ItemVisual; (B CDaddClothingItem(Lzombie/characters/IsoGameCharacter;Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Lzombie/core/skinnedmodel/visual/ItemVisual;Lzombie/core/skinnedmodel/population/ClothingItem;)Lzombie/core/skinnedmodel/model/ModelInstance; F GHgetClothingItem4()Lzombie/core/skinnedmodel/population/ClothingItem; JKL M0zombie/core/skinnedmodel/population/ClothingItemgetTextureChoices OPQ R*zombie/core/skinnedmodel/visual/ItemVisualgetTextureChoice T UVaddStaticForcedTex(Lzombie/core/skinnedmodel/model/ModelInstance;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance; X UY(Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance; O[ \]m_TintLzombie/core/ImmutableColor; _`a bczombie/core/ImmutableColorrF e fctintR _h icg k lctintG _n ocb q rctintB 0t umaskVariableName w xy setVariable'(Ljava/lang/String;Ljava/lang/String;)V { |bUpdateEquippedTextures ~ getModelWeaponPart  getAllWeaponParts,(Ljava/util/ArrayList;)Ljava/util/ArrayList;!zombie/inventory/types/WeaponPart(zombie/scripting/objects/ModelWeaponPart   getFullType  partType P equals   modelName  attachmentNameSelf  attachmentParent   clearOwner   isRendering  bResetAfterRender3zombie/core/skinnedmodel/model/VehicleModelInstance6zombie/core/skinnedmodel/model/VehicleSubModelInstance  reset & release  resetModelInstancesRecurse*(Ljava/util/ArrayList;Ljava/lang/Object;)V  $assertionsDisabled  *renderRefCountjava/lang/AssertionError   getOwner  derefModelInstance1(Lzombie/core/skinnedmodel/model/ModelInstance;)V  0 3Clothing   makeConcatWithConstantsi(Lzombie/characters/IsoGameCharacter;Lzombie/core/skinnedmodel/ModelManager$ModelSlot;)Ljava/lang/String;  B? ( populateCharacterModelSlot  Reset  ResetCharacterEquippedHands  DoRemove'(Lzombie/characters/IsoGameCharacter;)Z    T  zombie/iso/IsoWorldLzombie/iso/IsoWorld;   CurrentCellLzombie/iso/IsoCell;  zombie/iso/IsoCellgetLamppostPositions T addAll(Ljava/util/Collection;)Z   getVehicleszombie/vehicles/BaseVehicle  sprite  hasActiveModel   UpdateLights  zombie/iso/LightingJNI getTorches,zombie/characters/IsoGameCharacter$TorchInfozombie/iso/IsoLightSource    (IIIFFFI)V T  pop  cx  *  cy  *  cz  * `?Y h? n " #cdist %&' ()java/lang/Mathceil(D)D + ,*radius . /V(ILzombie/core/skinnedmodel/model/ModelInstance;Lzombie/characters/IsoGameCharacter;)V 1 2 addNewSlot J 5 6 ContainsChar8java/lang/IllegalStateException:\IsoGameCharacter.isSceneCulled() = true inconsistent with ModelManager.ContainsChar() = true 7>= *>=(Lzombie/core/skinnedmodel/ModelManager;)Ljava/lang/Runnable; T A BbActive D E*life G HIlocalToBuildingLzombie/iso/areas/IsoBuilding; KLM NOzombie/iso/IsoMovingObjectgetCurrentBuilding ()Lzombie/iso/areas/IsoBuilding; K K? TUV WXzombie/iso/IsoUtils DistanceTo(FFFF)F K [\] ^_zombie/iso/LosUtil lineClear=(Lzombie/iso/IsoCell;IIIIIIZ)Lzombie/iso/LosUtil$TestResults; abc dezombie/iso/LosUtil$TestResultsBlocked Lzombie/iso/LosUtil$TestResults; TE h ibCone p p pm n normalize p qcangleX s tcangleY pv wxdot(Lzombie/iso/Vector2;)Fk{ |}compare4()Lzombie/util/lambda/Comparators$Params1$ICallback;  zombie/util/Lambda comparator\(Ljava/lang/Object;Lzombie/util/lambda/Comparators$Params1$ICallback;)Ljava/util/Comparator;  zombie/util/list/PZArrayUtilsort*(Ljava/util/Stack;Ljava/util/Comparator;)V T   getScript*()Lzombie/scripting/objects/VehicleScript;  &zombie/scripting/objects/VehicleScriptgetModel0()Lzombie/scripting/objects/VehicleScript$Model;  ,zombie/scripting/objects/VehicleScript$Modelfile  a:(Ljava/lang/String;)Lzombie/core/skinnedmodel/model/Model; Failed to find vehicle model: %s%s  B'(Ljava/lang/String;Ljava/lang/Object;)V    .f  ?applyModelScriptScale  getSkin   getTextures/()Lzombie/scripting/objects/VehicleScript$Skin;   getSkinIndex   getSkinCount  0(I)Lzombie/scripting/objects/VehicleScript$Skin;  +zombie/scripting/objects/VehicleScript$Skintexture  ? LoadTexture   textureDataLzombie/core/textures/Texture;  tex  textureDataMask   textureMask  textureDataDamage1Overlay  textureDamage1Overlay  textureDataDamage1Shell  textureDamage1Shell  textureDataDamage2Overlay  textureDamage2Overlay  textureDataDamage2Shell  textureDamage2Shell  textureDataLights   textureLights  textureDataRust   textureRust   bindAlwaystexture not found:  9  %models%zombie/vehicles/BaseVehicle$ModelInfo   scriptModel.Lzombie/scripting/objects/VehicleScript$Model; vehicle.models[%d] not found: %s      9  parent    modelInfo'Lzombie/vehicles/BaseVehicle$ModelInfo;    modelInstance8Lzombie/core/skinnedmodel/model/VehicleSubModelInstance;  newStaticInstance(Lzombie/core/skinnedmodel/ModelManager$ModelSlot;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance; &(Ljava/lang/String;)Ljava/lang/String; ! "#loadStaticModel^(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/Model;% &8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;(vehicles_wheel02*vehicles/vehicle_wheel02, vehiclewheel  / 0* parentBone O2 34getSkinningBoneIndex(Ljava/lang/String;I)I 6 7parentBoneName 9 : getItemName < => modelMetaDataLjava/util/TreeMap; @Ajava/util/TreeMapC3zombie/core/skinnedmodel/ModelManager$ModelMetaData BE FmeshName BH I textureName BK L shaderName NOP Q$zombie/scripting/objects/ModelScript getMeshName NS TgetTextureName NV W getShaderName Y   &\    ` aattachmentNameParentcvehicle e f'(Ljava/lang/String;Ljava/lang/String;)Zhvehicle_multiuvjvehicle_norandom_multiuv l mgetPerfReflectionsOnLoad p qmodifyShaderNames5zombie/core/skinnedmodel/model/Model$ModelAssetParams r rv wanimationsModel ry zbStatic rE rK rH  fstartsWithIgnoreCase  zombie/core/textures/TextureIDbUseCompression r * textureFlags  getTextureFlags  createModelKeyK(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/lang/String;  0zombie/core/skinnedmodel/model/ModelAssetManager2Lzombie/core/skinnedmodel/model/ModelAssetManager; >  loadU(Lzombie/asset/AssetPath;Lzombie/asset/AssetManager$AssetParams;)Lzombie/asset/Asset;  putLoadedModel`(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;Lzombie/core/skinnedmodel/model/Model;)V  OptionModelTextureMipmaps  setModelMetaDataL(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V B By @ basicEffect N  loadedModel NK Ny N animationsMesh P trim  entrySet()Ljava/util/Set;  java/util/Setjava/util/Map$Entry  getKey P  startsWith   P length P charAt(I)COverride key="%s" old=%s new=%s  BK(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Vkey="%s" model=%s   Name  builderLjava/lang/StringBuilder; java/lang/StringBuilder  delete(II)Ljava/lang/StringBuilder;  toLowerKeyRoot  java/util/LocaleENGLISHLjava/util/Locale; P S&(Ljava/util/Locale;)Ljava/lang/String;  append-(Ljava/lang/String;)Ljava/lang/StringBuilder;  amp     shaderEquals  toLower  texA   toLowerTex   isStaticTrue   toString  %  %Adding asset to queue: %sBzombie/core/skinnedmodel/model/AnimationAsset$AnimationAssetParams     4zombie/core/skinnedmodel/model/AnimationAssetManager6Lzombie/core/skinnedmodel/model/AnimationAssetManager; -zombie/core/skinnedmodel/model/AnimationAsset    !putAnimationAssety(Ljava/lang/String;Lzombie/core/skinnedmodel/model/AnimationAsset;Lzombie/core/skinnedmodel/ModelManager$ModAnimations;)V 9# $m_animationAssetMap & ' getOrDefault)Overwriting asset: %s + ,-animAssetToStringC(Lzombie/core/skinnedmodel/model/AnimationAsset;)Ljava/lang/String;/New asset : %s 91 2%m_animationAssetList 4 5modelManagerKey 7 8C modAnimations:null = null-path P? >@&(Ljava/lang/Object;)Ljava/lang/String; B C getAnimationAssetEjava/lang/NullPointerException  D> MI JAnimationClipsL0zombie/core/skinnedmodel/animation/AnimationClip N OPvalues()Ljava/util/Collection; RST UVjava/lang/SystemerrLjava/io/PrintStream;X(ModelManager.newInstance> Model is null. Z[java/io/PrintStream ]^java/util/Collection  a bkeySet Pd e(Ljava/lang/CharSequence;)Z  hreloading model %s j klprintf<(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;n8zombie/core/skinnedmodel/model/ModelMesh$MeshAssetParams m m  r sMesh u vwvb3Lzombie/core/skinnedmodel/model/VertexBufferObject;y;isStatic=true my |y}1zombie/core/skinnedmodel/model/VertexBufferObject  /zombie/core/skinnedmodel/model/MeshAssetManager1Lzombie/core/skinnedmodel/model/MeshAssetManager;  reload>(Lzombie/asset/Asset;Lzombie/asset/AssetManager$AssetParams;)V 9  setPriority  getAllAnimationsMeshes j  getModIDs   zombie/gameStates/ChooseGameInfogetAvailableModDetails:(Ljava/lang/String;)Lzombie/gameStates/ChooseGameInfo$Mod;  q$zombie/gameStates/ChooseGameInfo$Mod animsXFile   %animationDirectories  isReady  qbaseFile  q mediaFile  loadHumanAnimations^(Lzombie/gameStates/ChooseGameInfo$Mod;Lzombie/core/skinnedmodel/ModelManager$ModAnimations;)V  setActiveAnimations  9 isActive 9 * m_priority  I  putAll(Ljava/util/Map;)V   getAssetTable(()Lzombie/asset/AssetManager$AssetTable;  meshFile $zombie/asset/AssetManager$AssetTable   m_animationsMesh  isLoadingAnimationMeshes  zombie/GameWindow fileSystemLzombie/fileSystem/FileSystem;  zombie/fileSystem/FileSystemupdateAsyncTransactions  java/lang/Threadsleep(J)Vjava/lang/InterruptedException   StartFrame  EndFrame   StartFrameUI   EndFrameUI  ?(Ljava/lang/String;Lzombie/core/skinnedmodel/model/ModelMesh;)V   isFailure g getName  isAnimationsMeshDirectory K DistTo(II)F J J%[Lzombie/characters/IsoGameCharacter;!Exception thrown removing Models.   java/lang/ClassdesiredAssertionStatus  P  CASE_INSENSITIVE_ORDERLjava/util/Comparator; @ (Ljava/util/Comparator;)Vshader=;tex=&  SignatureMLjava/util/HashMap;dLjava/util/HashMap;HLjava/util/ArrayList;JLzombie/popman/ObjectPool;:Ljava/util/ArrayList;VLjava/util/HashMap;\Ljava/util/HashMap;KLjava/util/ArrayList;9Ljava/util/HashSet;ELjava/util/ArrayList;.Ljava/util/Stack;2Ljava/util/ArrayList;;Ljava/util/ArrayList;\Ljava/util/TreeMap;9Ljava/util/HashMap;CodeLineNumberTablecreate StackMapTablenewAdditionalModelInstance(Ljava/lang/String;Ljava/lang/String;Lzombie/characters/IsoGameCharacter;Lzombie/core/skinnedmodel/animation/AnimationPlayer;Ljava/lang/String;)Lzombie/core/skinnedmodel/model/ModelInstance;0[Ljava/io/File;2 java/net/URI RenderSkyBox)(Lzombie/core/textures/TextureDraw;IIII)V RenderWater((Lzombie/core/textures/TextureDraw;IIZ)V RenderPuddlesRenderParticles'(Lzombie/core/textures/TextureDraw;II)V; zombie/core/textures/TextureDrawreloadAllOutfitsAddZ(Ljava/util/ArrayList;Ljava/lang/Object;)VH(Ljava/util/ArrayList;)VupdateRemove (Lzombie/vehicles/BaseVehicle;)VResetNextFrameResetEquippedNextFramegetClosestThreeLights;(Lzombie/iso/IsoMovingObject;[Lzombie/iso/IsoLightSource;)V addVehicle:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)VcreateModelKey2addAnimationClipG(Ljava/lang/String;Lzombie/core/skinnedmodel/animation/AnimationClip;)VgetAnimationClipF(Ljava/lang/String;)Lzombie/core/skinnedmodel/animation/AnimationClip;getAllAnimationClipsL()Ljava/util/Collection;isLoadingAnimationsreloadModelsMatchinganimationAssetLoaded2(Lzombie/core/skinnedmodel/model/AnimationAsset;)Vlambda$getClosestThreeLights$1U(Lzombie/iso/IsoLightSource;Lzombie/iso/IsoLightSource;Lzombie/iso/IsoMovingObject;)Ilambda$Reset$0 SourceFileModelManager.java NestMembersBootstrapMethods] ^_` ab"java/lang/invoke/LambdaMetafactory metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;e g0()Lzombie/core/skinnedmodel/model/ModelInstance;j k ldestroySmartTexturesn opq r$java/lang/invoke/StringConcatFactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;tChar:  Slot: v w Vy9(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)I{ | TUUAdding Static Model:Model not found. model: tex: _noreflect6ModelManager.getLoadedModel> Model missing for key=""shader=;tex=;isStatic=true&%Required Animation Asset not found: media/anims_X/ InnerClasses"zombie/popman/ObjectPool$Allocator Allocator ModAnimationsAnimDirReloader ModelSlot TorchInfo TestResults&zombie/util/lambda/Comparators$Params1zombie/util/lambda/ComparatorsParams10zombie/util/lambda/Comparators$Params1$ICallback ICallbackModelSkin ModelInfo ModelMetaDataModelAssetParams%zombie/asset/AssetManager$AssetParamszombie/asset/AssetManager AssetParams java/util/MapEntryAnimationAssetParamsMeshAssetParamsMod AssetTable%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup1 + Z!$%125%8BCF I%!OP"S%#YZ$]%%`%&c%&f%&i%lZ$oZ$uvyv=>'(((O)z** Y **** Y *Y!"*&Y(,/*Y!3* Y 6*9Y;=@* Y D*Y!G*JYLM*Y!Q*TYVW*Y![*Y!^*Y!a*Y!d*Y!g*TYVj*TYVm*pYrs*pYrw*f:>DEFG)I4JDKOMZNgOrP}RTUVXYZ[]^_`)**n+)0N*z 9YL*Y+M,**D*@*@WĶL+MК8*1Y*Gն,,N*,-W*,N*,:*,:*,:*,*-* -* -* * * * *-****"',(58*(suxz$|(589=AIJRWjsx(-39?DGM,  # h]^)e*6/48:+@*+,*D:5Y*GնHIM:*+OW*"-2Vd, E -.)o5*+,T:6X+,[*+,_:*-c*  +,  )I)gYin+rN*iuiy}-,*@*()(*) -LY-S-:-Y:SYS:--:6:6 6   O 2:  *+, +i, : * W6К  Y*+,-*b.01&3F1P7W9X<^=c?dBgCEHILMNPRCVY[,A !g. /  11g9//$g'34)@ M67$/ɧϧ ٸݸݸ+            ݸݸ!$'+0:497$/ɧϧ Ҹ<B*1_b d(e+g3h6j>nBoHwNxQyTz_{j|p}s~vz (03;>FL,  Y5 56)@E:ٸݸLQ+0:ݸ:T T+VLZݸݸ!$']bdJ*r $-369=LT^fjpsy|,FJU5=7)]Wٸݸhmݸ:p prhuݸݸ!$']xd*n !'*-1@HRY]c f l o ruy, R<89) #z6z6z6E:ٸݸ+04+09ݸz8:+z:+zݸݸ!$'+04+09]dJ*' $* 0!3"6$O%U&X'[)c+j-o./016789:;DFGHIKLMN PRS"U,# :Jr8U)+ ++M*,,>,D,:+æ%+Ʀ,͙ *,҄*+ն+ն*+*+N,*-++c,,,+ *+,*^_adf#g0i=jFkIlRmUnaodpkgqsytxz{|~,N # C    P<)X#*ML++ M,*", =)0.*+*^+*^+W+*+M, ,,Y#W(,*+*+N,*-++c,,,+ *+,,0,+3,+7,+8,,7<@6,#,:+7+8+,*M+DW+*F,J,JN,S :V#&J*%$/06;BSX^lt#&(-,L "4    P9+tJ)v+\^\M,,d ,g$j,+o+r ,+rux}+o,, ,,+o ,+ru*B #'5=> J QV]bfmu, \)n3++\+**+***!#%)".)0.4, 6)?*M+*^+*A,@)Q#++ +*++*FHJ"K,)X +;++*+,,+öW,+öW++;++*+,,+ƶW,+ƶW+>,ɶ4,:*,,W,W,ɶ>++::+¶Ŷ:*,:Y,,WԸ^:**,ָڶߚ:   ,WW+\+N+:+N:++ N:+6++:h`6N  N +*, : :+*,+6+*,++ 6+*,+ --#:+*+,-'#-+:+*+,'Ʊ*2LOQRST+U:V?XFZM[U\^]j^y_~bdefgbikmnoqrsuv%w5x:zC|L~QZakkqx} /9<LVYims,c?>;  PP  J$$)*)J -Ը^:B.: *, :*,ָڶߙ:   -^://2 -*,+-/69:-*,-:*R # ,"5$8'=(F)M*P,T.m/v1379:=,/8P  P0%;<)[ :-=: 2 ',+ 2A:-:  -E-EI NP: *+- S:*+- W: * Z^d Zgj Zmp,sv,z*VBD EF*G4H6J9KELYNaOxQSUVWX\]^`,*O "P2) ,}:z,*3:6c:6D:  "*-   :  +*:ef hi"j.k;lGmWnmospvk|i,D)6++,+ ++++*/+*2   !()-5, )F+*+,*+,*,)Y">++:*,* !, >)d++ Y+Yd+;+4+ Y+++*/+*6 $2GNOVW[c,, )V=++N*-* , ?)s5,>¸4+,,ݲ'+,*+,*" &.4, @) <*a*aM*,Є*a<*d*dM*,ӄ*d<*^*^M*,W*^<*g,*gM,,*gW*jݲa޴X*j޴W޴L=+3+N---*W*[W*[*Q*Q<*Q*QM*WY  *W N-, -,-,- -- -,!$**[-W|*/ $+8DIOVcou{ # / 6=DQ],;!!"-21"1IJ2)<Y*"+-M*",W,*!"#)E=*"5*"N---0-*+0*. ( *+ -#0*2-5477:9(?>,  )s*M+=>*"X*":3+9+*M+3W+ +*F*g *gW=*BH K NOQ)S2V5Y=ZF\M_Sb_digkOqj, #A)D+*^+ +*^+W+*F*+47Y9;*& oruwx'y0{8}C,'AB)s6+1+'+M*g, *g,W+*$-5, -C)C*a+*a+W*  , D)C*d+*d+W*  , )<*<,*j*mݱ* EF) *m*j?N-- :@CF+JF+P+QRbRbS*޴+P+Q+YZ`e*mfWX+>*Q*Q:+P+Q S!޴+P+Q+Y Z`}gb*s: +Pfj+QfklW*w:ojrklWu8y*m*[fW*m+z~,,,[S[SS*m,*mS*m,*mS*m,*mS*,#+.69MPy|-08>M\bhr|!#%,, +0 83f3GB)g !*z + ++M+N*-:Y-S/4 -Y:+W-+W,:++, ,+:õʵеֵܵY+S*:+6++: * :  &YSY SqY:    W      +    W     ǵ W  ?0+*<)+.03 5!8&:1;8<=>N?OBXDbGkHxI~KLMORSVXYZ[\]_ae'h.i5j<lBnJoYqgruszuvyz{|}~ o ,< -P Bm%O [)r4*+,-:+W++W* $1,)9²/4,*,-T:8,4*,- W*,-_:/4,-$,*')+T:*+3+Jc:+-+J +J.1.5+JJ*N !*3>CLY[_p   ,C B)! *+,-W*UY)W ,8:,8::;,?B:9D D:G G:J J::,:  4 M: R: U:*+-X:   ,Z *+-X*^   +"2$=&D(O*V.^/b1k2p4w5~678:<?,32  PPPPPPB ;N)# *+,-S*DUV) ,8:,8::,:   M: R: U::*T:  ?:* W*_:  /4$*')+T:  */[: +&  +7+J]W +-+ W   ]W  ,Z -^ _ *!IJ KMNP$Q+R2U:V>XLYV[a]n^s`|abehjloprstxz|~,9 2  PPPPPPPN L 2 q)^0+bd+gd +idڶk +nL+*'.,FG)< *-oNrYt:ux+{-|,}---b~#Y **+,-:Y :*+,-*B#)/=M]fq,HI PPPrr PPPrr0P )M<<* ,  @H)' *++,-*  )^.BY:,D-GJ;+W* #-"#).*-o:*+,D* )$ *+,-D*a) +M,,,,*,o*,M,R,,UTN- ,--, ,::,*,M,R,UD*,M,R,UDN,--;+?BN-Y-*-JoJ*-D-G--JT:-*-D-G-J *-D-G**+T:+O:* :b :P: :  Ɵƶ&  :/4*- $:>CE\ls$HT^a m r u,aN, I DR 9B O  P.P ab)# *+,T*#VW)C*+,:*  :/4*"( )+. /*132@5,P- )_*+,:*  :Ч@* Wձ*2 : ;=@B&E'H,J>NKQWR^S,P  )WضܶW++++Wز+PWزW:زWOWزPW,7زW,,,OWز,PW زWض*Vdfhkl0nAoKqSsXubvmw~y{}~, '%; I)\+:O :,,O :  :+: *. ")9=FR,  %P )rB+Y:,Y+:,*+-* .7? !)a+O:-"%:*(**.*,*-0W,3,-6-",W-0,W*. )7AGLW`, AP,-)X+9+;M,<,>* ,  C )0+M*6,*   )L*+AM,DY+FG,* ,JK)-*H+,W* LM)**H+K*NP)&*HM*Oef)\'+QWY*/[:+,-]W* $ ,P)h.*6M\L++ M,_*  ' ) , ,  Q?),+L* `M,N-- P:+cv*  :fͲgYSiWmYo:pqtxczqt{z~qp*J     !+ "4 $B %J &M '` (i )o *z + - . 0 1,5P <m )U H*DM\L+!+ 9M,,*@ܲLiM>,,P::*D9:`9Y=:`*DW+:x ::  U  P: ʶ;gY r:  *}} *** O Q1 R4 W; [B \L ^V _] `b be ep gs j k m n q r s u w y { | ~ / 2 5 = \C G ,s  99 99 P 9$;Pg)*6L+M,', N-ʶ-ʴH*DM\M,, 9N--0:h :*63:6-*63WHk*N   & 0 = @ ` g j ,3 ) 9D&RS)Q+6*6+3M,,+,6+6*6+3+W+H+*"  4 5 B P ,  ))/<M,N-m- :mYo:zp~޵~Y޵ʵǧ*ʙ5ͶظڧNzڶڶڶWڶ,N-s- ::Q P:ʶ߻gYinr:*ʶ*!  ) / 5 K S o |     " % 5 8 ; ,M bmU!#P g )=L+M,), N-ʶ-ʶ*"   ) , 6 8 ; ,  )/ ĶN-- -ʶ+:+}::66X2:  +* 7*+}+} -,i : * -,W*>    ( - . 7 Q Y !e # ' (  *,9/  9/1/=g)t3M,N-- :+* . / 1, 3. 51 6, ! TU)m/,**F,++8%%*   "$+-,$V)~*^L++ M*,W*^*M3*ML+M,>6,2:*W*"ݧL++lo*>!$+5DX_elopy},,'  I W)r л Y X@Y ;x Y  Y  Y Yر*6 :<=j+X1Y7Z=[C\I^S_]`ga, @XYZ 9B[l\cdf\hihms\huh\xz}m~mmmmmmmmm& 9     a[@ B r   m