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