BeaconSpawnManager class

Пакет: com.hypixel.hytale.server.spawning.managers

Файл: com/hypixel/hytale/server/spawning/managers/BeaconSpawnManager.java

extends: SpawnManager<BeaconSpawnWrapper, BeaconNPCSpawn>

Поля (3)

МодификаторыТипИмя
BeaconSpawnWrapper var2
IntSet var2
IntSet var3

Методы (3)

МодификаторыВозвратСигнатура
public boolean addSpawnWrapperboolean addSpawnWrapper(@Nonnull BeaconSpawnWrapper var1)
public List<BeaconSpawnWrapper> getBeaconSpawnsList<BeaconSpawnWrapper> getBeaconSpawns(int var1)
if if(var2 == null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.spawning.managers;

class="kw">import com.hypixel.fastutil.ints.Int2ObjectConcurrentHashMap;
class="kw">import com.hypixel.hytale.server.spawning.assets.spawns.config.BeaconNPCSpawn;
class="kw">import com.hypixel.hytale.server.spawning.wrappers.BeaconSpawnWrapper;
class="kw">import it.unimi.dsi.fastutil.ints.IntSet;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class BeaconSpawnManager class="kw">extends SpawnManager<BeaconSpawnWrapper, BeaconNPCSpawn> {
   @Nonnull
   class="kw">private class="kw">final Int2ObjectConcurrentHashMap<List<BeaconSpawnWrapper>> wrappersByEnvironment = new Int2ObjectConcurrentHashMap<>();

   class="kw">public BeaconSpawnManager() {
   }

   @Nullable
   class="kw">public BeaconSpawnWrapper removeSpawnWrapper(int var1) {
      BeaconSpawnWrapper var2 = (BeaconSpawnWrapper)super.removeSpawnWrapper(var1);
      if (var2 == null) {
         class="kw">return null;
      }

      IntSet var3 = var2.getSpawn().getEnvironmentIds();
      var3.forEach(var2x -> this.wrappersByEnvironment.get(var2x).remove(var2));
      class="kw">return var2;
   }

   class="kw">public boolean addSpawnWrapper(@Nonnull BeaconSpawnWrapper var1) {
      IntSet var2 = var1.getSpawn().getEnvironmentIds();
      var2.forEach(var2x -> this.wrappersByEnvironment.computeIfAbsent(var2x, var0 -> new ObjectArrayList()).add(var1));
      super.addSpawnWrapper(var1);
      class="kw">return true;
   }

   class="kw">public List<BeaconSpawnWrapper> getBeaconSpawns(int var1) {
      class="kw">return this.wrappersByEnvironment.get(var1);
   }
}