SpawnController class
Пакет: com.hypixel.hytale.server.spawning.controllers
Файл: com/hypixel/hytale/server/spawning/controllers/SpawnController.java
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
protected |
World |
world |
Методы (9)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
void |
addIdleJobvoid addIdleJob(@Nonnull T var1) |
public |
int |
getActiveJobCountint getActiveJobCount() |
public |
int |
getActualNPCsint getActualNPCs() |
public |
double |
getExpectedNPCsdouble getExpectedNPCs() |
public |
int |
getMaxActiveJobsint getMaxActiveJobs() |
public |
T |
getSpawnJobT getSpawnJob(int var1) |
public |
World |
getWorldWorld getWorld() |
public |
boolean |
isDebugSpawnFrozenboolean isDebugSpawnFrozen() |
public |
boolean |
isUnspawnableboolean isUnspawnable() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.spawning.controllers;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.spawning.SpawningPlugin;
class="kw">import com.hypixel.hytale.server.spawning.jobs.SpawnJob;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.ArrayDeque;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class="kw">abstract class SpawnController<T class="kw">extends SpawnJob> {
class="kw">protected World world;
class="kw">protected boolean unspawnable;
class="kw">protected double expectedNPCs;
class="kw">protected int actualNPCs;
class="kw">protected class="kw">final List<T> activeJobs = new ObjectArrayList();
class="kw">protected class="kw">final ArrayDeque<T> idleJobs = new ArrayDeque<>();
class="kw">protected class="kw">final int baseMaxActiveJobs;
class="kw">protected boolean debugSpawnFrozen;
class="kw">public SpawnController(World var1) {
this.world = var1;
this.expectedNPCs = 0.0;
this.actualNPCs = 0;
this.unspawnable = false;
this.baseMaxActiveJobs = SpawningPlugin.get().getMaxActiveJobs();
}
class="kw">public World getWorld() {
class="kw">return this.world;
}
class="kw">public boolean isUnspawnable() {
class="kw">return this.unspawnable;
}
class="kw">public boolean isDebugSpawnFrozen() {
class="kw">return this.debugSpawnFrozen;
}
class="kw">public int getActualNPCs() {
class="kw">return this.actualNPCs;
}
class="kw">public double getExpectedNPCs() {
class="kw">return this.expectedNPCs;
}
class="kw">public int getActiveJobCount() {
class="kw">return this.activeJobs.size();
}
class="kw">public int getMaxActiveJobs() {
class="kw">return this.baseMaxActiveJobs;
}
class="kw">public T getSpawnJob(int var1) {
class="kw">return this.activeJobs.get(var1);
}
@Nonnull
class="kw">public List<T> getActiveJobs() {
class="kw">return this.activeJobs;
}
class="kw">public void addIdleJob(@Nonnull T var1) {
this.idleJobs.push(var1);
}
@Nullable
class="kw">public class="kw">abstract T createRandomSpawnJob(ComponentAccessor<EntityStore> var1);
}