CLASS btg net/minecraft/entity/boss/dragon/EnderDragonFight FIELD a LOGGER Lorg/apache/logging/log4j/Logger; FIELD b VALID_ENTITY Ljava/util/function/Predicate; FIELD c bossBar Lup; FIELD d world Lur; FIELD e gateways Ljava/util/List; FIELD f endPortalPattern Lbqn; FIELD g dragonSeenTimer I FIELD h endCrystalsAlive I FIELD i crystalCountTimer I FIELD j playerUpdateTimer I FIELD k dragonKilled Z FIELD l previouslyKilled Z FIELD m dragonUuid Ljava/util/UUID; FIELD n doLegacyCheck Z FIELD o exitPortalLocation Let; FIELD p dragonSpawnState Lbtf; FIELD q spawnStateTimer I FIELD r crystals Ljava/util/List; METHOD (Lur;Lhq;)V ARG 1 world METHOD a toTag ()Lhq; METHOD a crystalDestroyed (Lanw;Lagl;)V ARG 1 enderCrystal ARG 2 source METHOD a dragonKilled (Lanx;)V ARG 1 dragon METHOD a setSpawnState (Lbtf;)V METHOD a generateEndGateway (Let;)V METHOD a respawnDragon (Ljava/util/List;)V METHOD a generateEndPortal (Z)V ARG 1 previouslyKilled METHOD b tick ()V METHOD b updateFight (Lanx;)V ARG 1 dragon METHOD c getAliveEndCrystals ()I METHOD d hasPreviouslyKilled ()Z METHOD e respawnDragon ()V METHOD f resetEndCrystals ()V METHOD g convertFromLegacy ()V METHOD h checkDragonSeen ()V METHOD i worldContainsEndPortal ()Z METHOD j findEndPortal ()Lbqn$b; METHOD k loadChunks ()Z METHOD l updatePlayers ()V METHOD m countAliveCrystals ()V METHOD n generateNewEndGateway ()V METHOD o createDragon ()Lanx;