Interactions class
Пакет: com.hypixel.hytale.server.core.modules.interaction
Файл: com/hypixel/hytale/server/core/modules/interaction/Interactions.java
implements: Component<EntityStore>
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Interactions |
var1 |
|
boolean |
var1 |
Методы (8)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
boolean |
consumeNetworkOutdatedboolean consumeNetworkOutdated() |
|
|
if if(this.overrideAll != var1) |
public |
boolean |
isEmptyboolean isEmpty() |
public |
boolean |
isOverrideAllboolean isOverrideAll() |
public |
void |
removeInteractionIdvoid removeInteractionId(@Nonnull InteractionType var1) |
public |
void |
setInteractionHintvoid setInteractionHint(@Nullable String var1) |
public |
void |
setInteractionIdvoid setInteractionId(@Nonnull InteractionType var1, @Nonnull String var2) |
public |
void |
setOverrideAllvoid setOverrideAll(boolean var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.interaction;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.codec.codecs.map.EnumMapCodec;
class="kw">import com.hypixel.hytale.component.Component;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.protocol.InteractionType;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.Collections;
class="kw">import java.util.EnumMap;
class="kw">import java.util.Map;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class Interactions class="kw">implements Component<EntityStore> {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<Interactions> CODEC = BuilderCodec.builder(Interactions.class, Interactions::new)
.appendInherited(
new KeyedCodec<>("Interactions", new EnumMapCodec<>(InteractionType.class, Codec.STRING, false)),
(var0, var1) -> var0.interactions = var1,
var0 -> var0.interactions,
(var0, var1) -> var0.interactions = var1.interactions
)
.add()
.appendInherited(
new KeyedCodec<>("InteractionHint", Codec.STRING),
(var0, var1) -> var0.interactionHint = var1,
var0 -> var0.interactionHint,
(var0, var1) -> var0.interactionHint = var1.interactionHint
)
.add()
.appendInherited(
new KeyedCodec<>("OverrideAll", Codec.BOOLEAN),
(var0, var1) -> var0.overrideAll = var1 != null && var1,
var0 -> var0.overrideAll,
(var0, var1) -> var0.overrideAll = var1.overrideAll
)
.add()
.build();
@Nonnull
class="kw">private Map<InteractionType, String> interactions = new EnumMap<>(InteractionType.class);
@Nullable
class="kw">private String interactionHint;
class="kw">private boolean overrideAll;
class="kw">private boolean isNetworkOutdated = true;
@Nonnull
class="kw">public class="kw">static ComponentType<EntityStore, Interactions> getComponentType() {
class="kw">return InteractionModule.get().getInteractionsComponentType();
}
class="kw">public Interactions() {
}
class="kw">public Interactions(@Nonnull Map<InteractionType, String> var1) {
this.interactions = new EnumMap<>(var1);
}
@Nullable
class="kw">public String getInteractionId(@Nonnull InteractionType var1) {
class="kw">return this.interactions.get(var1);
}
class="kw">public void setInteractionId(@Nonnull InteractionType var1, @Nonnull String var2) {
this.interactions.put(var1, var2);
this.isNetworkOutdated = true;
}
class="kw">public void removeInteractionId(@Nonnull InteractionType var1) {
if (this.interactions.remove(var1) != null) {
this.isNetworkOutdated = true;
}
}
class="kw">public boolean isEmpty() {
class="kw">return this.interactions.isEmpty() && !this.overrideAll;
}
class="kw">public boolean isOverrideAll() {
class="kw">return this.overrideAll;
}
class="kw">public void setOverrideAll(boolean var1) {
if (this.overrideAll != var1) {
this.overrideAll = var1;
this.isNetworkOutdated = true;
}
}
@Nonnull
class="kw">public Map<InteractionType, String> getInteractions() {
class="kw">return Collections.unmodifiableMap(this.interactions);
}
@Nullable
class="kw">public String getInteractionHint() {
class="kw">return this.interactionHint;
}
class="kw">public void setInteractionHint(@Nullable String var1) {
this.interactionHint = var1;
this.isNetworkOutdated = true;
}
@Nonnull
@Override
class="kw">public Component<EntityStore> clone() {
Interactions var1 = new Interactions(this.interactions);
var1.interactionHint = this.interactionHint;
var1.overrideAll = this.overrideAll;
class="kw">return var1;
}
class="kw">public boolean consumeNetworkOutdated() {
boolean var1 = this.isNetworkOutdated;
this.isNetworkOutdated = false;
class="kw">return var1;
}
}