ChunkSpawnedNPCData class
Пакет: com.hypixel.hytale.server.spawning.world.component
Файл: com/hypixel/hytale/server/spawning/world/component/ChunkSpawnedNPCData.java
implements: Component<ChunkStore>
Поля (12)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
BuilderCodec<ChunkSpawnedNPCData> |
CODEC |
|
Object2DoubleOpenHashMap |
var1 |
|
ChunkSpawnedNPCData |
var1 |
|
IndexedLookupTableAssetMap |
var2 |
|
Iterator |
var3 |
|
Iterator |
var3 |
|
Entry |
var4 |
|
it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry |
var4 |
|
String |
var5 |
|
Environment |
var5 |
|
int |
var6 |
|
String |
var6 |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
ComponentType<ChunkStore, ChunkSpawnedNPCData> |
getComponentTypeComponentType<ChunkStore, ChunkSpawnedNPCData> getComponentType() |
public |
double |
getEnvironmentSpawnCountdouble getEnvironmentSpawnCount(int var1) |
public |
void |
setEnvironmentSpawnCountvoid setEnvironmentSpawnCount(int var1, double var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.spawning.world.component;
class="kw">import com.hypixel.hytale.assetstore.map.IndexedLookupTableAssetMap;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.codec.codecs.map.Object2DoubleMapCodec;
class="kw">import com.hypixel.hytale.component.Component;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.server.core.asset.type.environment.config.Environment;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
class="kw">import com.hypixel.hytale.server.spawning.SpawningPlugin;
class="kw">import it.unimi.dsi.fastutil.ints.Int2DoubleMap;
class="kw">import it.unimi.dsi.fastutil.ints.Int2DoubleOpenHashMap;
class="kw">import it.unimi.dsi.fastutil.objects.Object2DoubleOpenHashMap;
class="kw">import it.unimi.dsi.fastutil.objects.Object2DoubleMap.Entry;
class="kw">import java.util.Iterator;
class="kw">import javax.annotation.Nonnull;
class="kw">public class ChunkSpawnedNPCData class="kw">implements Component<ChunkStore> {
class="kw">public class="kw">static class="kw">final BuilderCodec<ChunkSpawnedNPCData> CODEC = BuilderCodec.builder(ChunkSpawnedNPCData.class, ChunkSpawnedNPCData::new)
.append(new KeyedCodec<>("EnvironmentSpawnCounts", new Object2DoubleMapCodec<>(Codec.STRING, Object2DoubleOpenHashMap::new, false)), (var0, var1) -> {
Int2DoubleMap var2 = var0.environmentSpawnCounts;
var2.clear();
Iterator var3 = var1.object2DoubleEntrySet().iterator();
while (var3.hasNext()) {
Entry var4 = (Entry<String>)var3.next();
String var5 = (String)var4.getKey();
int var6 = Environment.getIndexOrUnknown(var5, "Failed to find environment '%s' while deserializing spawned NPC data", var5);
var2.put(var6, var4.getDoubleValue());
}
}, var0 -> {
Object2DoubleOpenHashMap var1 = new Object2DoubleOpenHashMap();
IndexedLookupTableAssetMap var2 = Environment.getAssetMap();
Iterator var3 = var0.environmentSpawnCounts.int2DoubleEntrySet().iterator();
while (var3.hasNext()) {
it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry var4 = (it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry)var3.next();
Environment var5 = var2.getAsset(var4.getIntKey());
String var6 = var5 != null ? var5.getId() : Environment.UNKNOWN.getId();
var1.put(var6, var4.getDoubleValue());
}
class="kw">return var1;
})
.add()
.build();
class="kw">private class="kw">final Int2DoubleMap environmentSpawnCounts = new Int2DoubleOpenHashMap();
class="kw">public ChunkSpawnedNPCData() {
}
class="kw">public class="kw">static ComponentType<ChunkStore, ChunkSpawnedNPCData> getComponentType() {
class="kw">return SpawningPlugin.get().getChunkSpawnedNPCDataComponentType();
}
class="kw">public double getEnvironmentSpawnCount(int var1) {
class="kw">return this.environmentSpawnCounts.get(var1);
}
class="kw">public void setEnvironmentSpawnCount(int var1, double var2) {
this.environmentSpawnCounts.put(var1, var2);
}
@Nonnull
@Override
class="kw">public Component<ChunkStore> clone() {
ChunkSpawnedNPCData var1 = new ChunkSpawnedNPCData();
var1.environmentSpawnCounts.putAll(this.environmentSpawnCounts);
class="kw">return var1;
}
}