Êþº¾EÇnet/minecraft/SharedConstants  *net/minecraft/world/entity/monster/MonsterK(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V (net/minecraft/world/entity/monster/Enemy  +net/minecraft/world/entity/monster/GuardianxpRewardI  -net/minecraft/world/level/pathfinder/PathTypeWATER/Lnet/minecraft/world/level/pathfinder/PathType;  setPathfindingMalus3(Lnet/minecraft/world/level/pathfinder/PathType;F)V?net/minecraft/world/entity/monster/Guardian$GuardianMoveControl  0(Lnet/minecraft/world/entity/monster/Guardian;)V ! "# moveControl3Lnet/minecraft/world/entity/ai/control/MoveControl; % &'random!Lnet/minecraft/util/RandomSource; )*+ ,-net/minecraft/util/RandomSource nextFloat()F / 01clientSideTailAnimationF 3 41clientSideTailAnimationO6=net/minecraft/world/entity/ai/goal/MoveTowardsRestrictionGoal 58 9.(Lnet/minecraft/world/entity/PathfinderMob;D)V;3net/minecraft/world/entity/ai/goal/RandomStrollGoal := >/(Lnet/minecraft/world/entity/PathfinderMob;DI)V @ ABrandomStrollGoal5Lnet/minecraft/world/entity/ai/goal/RandomStrollGoal; D EF goalSelector1Lnet/minecraft/world/entity/ai/goal/GoalSelector;H>net/minecraft/world/entity/monster/Guardian$GuardianAttackGoal G KLM NO/net/minecraft/world/entity/ai/goal/GoalSelectoraddGoal-(ILnet/minecraft/world/entity/ai/goal/Goal;)VQ3net/minecraft/world/entity/ai/goal/LookAtPlayerGoalS(net/minecraft/world/entity/player/PlayerA PV W5(Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)VA@<#× P[ \6(Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FF)V^7net/minecraft/world/entity/ai/goal/RandomLookAroundGoal ]` a#(Lnet/minecraft/world/entity/Mob;)V cde fg,net/minecraft/world/entity/ai/goal/Goal$FlagMOVE.Lnet/minecraft/world/entity/ai/goal/Goal$Flag; ci jgLOOK lmn opjava/util/EnumSetof5(Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet; :r stsetFlags(Ljava/util/EnumSet;)V 5r w xFtargetSelectorzEnet/minecraft/world/entity/ai/goal/target/NearestAttackableTargetGoal|'net/minecraft/world/entity/LivingEntity~Bnet/minecraft/world/entity/monster/Guardian$GuardianAttackSelector } y� ‚}(Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;IZZLnet/minecraft/world/entity/ai/targeting/TargetingConditions$Selector;)V „ …†createMonsterAttributesF()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; ˆ‰Š ‹Œ3net/minecraft/world/entity/ai/attributes/Attributes ATTACK_DAMAGELnet/minecraft/core/Holder;@ �‘’ “”Bnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builderaddb(Lnet/minecraft/core/Holder;D)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; ˆ– —ŒMOVEMENT_SPEED?à ˆ› œŒ MAX_HEALTH@> Anet/minecraft/world/entity/ai/navigation/WaterBoundPathNavigation Ÿ¢ £D(Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V ¥ ¦§defineSynchedData<(Lnet/minecraft/network/syncher/SynchedEntityData$Builder;)V © ª«DATA_ID_MOVING2Lnet/minecraft/network/syncher/EntityDataAccessor; ­®¯ °±java/lang/BooleanvalueOf(Z)Ljava/lang/Boolean; ³´µ ¶·7net/minecraft/network/syncher/SynchedEntityData$Builderdefine(Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)Lnet/minecraft/network/syncher/SynchedEntityData$Builder; ¹ º«DATA_ID_ATTACK_TARGET ¼½¾ °¿java/lang/Integer(I)Ljava/lang/Integer; Á Âà entityData1Lnet/minecraft/network/syncher/SynchedEntityData; ÅÆÇ ÈÉ/net/minecraft/network/syncher/SynchedEntityDatagetF(Lnet/minecraft/network/syncher/EntityDataAccessor;)Ljava/lang/Object; ­Ë ÌÍ booleanValue()Z ÅÏ ÐÑsetG(Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)V ¼Ó ÔÕintValue()I × ØÍhasActiveAttackTarget Ú ÛÜlevel#()Lnet/minecraft/world/level/Level; Þßà áÍnet/minecraft/world/level/Level isClientSide ã äåclientSideCachedAttackTarget)Lnet/minecraft/world/entity/LivingEntity; Þç èé getEntity&(I)Lnet/minecraft/world/entity/Entity; ë ìí getTarget+()Lnet/minecraft/world/entity/LivingEntity; ï ðñonSyncedDataUpdated5(Lnet/minecraft/network/syncher/EntityDataAccessor;)V óôõ ö÷0net/minecraft/network/syncher/EntityDataAccessorequals(Ljava/lang/Object;)Z ù úclientSideAttackTime ü ýÍ isInWater ÿ  net/minecraft/sounds/SoundEventsGUARDIAN_AMBIENT!Lnet/minecraft/sounds/SoundEvent; ÿ GUARDIAN_AMBIENT_LAND ÿ   GUARDIAN_HURT ÿ  GUARDIAN_HURT_LAND ÿ GUARDIAN_DEATH ÿ GUARDIAN_DEATH_LAND  2net/minecraft/world/entity/Entity$MovementEmissionEVENTS4Lnet/minecraft/world/entity/Entity$MovementEmission;  %net/minecraft/world/level/LevelReader getFluidStateN(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/FluidState;  !" #net/minecraft/tags/FluidTagsLnet/minecraft/tags/TagKey; %&' ()-net/minecraft/world/level/material/FluidStateis(Lnet/minecraft/tags/TagKey;)ZA , -.!getPathfindingCostFromLightLevels (Lnet/minecraft/core/BlockPos;)F 0 12getWalkTargetValueG(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelReader;)F 4 5ÍisAlive 7 81clientSideTailAnimationSpeed : ;<getDeltaMovement!()Lnet/minecraft/world/phys/Vec3; >?@ ABnet/minecraft/world/phys/Vec3yD D EFclientSideTouchedGroundZ H IÍisSilent K LMgetX()D O PMgetY R SMgetZ U VW getFlopSound#()Lnet/minecraft/sounds/SoundEvent; Y Z[getSoundSource$()Lnet/minecraft/sounds/SoundSource; Þ] ^_playLocalSoundL(DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZ)V a bc blockPosition()Lnet/minecraft/core/BlockPos; efg hcnet/minecraft/core/BlockPosbelow Þj klloadedAndEntityCanStandOnC(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z n oÍisMoving?@€=ÌÌÍ>>LÌÍ v w1clientSideSpikesAnimation y z1clientSideSpikesAnimationO>€=uÂ� ~ € getViewVector"(F)Lnet/minecraft/world/phys/Vec3; ‚ƒ„ …†*net/minecraft/core/particles/ParticleTypesBUBBLE1Lnet/minecraft/core/particles/SimpleParticleType; ˆ ‰Š getRandomX(D)D >Œ �Bx?ø ‘ ’M getRandomY ” •Š getRandomZ >— ˜Bz Þš ›œ addParticle7(Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V ž ŸÕgetAttackDuration ¡ ¢ígetActiveAttackTarget ¤ ¥¦getLookControl5()Lnet/minecraft/world/entity/ai/control/LookControl;B´ ©ª« ¬­1net/minecraft/world/entity/ai/control/LookControl setLookAt((Lnet/minecraft/world/entity/Entity;FF)V ©¯ °±tick()V ³ ´µgetAttackAnimationScale(F)F {K {¸ PŠ º »MgetEyeY {R ¾¿À ÁŠjava/lang/Mathsqrt )à ÄM nextDouble?üÌÌÌÌÌÍ?û333333Ê!net/minecraft/world/entity/Entity Ì ÍÎ setAirSupply(I)V Ð ÑÍonGround>ÌÌÍ >Ô “Õ$(DDD)Lnet/minecraft/world/phys/Vec3; × ØÙsetDeltaMovement"(Lnet/minecraft/world/phys/Vec3;)VC´ Ü ÝÞsetYRot(F)V à áâ setOnGround(Z)V ä åF needsSync ç è1yHeadRot ê ë±aiStep ÿí î GUARDIAN_FLOP ðñò óônet/minecraft/util/Mthlerp(FFF)F ö ÷øisUnobstructed&(Lnet/minecraft/world/entity/Entity;)Z )ú ûünextInt(I)I þÿ 'net/minecraft/world/level/LevelAccessorcanSeeSkyFromBelowWater (Lnet/minecraft/core/BlockPos;)Z þ  getDifficulty"()Lnet/minecraft/world/Difficulty;     net/minecraft/world/DifficultyPEACEFUL Lnet/minecraft/world/Difficulty;  ,net/minecraft/world/entity/EntitySpawnReason isSpawner1(Lnet/minecraft/world/entity/EntitySpawnReason;)Z þ  #!net/minecraft/tags/DamageTypeTagsAVOIDS_GUARDIAN_THORNS &-net/minecraft/world/damagesource/DamageSource   !,net/minecraft/world/damagesource/DamageTypesTHORNS%Lnet/minecraft/resources/ResourceKey; # ($((Lnet/minecraft/resources/ResourceKey;)Z & '(getDirectEntity%()Lnet/minecraft/world/entity/Entity; * +, damageSources2()Lnet/minecraft/world/damagesource/DamageSources; ./0 12.net/minecraft/world/damagesource/DamageSourcesthornsT(Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; {4 56 hurtServer[(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;F)Z :8 9±trigger 4 < => moveRelative#(FLnet/minecraft/world/phys/Vec3;)V @AB CD$net/minecraft/world/entity/MoverTypeSELF&Lnet/minecraft/world/entity/MoverType; F GHmoveH(Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V?ìÌÌÌÌÌÍ >L MNscale"(D)Lnet/minecraft/world/phys/Vec3;¿tzáG®{ RST UV3net/minecraft/network/syncher/EntityDataSerializersBOOLEAN4Lnet/minecraft/network/syncher/EntityDataSerializer; ÅX YZdefineIdy(Ljava/lang/Class;Lnet/minecraft/network/syncher/EntityDataSerializer;)Lnet/minecraft/network/syncher/EntityDataAccessor; R\ ]VINT ATTACK_TIME ConstantValueP SignatureGLnet/minecraft/network/syncher/EntityDataAccessor;GLnet/minecraft/network/syncher/EntityDataAccessor;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;CodeLineNumberTableLocalVariableTablethis-Lnet/minecraft/world/entity/monster/Guardian;type'Lnet/minecraft/world/entity/EntityType;!Lnet/minecraft/world/level/Level;LocalVariableTypeTableWLnet/minecraft/world/entity/EntityType<+Lnet/minecraft/world/entity/monster/Guardian;>;MethodParameters{(Lnet/minecraft/world/entity/EntityType<+Lnet/minecraft/world/entity/monster/Guardian;>;Lnet/minecraft/world/level/Level;)V registerGoalsgoal?Lnet/minecraft/world/entity/ai/goal/MoveTowardsRestrictionGoal;createAttributescreateNavigation\(Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation;9Lnet/minecraft/network/syncher/SynchedEntityData$Builder; setMovingvaluesetActiveAttackTargetentityId StackMapTable livingEntityentity#Lnet/minecraft/world/entity/Entity;accessor5Lnet/minecraft/network/syncher/EntityDataAccessor<*>;8(Lnet/minecraft/network/syncher/EntityDataAccessor<*>;)VgetAmbientSoundIntervalgetAmbientSound‡net/minecraft/sounds/SoundEvent getHurtSoundR(Lnet/minecraft/world/damagesource/DamageSource;)Lnet/minecraft/sounds/SoundEvent;source/Lnet/minecraft/world/damagesource/DamageSource; getDeathSoundgetMovementEmission6()Lnet/minecraft/world/entity/Entity$MovementEmission;posLnet/minecraft/core/BlockPos;'Lnet/minecraft/world/level/LevelReader;movementLnet/minecraft/world/phys/Vec3;i viewVectoratdxdydzdddist attackTargetgetTailAnimationagetSpikesAnimationgetClientSideAttackTimecheckSpawnObstruction*(Lnet/minecraft/world/level/LevelReader;)ZcheckGuardianSpawnRules¿(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/EntitySpawnReason;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z)Lnet/minecraft/world/level/LevelAccessor; spawnReason.Lnet/minecraft/world/entity/EntitySpawnReason;ï(Lnet/minecraft/world/entity/EntityType<+Lnet/minecraft/world/entity/monster/Guardian;>;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/EntitySpawnReason;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Zcause(Lnet/minecraft/server/level/ServerLevel;damagegetMaxHeadXRot travelInWater%(Lnet/minecraft/world/phys/Vec3;DZD)Vinput baseGravity isFallingoldY SourceFile Guardian.java NestMembers InnerClassesGuardianMoveControlGuardianAttackGoal»'net/minecraft/world/entity/ai/goal/GoalFlagGuardianAttackSelector¿Dnet/minecraft/world/entity/ai/targeting/TargetingConditions$SelectorÁ;net/minecraft/world/entity/ai/targeting/TargetingConditionsSelectorÄ:net/minecraft/world/entity/ai/attributes/AttributeSupplierBuilderMovementEmission!  ^_`ª«abº«ac014181w1z1äådeúEFABdefž6*+,·* µ *² ¶*»Y*·µ **´$¹(µ.**´.µ2±gCE GH J-K5Lh 6ij6kl6Ûmn 6kop kÛaqr±f ¸»5Y*·7L*»:Y*P·<µ?*´C»GY*·I¶J*´C+¶J*´C*´?¶J*´C»PY*RT·U¶J*´C»PY* XY·Z¶J*´C »]Y*·_¶J*´?²b²h¸k¶q+²b²h¸k¶u*´v»yY*{ »}Y*··€¶J±g2 P QS)T2U?VTXkY|\Œ]™_·`h¸ij ®st u†fG¸ƒ²‡�¶�²•˜¶�²š�¶�°gc defcvwf> »ŸY*+·¡°gkh ij ÛmpÛ¦§f^*+·¤+²¨¸¬¶²W+²¸¸»¶²W±gprsthijÂxpÂoÍf;*´À²¨¶ÄÀ­¶Ê¬gwh ijyâfG*´À²¨¸¬¶Î±g {|hijzFpzŸÕf-P¬gh ij{ÎfG*´À²¸¸»¶Î±g ƒ„hij|p|ØÍfN*´À²¸¶ÄÀ¼¶Ò™§¬g‡h ij}@¢ífÍT*¶Öš°*¶Ù¶Ý™?*´âÆ*´â°*¶Ù*´À²¸¶ÄÀ¼¶Ò¶æL+Á{™+À{M*,µâ*´â°°*¶ê°g. ‹Œ Ž��’7“C”H•M—O™h C ~å7€Tij}  ü-Éúdeðñfy*+·î²¸+¶ò™ *µø*µâ±gž ¡¢¤hij�«n �‚}p�aƒ„Õf. ¬g¨h ij…WfH*¶û™ ²þ§²°g­h ij} B†ˆ‰fR*¶û™ ²§² °g²hijŠ‹} B†pŠŒWfH*¶û™ ² §²°g·h ij} B†�Žf.²°g¼h ij12fr#,+¹²¶$™*,+¹+b®*+,·/®gÁÂÄh #ij#��#Û‘}p �Ûë±f¹ê*¶3™á*¶Ù¶Ý™c**´.µ2*¶ûši* µ6*¶9L+´=—ž/*´C™(*¶Gš!*¶Ù*¶J*¶N*¶Q*¶T*¶X ¶\*+´=˜œ*¶Ù*¶`¶d*¶i™§µC§L*¶m™0*´6p–œ *qµ6§0*Y´6p*´6frjbµ6§*Y´6s*´6ftjbµ6*Y´.*´6bµ.**´uµx*¶ûš**´$¹(µu§3*¶m™*Y´u *´uf{jbµu§*Y´u *´uf|jbµu*¶m™W*¶û™P* ¶}L=¢C*¶Ù²�*˜¶‡+´‹Žkg*¶�+´=Žkg*˜¶“+´–Žkg¶™„§ÿ¾*¶Ö™ç*´ø*¶�¢ *Y´ø`µø*¶ L+ÆÉ*¶£+§§¶¨*¶£¶®* ¶²�I+¶¶*¶Jg9+˜¶·*¶¹g9+¶¼*¶Qg9kkckc¸½9  o9 o9 o9*´$¹Â9   ˜œK Å(g*´$¹ÂÇ(gkcc9 *¶Ù²�*¶J kc*¶¹ kc*¶Q kc¶™§ÿ³*¶û™ *,¶˧W*¶Ï™P**¶9*´$¹( j fÒj�˜*´$¹( j fÒj�¶Ó¶Ö**´$¹(Új¶Û*¶ß*µã*¶Ö™ **´æ¶Û*·é±gî;ÉÊÌÍ Î%Ï*ÐAÑ_ÓƒÔ�՘֢غÛÏÝÜàäáëâûãäæ+é9ê?ëFì€ë†ð�ñ˜ò¢ô§õ«ö¹÷ÀùÇúÒûàüëýþÿ!)Cq x ‚ ‰’§µ»ÌÑÖÝåéhp *Y’“AE”?G•“Ǫ–BÒŸ—Bà‘˜B놙BpšB !P›B §Êœåêij}Sü_>_ ÿ > ú+ý>ùDÿ~ {ÿO ûSVWf.²ì°g"h ij�µfA #*´2*´.¸ï®g&h ij ž1pžŸµfA #*´x*´u¸ï®g*h ij ž1pž´µfB*´ø†#b*¶�†n®g.hijž1pž -f0*´ø†®g2h ij¡¢f<+*¹õ¬g7hijÛ‘pÛ £¤fÓR¹ù™ +-¹ýš=+¹²¥1,¸ š+-¹²¶$™+-¶d¹²¶$™§¬g<=#>;?Q<h4RklRÛ¥R¦§R��R&'n Rko}"@pkÛ¦�&a¨56fÄV*¶mš<,²¶š2,²¶"š(,¶%:Á{™À{:+*¶)*¶- ¶3W*´?Æ *´?¶7*+,%·:¬gD0E@HGINLh40©åVijVÛªVŠ‹V«1}û@ p ÛŠ«¬Õf.´¬gQh ij­®f¯@*r+¶;*²?*¶9¶E**¶9I¶K¶Ö*¶mš*¶êÇ**¶9O¶Ó¶Ö±gVWY![/\?^h4@ij@¯“@°B@±F@²B}?p¯°±²³±f3 ²Q¸W³¨ ²[¸W³¸±g 5 6´µ¶G}·B ¸ G ¹ cº¼@} ½ ¾À �ÃÅ ³ÅÅ ÉÆ@