RangeType enum

Пакет: com.hypixel.hytale.server.npc.role.support

Файл: com/hypixel/hytale/server/npc/role/support/RoleStats.java

Поля (1)

МодификаторыТипИмя
SORTED, UNSORTED, AVOIDANCE

Исходный код

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

class="kw">import it.unimi.dsi.fastutil.ints.IntArrayList;
class="kw">import it.unimi.dsi.fastutil.ints.IntOpenHashSet;
class="kw">import it.unimi.dsi.fastutil.ints.IntSet;
class="kw">import java.util.Arrays;
class="kw">import java.util.EnumMap;
class="kw">import javax.annotation.Nullable;

class="kw">public class RoleStats {
   class="kw">protected class="kw">final EnumMap<RoleStats.RangeType, IntSet> playerRanges = new EnumMap<>(RoleStats.RangeType.class);
   class="kw">protected class="kw">final EnumMap<RoleStats.RangeType, IntSet> npcRanges = new EnumMap<>(RoleStats.RangeType.class);
   @Nullable
   class="kw">protected IntArrayList playerBucketRanges;
   @Nullable
   class="kw">protected IntArrayList npcBucketRanges;

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

   class="kw">public void clear() {
      this.playerRanges.clear();
      this.npcRanges.clear();
      this.playerBucketRanges = null;
      this.npcBucketRanges = null;
   }

   class="kw">public void trackRange(boolean var1, RoleStats.RangeType var2, int var3) {
      EnumMap var4 = var1 ? this.playerRanges : this.npcRanges;
      var4.computeIfAbsent(var2, var0 -> new IntOpenHashSet()).add(var3);
   }

   class="kw">public IntSet getRanges(boolean var1, RoleStats.RangeType var2) {
      EnumMap var3 = var1 ? this.playerRanges : this.npcRanges;
      class="kw">return var3.get(var2);
   }

   class="kw">public int[] getRangesSorted(boolean var1, RoleStats.RangeType var2) {
      IntSet var3 = this.getRanges(var1, var2);
      if (var3 == null) {
         class="kw">return null;
      }

      int[] var4 = var3.toIntArray();
      Arrays.sort(var4);
      class="kw">return var4;
   }

   class="kw">public void trackBuckets(boolean var1, IntArrayList var2) {
      if (var1) {
         this.playerBucketRanges = var2;
      } else {
         this.npcBucketRanges = var2;
      }
   }

   @Nullable
   class="kw">public IntArrayList getBuckets(boolean var1) {
      class="kw">return var1 ? this.playerBucketRanges : this.npcBucketRanges;
   }

   class="kw">public enum RangeType {
      SORTED,
      UNSORTED,
      AVOIDANCE;

      RangeType() {
      }
   }
}