classpublicPriority 3
BeaconSpawnController
com.hypixel.hytale.server.spawning.controllers.BeaconSpawnController
extends SpawnController
32
Methods
32
Public Methods
14
Fields
1
Constructors
Constants
HytaleLoggerLOGGER= HytaleLogger.forEnclosingClass()
intMAX_ATTEMPTS_PER_TICK= 5
doubleROUNDING_BREAK_POINT= 0.25
Constructors
public
BeaconSpawnController(World world, Ref<EntityStore> ownerRef)Methods
Public Methods (32)
public
void addRoundSpawn()public
void clearUnspawnableNPCs()public
NPCBeaconSpawnJob createRandomSpawnJob(ComponentAccessor<EntityStore> componentAccessor)@Nullable
public
int[] getBaseMaxConcurrentSpawns()public
int getBaseMaxTotalSpawns()public
double getBeaconRadiusSquared()public
int getCurrentScaledMaxConcurrentSpawns()public
Duration getDespawnBeaconAfterTimeout()public
double getDespawnNPCAfterTimeout()public
Object2IntMap<UUID> getEntitiesPerPlayer()public
Object2DoubleMap<Ref<EntityStore>> getEntityTimeoutCounter()public
int getMaxActiveJobs()@Override
public
Ref<EntityStore> getOwnerRef()public
List<PlayerRef> getPlayersInRegion()public
double getSpawnRadiusSquared()public
List<Ref<EntityStore>> getSpawnedEntities()public
int getSpawnsThisRound()public
Comparator<PlayerRef> getThreatComparator()public
boolean hasSlots()public
void initialise(BeaconSpawnWrapper spawnWrapper)public
boolean isDespawnNPCsIfIdle()public
boolean isRoundStart()public
void markNPCUnspawnable(int roleIndex)public
void notifyNPCRemoval(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor)public
void notifySpawnedEntityExists(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor)public
void onAllConcurrentSpawned(ComponentAccessor<EntityStore> componentAccessor)public
void onJobFinished(ComponentAccessor<EntityStore> componentAccessor)public
void setCurrentScaledMaxConcurrentSpawns(int currentScaledMaxConcurrentSpawns)public
void setCurrentScaledMaxTotalSpawns(int currentScaledMaxTotalSpawns)public
void setNextPlayerIndex(int nextPlayerIndex)public
void setRemainingSpawns(int remainingSpawns)public
void setRoundStart(boolean roundStart)Fields
Private/Package Fields (14)
private
int[] baseMaxConcurrentSpawnsprivate
int baseMaxTotalSpawnsprivate
double beaconRadiusSquaredprivate
int currentScaledMaxConcurrentSpawnsprivate
int currentScaledMaxTotalSpawnsprivate
Duration despawnBeaconAfterTimeoutprivate
double despawnNPCAfterTimeoutprivate
boolean despawnNPCsIfIdleprivate
int nextPlayerIndexprivate
Ref<EntityStore> ownerRefprivate
int remainingSpawnsprivate
boolean roundStartprivate
double spawnRadiusSquaredprivate
int spawnsThisRound