NoDamageRule class

Пакет: com.hypixel.hytale.builtin.triggervolumes.effect.builtin.rules

Файл: com/hypixel/hytale/builtin/triggervolumes/effect/builtin/rules/NoDamageRule.java

extends: TriggerRule

Методы (2)

МодификаторыВозвратСигнатура
public boolean isPvpOnlyboolean isPvpOnly()
public boolean protectsboolean protects(@Nullable String var1)

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.triggervolumes.effect.TriggerRule;
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.EnumCodec;
class="kw">import com.hypixel.hytale.common.util.ArrayUtil;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class NoDamageRule class="kw">extends TriggerRule {
   @Nonnull
   class="kw">public class="kw">static class="kw">final BuilderCodec<NoDamageRule> CODEC = BuilderCodec.builder(NoDamageRule.class, NoDamageRule::new, BASE_CODEC)
      .append(
         new KeyedCodec<>("EntityFilter", new EnumCodec<>(RuleEntityFilter.class), false),
         (var0, var1) -> var0.entityFilter = var1 != null ? var1 : RuleEntityFilter.ALL,
         var0 -> var0.entityFilter
      )
      .add()
      .append(
         new KeyedCodec<>("Entities", Codec.STRING_ARRAY, false),
         (var0, var1) -> var0.entities = var1 != null ? var1 : ArrayUtil.EMPTY_STRING_ARRAY,
         var0 -> var0.entities.length == 0 ? null : var0.entities
      )
      .add()
      .append(new KeyedCodec<>("PvpOnly", Codec.BOOLEAN, false), (var0, var1) -> var0.pvpOnly = var1, var0 -> var0.pvpOnly ? Boolean.TRUE : null)
      .add()
      .build();
   @Nonnull
   class="kw">private RuleEntityFilter entityFilter = RuleEntityFilter.ALL;
   @Nonnull
   class="kw">private String[] entities = ArrayUtil.EMPTY_STRING_ARRAY;
   class="kw">private boolean pvpOnly;

   class="kw">public NoDamageRule() {
   }

   class="kw">public boolean protects(@Nullable String var1) {
      class="kw">return this.entityFilter.appliesTo(var1, this.entities);
   }

   @Nonnull
   class="kw">public RuleEntityFilter getEntityFilter() {
      class="kw">return this.entityFilter;
   }

   class="kw">public boolean isPvpOnly() {
      class="kw">return this.pvpOnly;
   }
}