Class WorldEnvironmentSpawnData

java.lang.Object
com.hypixel.hytale.server.spawning.world.WorldEnvironmentSpawnData

public class WorldEnvironmentSpawnData extends Object
  • Field Details

    • K_COLUMNS

      public static final double K_COLUMNS
      See Also:
    • environmentIndex

      private final int environmentIndex
    • expectedNPCs

      private double expectedNPCs
    • actualNPCs

      private int actualNPCs
    • segmentCount

      private int segmentCount
    • density

      private double density
    • sumOfWeights

      private double sumOfWeights
    • unspawnable

      private boolean unspawnable
    • fullyPopulated

      private boolean fullyPopulated
    • npcStatMap

      @Nonnull private final it.unimi.dsi.fastutil.ints.Int2ObjectMap<WorldNPCSpawnStat> npcStatMap
    • chunkRefSet

      @Nonnull private final Set<Ref<ChunkStore>> chunkRefSet
  • Constructor Details

    • WorldEnvironmentSpawnData

      public WorldEnvironmentSpawnData(int environmentIndex, double density)
    • WorldEnvironmentSpawnData

      public WorldEnvironmentSpawnData(int index)
  • Method Details

    • getEnvironmentIndex

      public int getEnvironmentIndex()
    • getSegmentCount

      public int getSegmentCount()
    • isUnspawnable

      public boolean isUnspawnable()
    • setUnspawnable

      public void setUnspawnable(boolean unspawnable)
    • getExpectedNPCs

      public double getExpectedNPCs()
    • getActualNPCs

      public int getActualNPCs()
    • isEmpty

      public boolean isEmpty()
    • hasNPCs

      public boolean hasNPCs()
    • getNpcStatMap

      @Nonnull public it.unimi.dsi.fastutil.ints.Int2ObjectMap<WorldNPCSpawnStat> getNpcStatMap()
    • isFullyPopulated

      public boolean isFullyPopulated()
    • setFullyPopulated

      public void setFullyPopulated(boolean fullyPopulated)
    • getChunkRefSet

      @Nonnull public Set<Ref<ChunkStore>> getChunkRefSet()
    • adjustSegmentCount

      public void adjustSegmentCount(int delta)
    • forEachNpcStat

      public void forEachNpcStat(@Nonnull IntObjectConsumer<WorldNPCSpawnStat> consumer)
    • setDensity

      public void setDensity(double density, @Nonnull Store<ChunkStore> store)
    • updateNPCs

      public void updateNPCs(WorldSpawnWrapper spawnWrapper, World world)
    • clearNPCs

      public void clearNPCs()
    • updateSpawnStats

      public void updateSpawnStats(int roleIndex, int spansTried, int spansSuccess, int budgetUsed, @Nonnull it.unimi.dsi.fastutil.objects.Object2IntMap<SpawnRejection> rejections, boolean success)
    • removeNPC

      public void removeNPC(int roleIndex, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
    • addNPC

      public void addNPC(int roleIndex, @Nonnull WorldSpawnWrapper spawnWrapper, @Nonnull RoleSpawnParameters spawnParams, @Nonnull World world, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
    • spawnWeight

      public double spawnWeight()
    • pickRandomSpawnNPCStat

      @Nullable public WorldNPCSpawnStat pickRandomSpawnNPCStat(@Nonnull ComponentAccessor<EntityStore> componentAccessor)
    • resetUnspawnable

      public void resetUnspawnable()
    • trackSpawn

      public void trackSpawn(int roleNameIndex, int npcCount)
    • trackDespawn

      public void trackDespawn(int roleNameIndex, int npcCount)
    • removeChunk

      public void removeChunk(@Nonnull Ref<ChunkStore> ref, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
    • addChunk

      public void addChunk(@Nonnull Ref<ChunkStore> ref, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
    • recalculateWeight

      public void recalculateWeight(int moonPhase)
    • updateExpectedNPCs

      public void updateExpectedNPCs(int moonPhase)