Êþº¾EUnet/minecraft/SharedConstants  java/lang/Object()V  2net/minecraft/world/entity/monster/hoglin/HoglinAiinitCoreActivity.()Lnet/minecraft/world/entity/ai/ActivityData;  initIdleActivity  initFightActivity  initRetreatActivity  java/util/ListofZ(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List;  ! "#,net/minecraft/world/entity/schedule/ActivityCORE.Lnet/minecraft/world/entity/schedule/Activity;%7net/minecraft/world/entity/ai/behavior/LookAtTargetSink $' ((II)V*7net/minecraft/world/entity/ai/behavior/MoveToTargetSink ) -./ 0'com/google/common/collect/ImmutableListO(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList; 234 56*net/minecraft/world/entity/ai/ActivityDatacreate†(Lnet/minecraft/world/entity/schedule/Activity;ILcom/google/common/collect/ImmutableList;)Lnet/minecraft/world/entity/ai/ActivityData; 8 9#IDLE ;<= >?5net/minecraft/world/entity/ai/memory/MemoryModuleTypeNEAREST_REPELLENT7Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ABC 5DCnet/minecraft/world/entity/ai/behavior/BecomePassiveIfMemoryPresentr(Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;F5net/minecraft/world/entity/ai/behavior/AnimalMakeLove HIJ KL&net/minecraft/world/entity/EntityTypesHOGLIN'Lnet/minecraft/world/entity/EntityType;?™š EO P,(Lnet/minecraft/world/entity/EntityType;FI)V RST UVÌÌÍ Ri jkentityl(Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZ)Lnet/minecraft/world/entity/ai/behavior/OneShot; mno pqBnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder triggerIf€(Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/OneShot;)Lnet/minecraft/world/entity/ai/behavior/OneShot;A tuv w,net/minecraft/util/valueproviders/UniformInt2(II)Lnet/minecraft/util/valueproviders/UniformInt; yz{ 5|Cnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimesi(FLnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; ~ €ADULT_FOLLOW_RANGE.Lnet/minecraft/util/valueproviders/UniformInt; ‚ƒ„ 5…6net/minecraft/world/entity/ai/behavior/BabyFollowAdulta(Lnet/minecraft/util/valueproviders/UniformInt;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; ‡ ˆ‰createIdleMovementBehaviors1()Lnet/minecraft/world/entity/ai/behavior/RunOne; -‹ Œ»(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList; Ž �#FIGHT ‘’“ 5”Vnet/minecraft/world/entity/ai/behavior/SetWalkTargetFromAttackTargetIfTargetOutOfReach;(F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; –—˜ 5™2net/minecraft/world/entity/ai/behavior/MeleeAttack3(I)Lnet/minecraft/world/entity/ai/behavior/OneShot;a œ�ž 5ŸCnet/minecraft/world/entity/ai/behavior/StopAttackingIfTargetInvalid:()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;a ;¢ £? ATTACK_TARGET ¥¦§ 5¨4net/minecraft/world/entity/ai/behavior/EraseMemoryIf�(Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; -ª «©(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList; 2­ 5®½(Lnet/minecraft/world/entity/schedule/Activity;ILcom/google/common/collect/ImmutableList;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/ActivityData; ° ±#AVOID ;³ ´? AVOID_TARGET?¦ffa -¸ ¹s(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList;»-net/minecraft/world/entity/ai/behavior/RunOne ½¾¿ ÀÁ3net/minecraft/world/entity/ai/behavior/RandomStrollstroll3(F)Lnet/minecraft/world/entity/ai/behavior/OneShot; ÃÄÅ ÆÇjava/lang/IntegervalueOf(I)Ljava/lang/Integer; ÉÊË Ìcom/mojang/datafixers/util/PairG(Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; ÎÏÐ 5ÑBnet/minecraft/world/entity/ai/behavior/SetWalkTargetFromLookTarget4(FI)Lnet/minecraft/world/entity/ai/behavior/OneShot;Ó0net/minecraft/world/entity/ai/behavior/DoNothing Ò' -Ö ×a(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList; ºÙ Ú(Ljava/util/List;)V ÜÝÞ ßà0net/minecraft/world/entity/monster/hoglin/HoglingetBrain'()Lnet/minecraft/world/entity/ai/Brain; âãä åæ#net/minecraft/world/entity/ai/BraingetActiveNonCoreActivity()Ljava/util/Optional; èéê ëìjava/util/OptionalorElse&(Ljava/lang/Object;)Ljava/lang/Object; âî ïÚsetActiveActivityToFirstValid ñ òógetSoundForCurrentActivityH(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; õö÷ øìjava/util/ObjectsrequireNonNullú ûüacceptQ(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/function/Consumer; èþ ÿ ifPresent (Ljava/util/function/Consumer;)V â hasMemoryValue:(Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Z Ü  setAggressive(Z)V Ü   isBaby()Z H LPIGLIN  'net/minecraft/world/entity/LivingEntityis(Ljava/lang/Object;)Z  piglinsOutnumberHoglins5(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z  setAvoidTarget^(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V   broadcastRetreat " #broadcastAttackTarget % &'getVisibleAdultHoglinsD(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/List;) û*H(Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/function/Consumer; , -forEach â/ 01 getMemoryM(Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; 345 674net/minecraft/world/entity/ai/behavior/BehaviorUtilsgetNearestTarget‘(Lnet/minecraft/world/entity/LivingEntity;Ljava/util/Optional;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; â9 :; eraseMemory:(Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V ;= >? WALK_TARGET @ A€RETREAT_DURATION ÜC DElevel#()Lnet/minecraft/world/level/Level; GHI JKnet/minecraft/world/level/Level getRandom#()Lnet/minecraft/util/RandomSource; tM NOsample$(Lnet/minecraft/util/RandomSource;)I âQ RSsetMemoryWithExpiryM(Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;J)V U V isPacified X Y isBreeding è[ \æempty ;^ _?!NEAREST_VISIBLE_ATTACKABLE_PLAYER èa b  isPresent èd Ye()Ljava/lang/Object;gnet/minecraft/core/BlockPos@ fk lm closerThan(Lnet/minecraft/core/Vec3i;D)Z Üo p isAdult ;r s?VISIBLE_ADULT_PIGLIN_COUNT Ãu vwintValue()I ;y z?VISIBLE_ADULT_HOGLIN_COUNT ;| }?PACIFIED ; €? BREED_TARGET ‚ ƒretreatFromNearestTarget … †‡maybeRetaliate†(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V â‰ Š‹isActive1(Lnet/minecraft/world/entity/schedule/Activity;)Z@ 3� �‘3isOtherTargetMuchFurtherAwayThanCurrentAttackTargetV(Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;D)Z “”• –—,net/minecraft/world/entity/ai/sensing/SensorisEntityAttackable}(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z ™ šsetAttackTarget ;œ �?CANT_REACH_WALK_TARGET_SINCEÈ)¢ £¤applyQ(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/function/Function; è¦ §¨map3(Ljava/util/function/Function;)Ljava/util/Optional; ܪ «  isConverting ­®¯ °± net/minecraft/sounds/SoundEventsHOGLIN_RETREAT!Lnet/minecraft/sounds/SoundEvent; ­³ ´± HOGLIN_ANGRY ¶ ·isNearRepellent ­¹ º±HOGLIN_AMBIENT ;¼ ½?NEAREST_VISIBLE_ADULT_HOGLINS -¿ À+()Lcom/google/common/collect/ImmutableList;  ÃÄgetSoundForActivityƒ(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; Æ Ç"setAttackTargetIfCloserThanCurrent ÉÊË Ìwnet/minecraft/util/TimeUtilrangeOfSeconds$REPELLENT_DETECTION_RANGE_HORIZONTALI ConstantValue"REPELLENT_DETECTION_RANGE_VERTICALATTACK_DURATIONÈ(DESIRED_DISTANCE_FROM_PIGLIN_WHEN_IDLING,DESIRED_DISTANCE_FROM_PIGLIN_WHEN_RETREATINGATTACK_INTERVAL(BABY_ATTACK_INTERVALREPELLENT_PACIFY_TIME(SPEED_MULTIPLIER_WHEN_AVOIDING_REPELLENTF?€ SPEED_MULTIPLIER_WHEN_RETREATING!SPEED_MULTIPLIER_WHEN_MAKING_LOVESPEED_MULTIPLIER_WHEN_IDLING%SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULTCodeLineNumberTableLocalVariableTablethis4Lnet/minecraft/world/entity/monster/hoglin/HoglinAi; getActivities()Ljava/util/List; Signaturet()Ljava/util/List;>;b()Lnet/minecraft/world/entity/ai/ActivityData;e()Lnet/minecraft/world/entity/ai/behavior/RunOne;updateActivity5(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Vbody2Lnet/minecraft/world/entity/monster/hoglin/Hoglin;brain%Lnet/minecraft/world/entity/ai/Brain; oldActivity newActivityLocalVariableTypeTableYLnet/minecraft/world/entity/ai/Brain; StackMapTableMethodParameters onHitTarget attackerBodytarget)Lnet/minecraft/world/entity/LivingEntity;newAvoidTargetnearest avoidTargetfindNearestValidAttackTargetp(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional;(Lnet/minecraft/server/level/ServerLevel;œ(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional<+Lnet/minecraft/world/entity/LivingEntity;>;isPosNearNearestRepellentR(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/core/BlockPos;)ZLnet/minecraft/core/BlockPos; repellentPosLjava/util/Optional;3Ljava/util/Optional;wantsToStopFleeing piglinCount hoglinCount wasHurtByattacker newTarget currentTarget?Ljava/util/Optional;k(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional;activityx(Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/List;#lambda$getSoundForCurrentActivity$0lambda$broadcastAttackTarget$0^(Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Vhoglinlambda$broadcastRetreat$0 SourceFile HoglinAi.javaBootstrapMethods P(Lnet/minecraft/server/level/ServerLevel;Ljava/lang/Object;)Ljava/util/Optional;" # n) * +%net/minecraft/world/entity/AgeableMobW. /  1(Ljava/lang/Object;)V3 4 56 makeSound$(Lnet/minecraft/sounds/SoundEvent;)V69 : ï= > ìA B ÄDQ(Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent;F GHI JK"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; InnerClassesNBnet/minecraft/world/entity/ai/behavior/StartAttacking$TargetFinder TargetFinderQ%java/lang/invoke/MethodHandles$LookupSjava/lang/invoke/MethodHandlesLookup! ÍÎÏÐÑÎÏÒA€ÓÎÏÔÕÎÏÐÖÎÏרÎÏÙÚÎÏ×ÛÎÏÔ€ÜÝÏÞßÝϵàÝÏMáÝÏgâÝÏMã/*·±ä-å æç èéã8¸ ¸¸¸¸°äCDE F Bêë ã5²»$Y-Z·&»)Y·+¸,¸1°äKêì ã– ^²7 ²:ȸ@»EY²GM·N²: ¸QºW¸[º`²dg¸h¸lr<¸s¸x²}M¸�¸†¸Š¸1°ä& R S"U*V:WFXQYTZWRêì ã… Q²� ²:ȸ@»EY²GM·N ¸�º`(¸•¸lºš¸•¸l¸›º ²¡¸¤¸©²¡¸¬°ä"_ `b&c3d9eDfG_êì ã`4²¯ ²²µ¸h¸†r<¸s¸xº¶²²¸¤¸·²²¸¬°äk lmn'o*kêì ˆ‰ã^6»ºYg¸¼¸Â¸Èg¸Í¸Â¸È»ÒY<·Ô¸Â¸È¸Õ·Ø°ätuv)w/têí îïãÚP*¶ÛL+¶á¶çÀM+²�²¯²7¸Õ¶í+¶á¶çÀN,-¥*¸ð*Y¸ôWºù¶ý*+²¡¶¶±ä"|~�!‡-ˆ2ŠDŽO�å*PðñKòó?ô#-#õ#ö Kò÷øþDâùð úã„**¶ ™±+² ¶™*¸™*+¸*+¸±*+¸!±ä"’”–˜™#š$œ)�å*ûñ*üýøù ûü  ãH*¸$+º(¹+±ä  ¡åðñüýù ðü ƒã•'+M*¶ÛN*-²²¶.,¸2M*-²¡¶.,¸2M*,¸±ä¤¦§¨!ª&«å*'ðñ'þý%ÿý òóö  ò÷ù ðþ ãn.*¶Û²¡¶8*¶Û²<¶8*¶Û²²+²?*¶B¶F¶L…¶P±ä® ¯°-±å.ðñ.ýù ð ãc+¸Tš +¸W™¸Z°+¶Û²]¶.°ä´¶ºåDðñøù Dðêã�)*¶Û²:¶.M,¶`™,¶cÀf+h¶j™§¬ä ¿ Àå )ðñ)U  ö   ø ü'è@ù ðU  ãI*¶n™*¸š§¬äÄå ðñø@ùð ã¤F*¶ ™¬*¶Û²q¶.¸Â¶çÀöt<*¶Û²x¶.¸Â¶çÀöt`=¤§¬äÈÉ Ì!Í;Îå Fðñ!% Î;  Îø  ý:@ùð ‡ã«'+¶ÛN-²{¶8-²~¶8+¶ ™ +,¸�±*+,¸„±ä"ÓÔ Õ×ÙÚ Ý&Þå*'D'ðñ'ý"òóö "ò÷øü âù D𠆇ã¶D+¶Û²¯¶ˆ™,² ¶™±,²G¶™±+,Œ¸Ž™±*+,¸’š±+,¸˜+,¸!±ä. áâä"å#ç.é/ë8ì9ï>ðCñå DDDðñDýø ù Dð šã*¶ÛM,²›¶8,²~¶8,²¡+ž¶P±äôõ ö÷øå ðñüýòóö ò÷ù ðü #ãH*¸$+º ¹+±ä üýåðñüýù ðü Çã— *¸T™±*¶Û²¡¶.M*,+¸2N*-¸˜±äå* ðñ ý  ÿýö  øù ð òóã;*¶Û¶á*º¡¶¥°ä å ðñùðê ÃÄã„,+²¯¥ *¶©™²¬°+²�¦²²°*¸µ™²¬°²¸°ä$(å,ðñ,#ø ù ð &'ã>*¶Û²»¶.¸¾¶çÀ°äå ðñùðê ·ã5 *¶Û²:¶¬äå  ðñùð Yã5 *¶Û²~¶¬ä"å  ðñùð Vã5 *¶Û²{¶¬ä&å  ðñùð Äã:*+¸Á°ä åðñ# ã:+*¸űäüåüýñ ã:+*¸�±ä åüýñã/¸ȳ?¸s³}±ä 1 8\ E!$E%&'E%('E%,'E%-'E027E08;E0<;E?@CLM\O PRT