WorldEventActivePage class
Пакет: com.hypixel.hytale.builtin.adventure.worldevents.ui
Файл: com/hypixel/hytale/builtin/adventure/worldevents/ui/WorldEventActivePage.java
extends: WorldEventPanelPage
Поля (9)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
String |
KIND_EVENT |
|
|
break |
|
yield |
false |
|
yield |
true |
|
WorldEventManager |
var4 |
|
UUID |
var4 |
|
List |
var5 |
|
int |
var6 |
|
|
var6 |
Методы (7)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(WorldEvent var8 : var5) |
|
|
if if(var6 >= 400) |
|
|
if if(var6 == 0) |
|
|
if if(var4 != null && var3.action != null) |
|
|
if if(var0.failCount > 0) |
abstract |
|
super super(var1) |
|
return |
switchreturn switch(var3.action) |
Исходный код
Показать/скрыть
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.action.EventStopAction;
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.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 WorldEventActivePage class="kw">extends WorldEventPanelPage {
class="kw">private class="kw">static class="kw">final String KIND_EVENT = "event";
class="kw">public WorldEventActivePage(@Nonnull PlayerRef var1) {
super(var1);
}
@Nullable
@Override
class="kw">protected WorldEventPanelPage.Tab tab() {
class="kw">return WorldEventPanelPage.Tab.ACTIVE;
}
@Nonnull
@Override
class="kw">protected String titleKey() {
class="kw">return "server.customUI.worldEventPanel.tab.active";
}
@Nonnull
@Override
class="kw">protected String descriptionKey() {
class="kw">return "server.customUI.worldEventPanel.tab.active.desc";
}
@Override
class="kw">protected void buildContent(@Nonnull UICommandBuilder var1, @Nonnull UIEventBuilder var2, @Nonnull Store<EntityStore> var3) {
WorldEventManager var4 = var3.getResource(WorldEventManager.getResourceType());
List var5 = new ArrayList<>();
var4.forEach(var5, (var0, var1x) -> var1x.add(var0));
var5.sort(Comparator.<WorldEvent, String>comparing(var0 -> var0.asset).thenComparing(var0 -> var0.uuid));
int var6 = 0;
for (WorldEvent var8 : var5) {
if (this.matchesFilter(var8.asset, var8.uuid.toString())) {
if (var6 >= 400) {
break;
}
var6 = this.appendRow(
var1,
var2,
var6,
new WorldEventPanelPage.Row("event", var8.uuid.toString())
.label(var8.asset)
.sub(var8.uuid.toString())
.status(statusColor(var8))
.badge(this.stageBadge(var8))
.select(WorldEventPanelPage.Action.RowSelect)
.primary(Message.translation("server.customUI.worldEventPanel.action.inspect"), WorldEventPanelPage.Action.RowPrimary)
.secondary(Message.translation("server.customUI.worldEventPanel.action.cancel"), WorldEventPanelPage.Action.RowSecondary)
);
}
}
if (var6 == 0) {
this.appendText(var1, "#ListContainer", 0, Message.translation("server.customUI.worldEventPanel.active.empty"));
}
}
@Override
class="kw">protected boolean handleAction(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2, @Nonnull WorldEventPanelPage.PageData var3) {
UUID var4 = parseUuid(var3.id);
if (var4 != null && var3.action != null) {
class="kw">return class="kw">switch (var3.action) {
case RowSelect, RowPrimary -> {
this.openPage(var1, var2, new WorldEventInspectorPage(this.playerRef, var4));
yield false;
}
case RowSecondary -> {
EventStopAction.stopEvent(var2, var4, (var0, var1x) -> var0.uuid.equals(var1x));
yield true;
}
class="kw">default -> false;
};
} else {
class="kw">return false;
}
}
@Nonnull
class="kw">private class="kw">static String statusColor(@Nonnull WorldEvent var0) {
if (var0.failCount > 0) {
class="kw">return "#b04a4a";
} else {
class="kw">return var0.init ? "#c08a3a" : "#4f9e63";
}
}
}