WorldEventStoragePage class
Пакет: com.hypixel.hytale.builtin.adventure.worldevents.ui
Файл: com/hypixel/hytale/builtin/adventure/worldevents/ui/WorldEventStoragePage.java
extends: WorldEventPanelPage
Поля (20)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
String |
KIND_PERSISTED |
|
|
break |
|
|
break |
|
boolean |
var12 |
|
String |
var15 |
|
UUID[] |
var19 |
|
WorldEventsConfig |
var2 |
|
WorldEventStorage |
var4 |
|
UUID |
var4 |
|
WorldEventManager |
var5 |
|
World |
var6 |
|
List |
var7 |
|
int |
var8 |
|
|
var8 |
|
|
var8 |
|
|
var8 |
|
|
var8 |
|
|
var8 |
|
int |
var9 |
|
|
var9 |
Методы (10)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(WorldEvent var11 : var7) |
|
|
for for(UUID var14 : var19) |
|
|
if if(var8 >= 400) |
|
|
if if(var9 == 0) |
|
|
if if(var8 >= 400) |
|
|
if if(var9 == 0) |
|
|
if if(var3.action != WorldEventPanelPage.Action.RowSelect) |
|
|
if if(var4 == null) |
|
|
if if(var2 == null) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.worldevents.ui;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.WorldEventManager;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.WorldEventRecord;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.WorldEventStorage;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.WorldEventsConfig;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.event.WorldEvent;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.ui.builder.UICommandBuilder;
class="kw">import com.hypixel.hytale.server.core.ui.builder.UIEventBuilder;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
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 java.util.ArrayList;
class="kw">import java.util.Comparator;
class="kw">import java.util.List;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class WorldEventStoragePage class="kw">extends WorldEventPanelPage {
class="kw">private class="kw">static class="kw">final String KIND_PERSISTED = "persisted";
class="kw">private class="kw">static class="kw">final String KIND_COMPLETE = "complete";
class="kw">public WorldEventStoragePage(@Nonnull PlayerRef var1) {
super(var1);
}
@Nullable
@Override
class="kw">protected WorldEventPanelPage.Tab tab() {
class="kw">return WorldEventPanelPage.Tab.STORAGE;
}
@Nonnull
@Override
class="kw">protected String titleKey() {
class="kw">return "server.customUI.worldEventPanel.tab.storage";
}
@Nonnull
@Override
class="kw">protected String descriptionKey() {
class="kw">return "server.customUI.worldEventPanel.tab.storage.desc";
}
@Override
class="kw">protected void buildContent(@Nonnull UICommandBuilder var1, @Nonnull UIEventBuilder var2, @Nonnull Store<EntityStore> var3) {
WorldEventStorage var4 = var3.getResource(WorldEventStorage.getResourceType());
WorldEventManager var5 = var3.getResource(WorldEventManager.getResourceType());
World var6 = var3.getExternalData().getWorld();
List var7 = new ArrayList<>();
var4.forEach(var7, (var0, var1x) -> var1x.add(var0));
var7.sort(Comparator.<WorldEvent, String>comparing(var0 -> var0.asset).thenComparing(var0 -> var0.uuid));
int var8 = 0;
var8 = this.appendSection(
var1, "#ListContainer", var8, Message.translation("server.customUI.worldEventPanel.section.persisted").param("count", var7.size())
);
int var9 = 0;
for (WorldEvent var11 : var7) {
if (this.matchesFilter(var11.asset, var11.uuid.toString())) {
if (var8 >= 400) {
break;
}
boolean var12 = var5.get(var11.uuid) != null;
var8 = this.appendRow(
var1,
var2,
var8,
new WorldEventPanelPage.Row("persisted", var11.uuid.toString())
.label(var11.asset)
.sub(var11.uuid.toString())
.status(var12 ? "#4f9e63" : "#c08a3a")
.badge(Message.translation(var12 ? "server.customUI.worldEventPanel.state.running" : "server.customUI.worldEventPanel.state.dormant"))
.select(WorldEventPanelPage.Action.RowSelect)
.primary(Message.translation("server.customUI.worldEventPanel.action.inspect"), WorldEventPanelPage.Action.RowSelect)
);
var9++;
}
}
if (var9 == 0) {
var8 = this.appendText(var1, "#ListContainer", var8, Message.translation("server.customUI.worldEventPanel.storage.noPersisted"));
}
UUID[] var19 = var4.getComplete();
var8 = this.appendSection(
var1, "#ListContainer", var8, Message.translation("server.customUI.worldEventPanel.section.completed").param("count", var19.length)
);
var9 = 0;
for (UUID var14 : var19) {
String var15 = resolveAsset(var6, var14);
if (this.matchesFilter(var14.toString(), var15 != null ? var15 : "")) {
if (var8 >= 400) {
break;
}
var8 = this.appendRow(
var1,
var2,
var8,
new WorldEventPanelPage.Row("complete", var14.toString())
.label(var15 != null ? var15 : var14.toString())
.sub(var14.toString())
.status("#4274a5")
.badge(Message.translation("server.customUI.worldEventPanel.state.completed"))
);
var9++;
}
}
if (var9 == 0) {
this.appendText(var1, "#ListContainer", var8, Message.translation("server.customUI.worldEventPanel.storage.noCompleted"));
}
}
@Override
class="kw">protected boolean handleAction(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2, @Nonnull WorldEventPanelPage.PageData var3) {
if (var3.action != WorldEventPanelPage.Action.RowSelect) {
class="kw">return false;
}
UUID var4 = parseUuid(var3.id);
if (var4 == null) {
class="kw">return false;
}
this.openPage(var1, var2, new WorldEventInspectorPage(this.playerRef, var4));
class="kw">return false;
}
@Nullable
class="kw">private class="kw">static String resolveAsset(@Nonnull World var0, @Nonnull UUID var1) {
WorldEventsConfig var2 = config(var0);
if (var2 == null) {
class="kw">return null;
}
for (WorldEventRecord var6 : var2.events()) {
if (var6 != null && var1.equals(var6.id())) {
class="kw">return var6.event();
}
}
for (WorldEventRecord var10 : var2.globalEvents()) {
if (var10 != null && var1.equals(var10.id())) {
class="kw">return var10.event();
}
}
class="kw">return null;
}
}