PlayerMemories class
Пакет: com.hypixel.hytale.builtin.adventure.memories.component
Файл: com/hypixel/hytale/builtin/adventure/memories/component/PlayerMemories.java
implements: Component<EntityStore>
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
PlayerMemories |
var1 |
|
boolean |
var2 |
Методы (7)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
ComponentType<EntityStore, PlayerMemories> |
getComponentTypeComponentType<EntityStore, PlayerMemories> getComponentType() |
public |
int |
getMemoriesCapacityint getMemoriesCapacity() |
public |
boolean |
hasMemoriesboolean hasMemories() |
|
|
if if(var1 != null) |
public |
boolean |
recordMemoryboolean recordMemory(Memory var1) |
public |
void |
setMemoriesCapacityvoid setMemoriesCapacity(int var1) |
public |
boolean |
takeMemoriesboolean takeMemories(@Nonnull Set<Memory> var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.memories.component;
class="kw">import com.hypixel.hytale.builtin.adventure.memories.MemoriesPlugin;
class="kw">import com.hypixel.hytale.builtin.adventure.memories.memories.Memory;
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.array.ArrayCodec;
class="kw">import com.hypixel.hytale.component.Component;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.Collections;
class="kw">import java.util.LinkedHashSet;
class="kw">import java.util.Set;
class="kw">import javax.annotation.Nonnull;
class="kw">public class PlayerMemories class="kw">implements Component<EntityStore> {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<PlayerMemories> CODEC = BuilderCodec.builder(PlayerMemories.class, PlayerMemories::new)
.append(new KeyedCodec<>("Capacity", Codec.INTEGER), (var0, var1) -> var0.memoriesCapacity = var1, var0 -> var0.memoriesCapacity)
.add()
.append(new KeyedCodec<>("Memories", new ArrayCodec<>(Memory.CODEC, Memory[]::new)), (var0, var1) -> {
if (var1 != null) {
Collections.addAll(var0.memories, var1);
}
}, var0 -> var0.memories.toArray(Memory[]::new))
.add()
.build();
@Nonnull
class="kw">private class="kw">final Set<Memory> memories = new LinkedHashSet<>();
class="kw">private int memoriesCapacity;
class="kw">public PlayerMemories() {
}
class="kw">public class="kw">static ComponentType<EntityStore, PlayerMemories> getComponentType() {
class="kw">return MemoriesPlugin.get().getPlayerMemoriesComponentType();
}
@Nonnull
@Override
class="kw">public Component<EntityStore> clone() {
PlayerMemories var1 = new PlayerMemories();
var1.memories.addAll(this.memories);
var1.memoriesCapacity = this.memoriesCapacity;
class="kw">return var1;
}
class="kw">public int getMemoriesCapacity() {
class="kw">return this.memoriesCapacity;
}
class="kw">public void setMemoriesCapacity(int var1) {
this.memoriesCapacity = var1;
}
class="kw">public boolean recordMemory(Memory var1) {
class="kw">return this.memories.size() >= this.memoriesCapacity ? false : this.memories.add(var1);
}
class="kw">public boolean hasMemories() {
class="kw">return !this.memories.isEmpty();
}
class="kw">public boolean takeMemories(@Nonnull Set<Memory> var1) {
boolean var2 = var1.addAll(this.memories);
this.memories.clear();
class="kw">return var2;
}
@Nonnull
class="kw">public Set<Memory> getRecordedMemories() {
class="kw">return Collections.unmodifiableSet(this.memories);
}
}