Class DragonFightManager

java.lang.Object
net.minecraft.world.end.DragonFightManager

public class DragonFightManager extends Object
  • Field Details

    • LOGGER

      private static final org.apache.logging.log4j.Logger LOGGER
    • VALID_PLAYER

      private static final Predicate<Entity> VALID_PLAYER
    • dragonEvent

      private final ServerBossInfo dragonEvent
    • level

      private final ServerWorld level
    • gateways

      private final List<Integer> gateways
    • exitPortalPattern

      private final BlockPattern exitPortalPattern
    • ticksSinceDragonSeen

      private int ticksSinceDragonSeen
    • crystalsAlive

      private int crystalsAlive
    • ticksSinceCrystalsScanned

      private int ticksSinceCrystalsScanned
    • ticksSinceLastPlayerScan

      private int ticksSinceLastPlayerScan
    • dragonKilled

      private boolean dragonKilled
    • previouslyKilled

      private boolean previouslyKilled
    • dragonUUID

      private UUID dragonUUID
    • needsStateScanning

      private boolean needsStateScanning
    • portalLocation

      private BlockPos portalLocation
    • respawnStage

      private DragonSpawnState respawnStage
    • respawnTime

      private int respawnTime
    • respawnCrystals

      private List<EnderCrystalEntity> respawnCrystals
  • Constructor Details

    • DragonFightManager

      public DragonFightManager(ServerWorld p_i231901_1_, long p_i231901_2_, CompoundNBT p_i231901_4_)
  • Method Details

    • saveData

      public CompoundNBT saveData()
    • tick

      public void tick()
    • scanState

      private void scanState()
    • findOrCreateDragon

      private void findOrCreateDragon()
    • setRespawnStage

      protected void setRespawnStage(DragonSpawnState p_186095_1_)
    • hasActiveExitPortal

      private boolean hasActiveExitPortal()
    • findExitPortal

      @Nullable private BlockPattern.PatternHelper findExitPortal()
    • isArenaLoaded

      private boolean isArenaLoaded()
    • updatePlayers

      private void updatePlayers()
    • updateCrystalCount

      private void updateCrystalCount()
    • setDragonKilled

      public void setDragonKilled(EnderDragonEntity p_186096_1_)
    • spawnNewGateway

      private void spawnNewGateway()
    • spawnNewGateway

      private void spawnNewGateway(BlockPos p_186089_1_)
    • spawnExitPortal

      private void spawnExitPortal(boolean p_186094_1_)
    • createNewDragon

      private EnderDragonEntity createNewDragon()
    • updateDragon

      public void updateDragon(EnderDragonEntity p_186099_1_)
    • getCrystalsAlive

      public int getCrystalsAlive()
    • onCrystalDestroyed

      public void onCrystalDestroyed(EnderCrystalEntity p_186090_1_, DamageSource p_186090_2_)
    • hasPreviouslyKilledDragon

      public boolean hasPreviouslyKilledDragon()
    • tryRespawn

      public void tryRespawn()
    • respawnDragon

      private void respawnDragon(List<EnderCrystalEntity> p_186093_1_)
    • resetSpikeCrystals

      public void resetSpikeCrystals()
    • addPlayer

      public void addPlayer(ServerPlayerEntity player)
    • removePlayer

      public void removePlayer(ServerPlayerEntity player)