SetNameRespawnPointPage class

Пакет: com.hypixel.hytale.builtin.beds.respawn

Файл: com/hypixel/hytale/builtin/beds/respawn/SetNameRespawnPointPage.java

extends: RespawnPointPage

Поля (9)

МодификаторыТипИмя
break
String var4
Player var5
Player var5
PlayerRef var6
World var7
PlayerRespawnPointData[] var8
String var9
var9

Методы (9)

МодификаторыВозвратСигнатура
for for(PlayerRespawnPointData var13 : var8)
public void handleDataEventvoid handleDataEvent(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2, @Nonnull RespawnPointPage.RespawnPointEventData var3)
if if(var5 != null)
if if(var6 != null)
if if(var8 != null)
if if(var9 == null)
if if(var4 != null)
if if(var5 != null)
abstract super super(var1, var2)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.beds.respawn;

class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.protocol.InteractionType;
class="kw">import com.hypixel.hytale.protocol.packets.interface_.CustomUIEventBindingType;
class="kw">import com.hypixel.hytale.protocol.packets.interface_.Page;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.entity.entities.player.data.PlayerRespawnPointData;
class="kw">import com.hypixel.hytale.server.core.ui.builder.EventData;
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.ChunkStore;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3i;

class="kw">public class SetNameRespawnPointPage class="kw">extends RespawnPointPage {
   @Nonnull
   class="kw">private class="kw">final Vector3i respawnBlockPosition;
   @Nonnull
   class="kw">private class="kw">final Ref<ChunkStore> blockRef;

   class="kw">public SetNameRespawnPointPage(@Nonnull PlayerRef var1, @Nonnull InteractionType var2, @Nonnull Vector3i var3, @Nonnull Ref<ChunkStore> var4) {
      super(var1, var2);
      this.respawnBlockPosition = var3;
      this.blockRef = var4;
   }

   @Override
   class="kw">public void build(@Nonnull Ref<EntityStore> var1, @Nonnull UICommandBuilder var2, @Nonnull UIEventBuilder var3, @Nonnull Store<EntityStore> var4) {
      var2.append("Pages/NameRespawnPointPage.ui");
      Player var5 = var4.getComponent(var1, Player.getComponentType());
      if (var5 != null) {
         PlayerRef var6 = var4.getComponent(var1, PlayerRef.getComponentType());
         if (var6 != null) {
            World var7 = var4.getExternalData().getWorld();
            PlayerRespawnPointData[] var8 = var5.getPlayerConfigData().getPerWorldData(var7.getName()).getRespawnPoints();
            String var9 = null;
            if (var8 != null) {
               for (PlayerRespawnPointData var13 : var8) {
                  if (var13.getBlockPosition().equals(this.respawnBlockPosition)) {
                     var9 = var13.getName();
                     break;
                  }
               }
            }

            if (var9 == null) {
               var2.set("#NameInput.Value", Message.translation("server.customUI.defaultRespawnPointName").param("name", var6.getUsername()));
            } else {
               var2.set("#NameInput.Value", var9);
            }

            var3.addEventBinding(CustomUIEventBindingType.Activating, "#SetButton", EventData.of("@RespawnPointName", "#NameInput.Value"));
            var3.addEventBinding(CustomUIEventBindingType.Activating, "#CancelButton", EventData.of("Action", "Cancel"));
         }
      }
   }

   class="kw">public void handleDataEvent(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2, @Nonnull RespawnPointPage.RespawnPointEventData var3) {
      String var4 = var3.getRespawnPointName();
      if (var4 != null) {
         this.setRespawnPointForPlayer(var1, var2, this.respawnBlockPosition, this.blockRef, var4);
      } else if ("Cancel".equals(var3.getAction())) {
         Player var5 = var2.getComponent(var1, Player.getComponentType());
         if (var5 != null) {
            var5.getPageManager().setPage(var1, var2, Page.None);
         }
      }
   }
}