MemoriesWindow class
Пакет: com.hypixel.hytale.builtin.adventure.memories.window
Файл: com/hypixel/hytale/builtin/adventure/memories/window/MemoriesWindow.java
extends: Window
Поля (7)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Map |
var1 |
|
JsonArray |
var3 |
|
PlayerMemories |
var4 |
|
String |
var4 |
|
JsonObject |
var7 |
|
String |
var8 |
|
String |
var9 |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
if if(var4 != null) |
|
|
if if(var9 != null) |
abstract |
|
super super(WindowType.Memories) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.memories.window;
class="kw">import com.google.gson.JsonArray;
class="kw">import com.google.gson.JsonObject;
class="kw">import com.hypixel.hytale.builtin.adventure.memories.MemoriesPlugin;
class="kw">import com.hypixel.hytale.builtin.adventure.memories.component.PlayerMemories;
class="kw">import com.hypixel.hytale.builtin.adventure.memories.memories.Memory;
class="kw">import com.hypixel.hytale.codec.EmptyExtraInfo;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.protocol.packets.window.WindowType;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.entity.entities.player.windows.Window;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.core.util.BsonUtil;
class="kw">import java.util.Map;
class="kw">import java.util.Set;
class="kw">import java.util.Map.Entry;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class MemoriesWindow class="kw">extends Window {
@Nonnull
class="kw">private class="kw">final JsonObject windowData = new JsonObject();
class="kw">public MemoriesWindow() {
super(WindowType.Memories);
}
@Nonnull
@Override
class="kw">public JsonObject getData() {
class="kw">return this.windowData;
}
@Override
class="kw">public boolean onOpen0(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2) {
JsonArray var3 = new JsonArray();
PlayerMemories var4 = var2.getComponent(var1, PlayerMemories.getComponentType());
if (var4 != null) {
this.windowData.addProperty("capacity", var4.getMemoriesCapacity());
for (Memory var6 : var4.getRecordedMemories()) {
JsonObject var7 = new JsonObject();
var7.addProperty("title", var6.getTitle());
var7.add("tooltipText", BsonUtil.translateBsonToJson(Message.CODEC.encode(var6.getTooltipText(), EmptyExtraInfo.EMPTY).asDocument()));
String var8 = var6.getIconPath();
if (var8 != null && !var8.isEmpty()) {
var7.addProperty("icon", var8);
}
String var9 = GetCategoryIconPathForMemory(var6);
if (var9 != null) {
var7.addProperty("categoryIcon", var9);
}
var3.add(var7);
}
} else {
this.windowData.addProperty("capacity", 0);
}
this.windowData.add("memories", var3);
this.invalidate();
class="kw">return true;
}
@Nullable
class="kw">private class="kw">static String GetCategoryIconPathForMemory(@Nonnull Memory var0) {
Map var1 = MemoriesPlugin.get().getAllMemories();
for (Entry var3 : var1.entrySet()) {
if (var3.getValue().contains(var0)) {
String var4 = "UI/Custom/Pages/Memories/categories/%s.png";
class="kw">return String.format("UI/Custom/Pages/Memories/categories/%s.png", var3.getKey());
}
}
class="kw">return null;
}
@Override
class="kw">public void onClose0(@Nonnull Ref<EntityStore> var1, @Nonnull ComponentAccessor<EntityStore> var2) {
}
}