ReturnToHubButtonSystem class

Пакет: com.hypixel.hytale.builtin.creativehub.systems

Файл: com/hypixel/hytale/builtin/creativehub/systems/ReturnToHubButtonSystem.java

extends: RefSystem<EntityStore>

Поля (8)

МодификаторыТипИмя
CreativeHubEntityConfig var4
Optional var5
PlayerRef var5
World var5
PlayerRef var6
World var6
boolean var7
World var7

Методы (2)

МодификаторыВозвратСигнатура
private Optional<Boolean> getCreativeHubWorldStatusOptional<Boolean> getCreativeHubWorldStatus(@Nonnull Store<EntityStore> var1, @Nonnull CommandBuffer<EntityStore> var2, @Nonnull Ref<EntityStore> var3)
if if(var5 == null)

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.creativehub.CreativeHubPlugin;
class="kw">import com.hypixel.hytale.builtin.creativehub.config.CreativeHubEntityConfig;
class="kw">import com.hypixel.hytale.builtin.creativehub.ui.ReturnToHubButtonUI;
class="kw">import com.hypixel.hytale.component.AddReason;
class="kw">import com.hypixel.hytale.component.CommandBuffer;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.RemoveReason;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.component.query.Query;
class="kw">import com.hypixel.hytale.component.system.RefSystem;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.Universe;
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.Optional;
class="kw">import javax.annotation.Nonnull;

class="kw">public class ReturnToHubButtonSystem class="kw">extends RefSystem<EntityStore> {
   class="kw">public ReturnToHubButtonSystem() {
   }

   @Override
   class="kw">public void onEntityAdded(
      @Nonnull Ref<EntityStore> var1, @Nonnull AddReason var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4
   ) {
      Optional var5 = this.getCreativeHubWorldStatus(var3, var4, var1);
      if (!var5.isEmpty()) {
         PlayerRef var6 = var4.getComponent(var1, PlayerRef.getComponentType());
         boolean var7 = !var5.get();
         ReturnToHubButtonUI.send(var6, var7);
      }
   }

   @Override
   class="kw">public void onEntityRemove(
      @Nonnull Ref<EntityStore> var1, @Nonnull RemoveReason var2, @Nonnull Store<EntityStore> var3, @Nonnull CommandBuffer<EntityStore> var4
   ) {
      if (!this.getCreativeHubWorldStatus(var3, var4, var1).isEmpty()) {
         PlayerRef var5 = var4.getComponent(var1, PlayerRef.getComponentType());
         ReturnToHubButtonUI.clear(var5);
      }
   }

   @Override
   class="kw">public Query<EntityStore> getQuery() {
      class="kw">return Query.and(Player.getComponentType(), PlayerRef.getComponentType());
   }

   class="kw">private Optional<Boolean> getCreativeHubWorldStatus(
      @Nonnull Store<EntityStore> var1, @Nonnull CommandBuffer<EntityStore> var2, @Nonnull Ref<EntityStore> var3
   ) {
      CreativeHubEntityConfig var4 = var2.getComponent(var3, CreativeHubEntityConfig.getComponentType());
      if (var4 != null && var4.getParentHubWorldUuid() != null) {
         World var5 = Universe.get().getWorld(var4.getParentHubWorldUuid());
         if (var5 == null) {
            class="kw">return Optional.empty();
         }

         World var6 = var1.getExternalData().getWorld();
         World var7 = CreativeHubPlugin.get().getActiveHubInstance(var5);
         class="kw">return Optional.of(!var6.equals(var7));
      } else {
         class="kw">return Optional.empty();
      }
   }
}