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;
}
}