=%zombie/PersistentOutfits  java/lang/Object()V  m_seeds[Jjava/util/ArrayList    m_outfitNamesLjava/util/ArrayList;!zombie/PersistentOutfits$DataList   m_all#Lzombie/PersistentOutfits$DataList;  m_female  m_male"java/util/TreeMap $%& '(java/lang/StringCASE_INSENSITIVE_ORDERLjava/util/Comparator; !* +(Ljava/util/Comparator;)V - ./m_outfitToDataLjava/util/TreeMap; 1 2/m_outfitToFemale 4 5/m_outfitToMale 7 8clear !7 7 <=> ?@zombie/network/GameClientbClientZBjava/lang/Integer EFG HIzombie/core/RandNext(I)I KLM NO1zombie/core/skinnedmodel/population/OutfitManagerinstance3Lzombie/core/skinnedmodel/population/OutfitManager; KQ Rm_FemaleOutfits T UVinitOutfitList(Ljava/util/ArrayList;Z)V KX Y m_MaleOutfits [ \registerCustomOutfits ^ _load a bsave d e(Ljava/util/Collection;)Vg hicompare()Ljava/util/Comparator; k l+sort n opiterator()Ljava/util/Iterator; rst uvjava/util/IteratorhasNext()Z rx yznext()Ljava/lang/Object;|*zombie/core/skinnedmodel/population/Outfit {~ m_NameLjava/lang/String; accept'()Lzombie/PersistentOutfits$IOutfitter;   initOutfit<(Ljava/lang/String;ZZLzombie/PersistentOutfits$IOutfitter;)V ! get&(Ljava/lang/Object;)Ljava/lang/Object;zombie/PersistentOutfits$Data   size()I m_indexI  m_outfitName @ m_useSeed  m_outfitter%Lzombie/PersistentOutfits$IOutfitter; add(Ljava/lang/Object;)Z ! put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;   java/util/Map  Nzombie/iso/IsoWorldLzombie/iso/IsoWorld; getRandomizedVehicleStoryList()Ljava/util/ArrayList; (I)Ljava/lang/Object;Hzombie/randomizedWorld/randomizedVehicleStory/RandomizedVehicleStoryBase [ ['zombie/characters/ZombiesZoneDefinition  @zombie/network/GameServerbServerReanimatedPlayer  registerOutfitter;(Ljava/lang/String;ZLzombie/PersistentOutfits$IOutfitter;)V  visEmpty  zombie/util/list/PZArrayUtil pickRandom$(Ljava/util/List;)Ljava/lang/Object;  pickOutfitFemale(Ljava/lang/String;)I  pickOutfitMale   zombie/core/Core getInstance()Lzombie/core/Core; visNoSave  Nzombie/ZomboidFileSystemLzombie/ZomboidFileSystem; z_outfits.bin getFileInCurrentSave"(Ljava/lang/String;)Ljava/io/File;java/io/FileOutputStream (Ljava/io/File;)Vjava/io/BufferedOutputStream (Ljava/io/OutputStream;)V  zombie/iso/SliceYSliceBufferLockLjava/lang/Object;    SliceBufferLjava/nio/ByteBuffer;    8java/nio/ByteBuffer()Ljava/nio/ByteBuffer;  b(Ljava/nio/ByteBuffer;)V   array()[B   position  write([BII)V  close!java/lang/Throwable  # $% addSuppressed(Ljava/lang/Throwable;)V (java/lang/Exception *+, -%"zombie/core/logger/ExceptionLogger logException / 01 FILE_MAGIC[B  3 4([B)Ljava/nio/ByteBuffer;  6 78putInt(I)Ljava/nio/ByteBuffer;  : ;<putShort(S)Ljava/nio/ByteBuffer;  > ?@putLong(J)Ljava/nio/ByteBuffer;Bjava/io/FileInputStream AEjava/io/BufferedInputStream DG H(Ljava/io/InputStream;)V DJ KLread([B)I  N O8limit Q _ D AUjava/io/FileNotFoundException  W 4 YZ[ \]java/util/Arraysequals([B[B)Z_java/io/IOExceptiona not magic ^c d(Ljava/lang/String;)V  f ggetInt  i jkgetShort()S  m nogetLong()J q NrLzombie/PersistentOutfits; t uv applyOutfit:(ILjava/lang/String;Lzombie/characters/IsoGameCharacter;)Vxzombie/characters/IsoZombie z{| }~zombie/util/Type tryCastTo7(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object; w  setFemaleEtc(Z)V  d"zombie/characters/IsoGameCharacterdressInNamedOutfit  @doDirtBloodEtc  N9zombie/characters/AttachedItems/AttachedWeaponDefinitions;Lzombie/characters/AttachedItems/AttachedWeaponDefinitions;  addRandomAttachedWeapon (Lzombie/characters/IsoZombie;)V w addRandomBloodDirtHolesEtc  removeFallenHat((ILzombie/characters/IsoGameCharacter;)Z  getPersistentOutfitID   isHatFallen(I)Z  visPersistentOutfitInit  setPersistentOutfitID(IZ)V  visUsingWornItems  tempItemVisuals-Lzombie/core/skinnedmodel/visual/ItemVisuals;  getItemVisuals0(Lzombie/core/skinnedmodel/visual/ItemVisuals;)V +zombie/core/skinnedmodel/visual/ItemVisuals *zombie/core/skinnedmodel/visual/ItemVisual   getScriptItem!()Lzombie/scripting/objects/Item;  zombie/scripting/objects/ItemgetChanceToFall  /()Lzombie/core/skinnedmodel/visual/ItemVisuals;  remove  I getOutfit  -zombie/core/skinnedmodel/population/OutfitRNGsetSeed(J)V  v#zombie/PersistentOutfits$IOutfitter $  compareTo   INVALID_ID ConstantValue FEMALE_BIT NO_HAT_BITFILE_VERSION_1FILE_VERSION_LATEST NUM_SEEDS Signature)Ljava/util/ArrayList;FLjava/util/TreeMap;CodeLineNumberTableinit StackMapTableG(Ljava/util/ArrayList;Z)VgetOutfitNames+()Ljava/util/ArrayList;pickRandomFemalepickRandomMale pickOutfit(Ljava/lang/String;Z)I java/io/File1 Exceptions ApplyOutfit'(Lzombie/characters/IsoGameCharacter;)Z setFallenHat((Lzombie/characters/IsoGameCharacter;Z)V dressInOutfit((Lzombie/characters/IsoGameCharacter;I)Vlambda$initOutfitList$0[(Lzombie/core/skinnedmodel/population/Outfit;Lzombie/core/skinnedmodel/population/Outfit;)I SourceFilePersistentOutfits.java NestMembersBootstrapMethods    "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; '(Ljava/lang/Object;Ljava/lang/Object;)I  v  v  vzombie/SharedDescriptorsApplyReanimatedPlayerOutfit InnerClassesDataList IOutfitterData!%java/lang/invoke/MethodHandles$Lookup#java/lang/invoke/MethodHandlesLookup!Nr01  ./2/5/d** * Y*Y*Y*Y*!Y#),*!Y#)0*!Y#)3& 9 ;<#=.>9?G@UA|*6*6*6*,9*09*39*:;<* CDP*JPS*JWS*Z;*]*`NFGHIJ#K*L1S7T@ULTRY][h]l_r`sbwc{d 9 UVB Y+cN-fj-m:q"w{:*}ڱh ij.l>mAn r( *0*3:*,+:JY:*+*+W*,+W*W **:W+W>rtu#w,x9y?zE{L}U`j{ CZ C\@L=++N- ;*ɱ& $'3?   *M *͙*L*+֬  M *͙*L*+ڬ  y9*0+M,,>, D6x` ,@v6*3+M,,>, D6x` ,@5 *+֧*+ڬ DIw~=C~<~>~<z6~6**: D`6x: !(9;I_j2# bLY+MY,NY:² W:*-ç :-:- :",&N,& :-"-M,),PSSXS%[b dhk w~  'N %,38>M[bw~c H F   F   B'bp1+.2W+5W+9W=+* /=W *0  _LAY+CMDY,FNY:² W:-I6MW*Pç :-R:-R :",SN,S :-"- MM,)"JMMRMU\ ^be qx y} T 'R ").9AGU\qx## "$f MAD F AD  F A  BTC'_YM+,VW,.X^Y`b+e>+h66* +lP6 () *+,$-.//253?5G7R3X:^1*+-*+->?@ v& p+,s F Guvj~6C~<z6*:-wyw: --*-W6 KLNQ(S4T9V@YI[U]]^bbic @3$w!! *+g0 ~l @g%+> ހ>~>++"qr t vx|~$  ^~,>,66::,W>: )6=JTV\   7U*=>~>z6~6*:* d/+2    !/7CT 7 $ *}+}׬iO/YڳpYPTYSTYTTYZT.Y۳ 6$B  "  "$