Êþº¾Eˆnet/minecraft/SharedConstants  java/lang/Object()V  net/minecraft/util/RandomSourcecreate#()Lnet/minecraft/util/RandomSource;  Enet/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawnerrandom!Lnet/minecraft/util/RandomSource;  savedDataStorage4Lnet/minecraft/world/level/storage/SavedDataStorage;   tickDelayI    traderData9Lnet/minecraft/world/level/saveddata/WanderingTraderData; "#$ %&&net/minecraft/server/level/ServerLevel getGameRules1()Lnet/minecraft/world/level/gamerules/GameRules; ()* +,-net/minecraft/world/level/gamerules/GameRulesSPAWN_WANDERING_TRADERS.Lnet/minecraft/world/level/gamerules/GameRule; (. /0getB(Lnet/minecraft/world/level/gamerules/GameRule;)Ljava/lang/Object;2java/lang/Boolean 14 56 booleanValue()Z 8 9: getTraderData;()Lnet/minecraft/world/level/saveddata/WanderingTraderData; <=> ?@7net/minecraft/world/level/saveddata/WanderingTraderData spawnDelay()I <B CD setSpawnDelay(I)V <F G@ spawnChance IJK LMnet/minecraft/util/Mthclamp(III)I <O PDsetSpawnChance R STnextInt(I)I V WXspawn+(Lnet/minecraft/server/level/ServerLevel;)Z <Z [\TYPE3Lnet/minecraft/world/level/saveddata/SavedDataType; ^_` ab2net/minecraft/world/level/storage/SavedDataStoragecomputeIfAbsentd(Lnet/minecraft/world/level/saveddata/SavedDataType;)Lnet/minecraft/world/level/saveddata/SavedData; "d efgetRandomPlayer+()Lnet/minecraft/server/level/ServerPlayer; hij kl(net/minecraft/world/entity/player/Player blockPosition()Lnet/minecraft/core/BlockPos;nnet/minecraft/core/SectionPos "p qr getPoiManager8()Lnet/minecraft/world/entity/ai/village/poi/PoiManager;t uvtest ()Ljava/util/function/Predicate;t yz{ |}>net/minecraft/world/entity/ai/village/poi/PoiManager$OccupancyANY@Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; €� ‚ƒ4net/minecraft/world/entity/ai/village/poi/PoiManagerfind°(Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; …†‡ ˆ‰java/util/OptionalorElse&(Ljava/lang/Object;)Ljava/lang/Object;‹net/minecraft/core/BlockPos � Ž�findSpawnPositionNeard(Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; ‘ ’“hasEnoughSpaceG(Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z "• –—getBiome:(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; ™š› œ�net/minecraft/tags/BiomeTagsWITHOUT_WANDERING_TRADER_SPAWNSLnet/minecraft/tags/TagKey; Ÿ ¡ ¢£net/minecraft/core/Holderis(Lnet/minecraft/tags/TagKey;)Z ¥¦§ ¨©&net/minecraft/world/entity/EntityTypesWANDERING_TRADER'Lnet/minecraft/world/entity/EntityType; «¬­ ®¯,net/minecraft/world/entity/EntitySpawnReasonEVENT.Lnet/minecraft/world/entity/EntitySpawnReason; ±²³ W´%net/minecraft/world/entity/EntityType˜(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntitySpawnReason;)Lnet/minecraft/world/entity/Entity;¶>net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader ¸ ¹ºtryToSpawnLlamaForl(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/wanderingtrader/WanderingTrader;I)V»€ µ½ ¾DsetDespawnDelay µÀ ÁÂsetWanderTarget (Lnet/minecraft/core/BlockPos;)V µÄ ÅÆ setHomeTo!(Lnet/minecraft/core/BlockPos;I)V µi ¥É Ê© TRADER_LLAMAÌ4net/minecraft/world/entity/animal/equine/TraderLlama ËÎ ÏÐ setLeashedTo'(Lnet/minecraft/world/entity/Entity;Z)V ÒÓÔ ÕÖ*net/minecraft/world/entity/SpawnPlacementsgetPlacementTypeX(Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/SpawnPlacementType; ŠØ Ù@getX ŠÛ Ü@getZ ÒÞ ßàgetHeightmapType](Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; âãä åæ%net/minecraft/world/level/LevelReader getHeight9(Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I Šè é(III)V ëìí îï-net/minecraft/world/entity/SpawnPlacementTypeisSpawnPositionOkn(Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z Šñ òóoffset"(III)Lnet/minecraft/core/BlockPos; âõ ö÷ findBlocksInn(Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/blockscan/BlockMatcher;ù úûapplya(Lnet/minecraft/world/level/LevelReader;)Lnet/minecraft/world/level/blockscan/BlockStateConsumer; ýþÿ 0net/minecraft/world/level/blockscan/BlockMatcher forEachUntil;(Lnet/minecraft/world/level/blockscan/BlockStateConsumer;)Z  0net/minecraft/world/level/block/state/BlockStategetCollisionShaper(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape;     6*net/minecraft/world/phys/shapes/VoxelShapeisEmpty  net/minecraft/util/Continuation continueIf$(Z)Lnet/minecraft/util/Continuation;  2net/minecraft/world/entity/ai/village/poi/PoiTypesMEETING%Lnet/minecraft/resources/ResourceKey; Ÿ ¢((Lnet/minecraft/resources/ResourceKey;)Z'net/minecraft/world/level/CustomSpawnerDEFAULT_TICK_DELAY ConstantValue°DEFAULT_SPAWN_DELAY]ÀMIN_SPAWN_CHANCEMAX_SPAWN_CHANCEKSPAWN_CHANCE_INCREASESPAWN_ONE_IN_X_CHANCE NUMBER_OF_SPAWN_ATTEMPTSRuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;7(Lnet/minecraft/world/level/storage/SavedDataStorage;)VCodeLineNumberTableLocalVariableTablethisGLnet/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner;MethodParameterstick,(Lnet/minecraft/server/level/ServerLevel;Z)Vlevel(Lnet/minecraft/server/level/ServerLevel; spawnEnemiesZdata chanceToSpawnnewSpawnChance StackMapTableitrader@Lnet/minecraft/world/entity/npc/wanderingtrader/WanderingTrader;player*Lnet/minecraft/world/entity/player/Player; playerPosLnet/minecraft/core/BlockPos;radius poiManager6Lnet/minecraft/world/entity/ai/village/poi/PoiManager;poiPosLjava/util/Optional; referencePos spawnPositionLocalVariableTypeTable3Ljava/util/Optional;llama6Lnet/minecraft/world/entity/animal/equine/TraderLlama; xPosition zPosition yPositionspawnPos'Lnet/minecraft/world/level/LevelReader;referencePositionwanderingTraderSpawnType/Lnet/minecraft/world/entity/SpawnPlacementType;lambda$hasEnoughSpace$0™(Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/util/Continuation;posstate2Lnet/minecraft/world/level/block/state/BlockState;lambda$spawn$1 (Lnet/minecraft/core/BlockPos;)Zplambda$spawn$0(Lnet/minecraft/core/Holder;)ZLnet/minecraft/core/Holder; SourceFileWanderingTraderSpawner.javaBootstrapMethodsg(Ljava/lang/Object;)Zi j `aam n ]^^qr(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/util/Continuation;s t XYv wxy z{"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; InnerClasses Occupancy2net/minecraft/world/level/levelgen/Heightmap$Types�,net/minecraft/world/level/levelgen/HeightmapTypes„%java/lang/invoke/MethodHandles$Lookup†java/lang/invoke/MethodHandlesLookup!  !"#$%&'$()*) +, -.e*·*¸ µ*+µ*°µ*µ±/,' -./0012345.K†+¶!²'¶-À1¶3š±*Y´dZµž±*°µ*¶7N-¶;°d6-¶Až±-]À¶A-¶E6`K¸H6-¶N*´d¹Q¤±*+¶U™ -¶N±/N458"9#;*=/>9??@DAECLERF`GfIvJwMN…P0H†12†67†89/W: 9M?R4;`&<=ý!<ý1 3 689:.X*´Ç**´²Y¶]À<µ*´°/STV0 12=WX.ù Á+¶cM,Ǭ*´ ¹Q™¬,¶gN06+¶o:ºsºw-0²x¶~:-¶„ÀŠ:*+0¶Œ:Æf*+¶�™\+¶”²˜¹ž™¬²¤+²ª¶°Àµ:  Æ36  ¢*+ ¶·„ §ÿï »¶¼ ¶¿ ¶Ã¬¬/bZ[ \ _`c d$f*gAiLjWlfmwnyqŠs�t˜u t¦w­x´y½z¿}0p ’> Š5?@ Á12Á67¼AB ¡CD$�E*—FGA€HILuJDWjKDL A€HM=6ü hÿ] "hŠ…ŠŠýµúú36¹º.½1*+,¶Ç¶Œ:DZ²È+²ª¶°ÀË:DZ,¶Í±/"� ‚ƒ†#‡(ˆ)‹0Œ0>1121671?@1E %KD#NO=üŠüË3 6?EŽ�.R €:²¤¸Ñ:6 ¢k,¶×*´h¹Q`d6,¶Ú*´h¹Q`d6+²¤¸Ý¹á6 »ŠY ·ç: + ²¤¹ê™  :§ „§ÿ”°/2 �‘ ’“*”?•Q–`˜p™tšw’}�0p *MP?8QQ&R `SD o>€12€6T€UD€E}KD uVW=þŠëûhú3 6UE+,’“.q +,,¶ð¹ô+ºø¶üš§¬/¡¢¡0  12 6T SD=@3 6S XY.K ,*+¶¶¸ °/£0  6T ZD [\ ]^.,¬/g0 _D `a.4 *²¹¬/g0  _bcde ufhkuflouprp|y}@~€‚@ƒ…‡