ĘþšūEŠ  :net/minecraft/world/entity/ai/behavior/LongJumpToRandomPosq(Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Ljava/util/function/BiPredicate;)Vjava/util/ArrayList   ()V  ?net/minecraft/world/entity/ai/behavior/LongJumpToPreferredBlocknotPrefferedJumpCandidatesLjava/util/List;  preferredBlockTagLnet/minecraft/tags/TagKey;  preferredBlocksChanceF  startL(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V  ! " java/util/Listclear $%& '(net/minecraft/world/entity/Mob getRandom#()Lnet/minecraft/util/RandomSource; *+, -.net/minecraft/util/RandomSource nextFloat()F 0 12currentlyWantingPreferredOnesZ 4 56getJumpCandidate>(Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional;8+net/minecraft/core/BlockPos$MutableBlockPos 7 ; <jumpCandidates > ?@isEmpty()Z BCD E@java/util/Optional isPresent BG HIget()Ljava/lang/Object;KGnet/minecraft/world/entity/ai/behavior/LongJumpToRandomPos$PossibleJump JM NO targetPos()Lnet/minecraft/core/BlockPos; QRS TUnet/minecraft/core/DirectionDOWNLnet/minecraft/core/Direction; 7W XY setWithOffsetg(Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos$MutableBlockPos; [\] ^_&net/minecraft/server/level/ServerLevel getBlockStateQ(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; abc de0net/minecraft/world/level/block/state/BlockStateis(Lnet/minecraft/tags/TagKey;)Z g hiadd(Ljava/lang/Object;)Z k lmremove(I)Ljava/lang/Object; Bo pqof((Ljava/lang/Object;)Ljava/util/Optional; Bs tuempty()Ljava/util/Optional;  SignatureDLnet/minecraft/tags/TagKey;[Ljava/util/List;(Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Lnet/minecraft/tags/TagKey;FLjava/util/function/BiPredicate;)VCodeLineNumberTableLocalVariableTablethisALnet/minecraft/world/entity/ai/behavior/LongJumpToPreferredBlock;timeBetweenLongJumps.Lnet/minecraft/util/valueproviders/UniformInt;maxLongJumpHeightImaxLongJumpWidthmaxJumpVelocity getJumpSoundLjava/util/function/Function;acceptableLandingSpot Ljava/util/function/BiPredicate;LocalVariableTypeTableFLnet/minecraft/world/entity/ai/behavior/LongJumpToPreferredBlock;CLjava/util/function/Function;BLjava/util/function/BiPredicate;MethodParametersþ(Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Lnet/minecraft/tags/TagKey;FLjava/util/function/BiPredicate;)Vlevel(Lnet/minecraft/server/level/ServerLevel;body Lnet/minecraft/world/entity/Mob; timestampJTE; StackMapTable/(Lnet/minecraft/server/level/ServerLevel;TE;J)V possibleJumpILnet/minecraft/world/entity/ai/behavior/LongJumpToRandomPos$PossibleJump; jumpCandidateLjava/util/Optional;testPos-Lnet/minecraft/core/BlockPos$MutableBlockPos;_Ljava/util/Optional;‰(Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional;U(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)VeLnet/minecraft/world/entity/ai/behavior/LongJumpToRandomPos; SourceFileLongJumpToPreferredBlock.java InnerClasses§net/minecraft/core/BlockPosMutableBlockPos PossibleJump! wxwy12z{ß %*+·*ŧY· ĩ *ĩ*ĩą| $}\ %~%€%‚ƒ%„ƒ%…%†‡%%%ˆ‰Š*%~‹%†Œ%x%ˆŽ!€‚„…†ˆw{ž+*+,!·*ī đ*,ķ#đ)*ī–œ§ĩ/ą|!#%*&}*+~+‘+’“+”•Š+~‹+’–—f ĸ [$ Ž ’”w˜56{Bƒ*ī/š *+·3°ŧ7Y·9M*ī:đ=šD*+·3N-ķA™4-ķFĀJ:+,ķLēPķVķZ*īķ`™-°*ī đfW§ĸķ*ī đ=š*ī đjĀJļn°ļr°|:*+ .0!1'3.476Q7S:_<b>n?B}47(™š'8›œƒ~ƒ‘nžŠ'8›Ÿƒ~‹— ü7ý=BJų ސw DĄ{G *+,Ā$!ķvą|}  ~Š  ~‹Ž ’”wĒĢĪĨ7ĶĻ JĐ