InteractionView class

Пакет: com.hypixel.hytale.server.npc.blackboard.view.interaction

Файл: com/hypixel/hytale/server/npc/blackboard/view/interaction/InteractionView.java

extends: PrioritisedProviderView<ReservationProvider, InteractionView>

Поля (7)

МодификаторыТипИмя
NPCEntity var3
World var3
UUIDComponent var4
Blackboard var4
UUID var5
ReservationStatus var5
final World world

Методы (3)

МодификаторыВозвратСигнатура
abstract for for(int var4 = 0; var4 < this.providers.size()
public InteractionView getUpdatedViewInteractionView getUpdatedView(@Nonnull Ref<EntityStore> var1, @Nonnull ComponentAccessor<EntityStore> var2)
if if(var5 != ReservationStatus.NOT_RESERVED)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.blackboard.view.interaction;

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.server.core.entity.UUIDComponent;
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 com.hypixel.hytale.server.npc.blackboard.Blackboard;
class="kw">import com.hypixel.hytale.server.npc.blackboard.BlackboardSubscription;
class="kw">import com.hypixel.hytale.server.npc.blackboard.view.PrioritisedProviderView;
class="kw">import com.hypixel.hytale.server.npc.entities.NPCEntity;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;

class="kw">public class InteractionView class="kw">extends PrioritisedProviderView<ReservationProvider, InteractionView> {
   class="kw">private class="kw">final World world;

   class="kw">public InteractionView(World var1) {
      this.world = var1;
      this.registerProvider(Integer.MAX_VALUE, (var0, var1x, var2) -> {
         NPCEntity var3 = var2.getComponent(var0, NPCEntity.getComponentType());
         assert var3 != null;
         if (!var3.isReserved()) {
            class="kw">return ReservationStatus.NOT_RESERVED;
         }

         UUIDComponent var4 = var2.getComponent(var1x, UUIDComponent.getComponentType());
         assert var4 != null;
         UUID var5 = var4.getUuid();
         class="kw">return var3.isReservedBy(var5) ? ReservationStatus.RESERVED_THIS : ReservationStatus.RESERVED_OTHER;
      });
   }

   @Override
   class="kw">public boolean isOutdated(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2) {
      class="kw">return false;
   }

   class="kw">public InteractionView getUpdatedView(@Nonnull Ref<EntityStore> var1, @Nonnull ComponentAccessor<EntityStore> var2) {
      World var3 = var2.getExternalData().getWorld();
      if (!var3.equals(this.world)) {
         Blackboard var4 = var2.getResource(Blackboard.getResourceType());
         class="kw">return var4.getView(InteractionView.class, var1, var2);
      } else {
         class="kw">return this;
      }
   }

   @Override
   class="kw">public void initialiseEntity(@Nonnull Ref<EntityStore> var1, @Nonnull BlackboardSubscription var2) {
   }

   @Override
   class="kw">public void cleanup() {
   }

   @Override
   class="kw">public void onWorldRemoved() {
   }

   @Nonnull
   class="kw">public ReservationStatus getReservationStatus(@Nonnull Ref<EntityStore> var1, @Nonnull Ref<EntityStore> var2, @Nonnull ComponentAccessor<EntityStore> var3) {
      for (int var4 = 0; var4 < this.providers.size(); var4++) {
         ReservationStatus var5 = this.providers.get(var4).getProvider().getReservationStatus(var1, var2, var3);
         if (var5 != ReservationStatus.NOT_RESERVED) {
            class="kw">return var5;
         }
      }

      class="kw">return ReservationStatus.NOT_RESERVED;
   }
}