Vector3iList class

Пакет: com.hypixel.hytale.builtin.adventure.worldevents.util

Файл: com/hypixel/hytale/builtin/adventure/worldevents/util/Vector3iList.java

Поля (6)

МодификаторыТипИмя
final Vector3iList EMPTY
int var1
int var2
int var3
int var3
int var4

Методы (14)

МодификаторыВозвратСигнатура
abstract throw new UnsupportedOperationExceptionthrow new UnsupportedOperationException()
public void addpublic void add(int var1, int var2, int var3)
public void addvoid add(@Nonnull Vector3i var1)
public void addvoid add(@Nonnull Vector3ic var1)
public void addvoid add(int var1, int var2, int var3)
public void clearvoid clear()
public void copyvoid copy(@Nonnull Vector3iList var1)
public boolean emptyboolean empty()
protected void ensureCapacityvoid ensureCapacity()
public Vector3i getVector3i get(int var1, @Nonnull Vector3i var2)
if if(this.size == 0)
if if(this.size > 1)
public boolean removeboolean remove(int var1)
public int sizeint size()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.worldevents.util;

class="kw">import com.hypixel.hytale.common.util.ArrayUtil;
class="kw">import java.util.Arrays;
class="kw">import java.util.random.RandomGenerator;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.joml.Vector3i;
class="kw">import org.joml.Vector3ic;

class="kw">public class Vector3iList {
   class="kw">public class="kw">static class="kw">final Vector3iList EMPTY = new Vector3iList() {
      @Override
      class="kw">public void add(int var1, int var2, int var3) {
         throw new UnsupportedOperationException();
      }
   };
   class="kw">protected class="kw">static class="kw">final int COMPONENTS = 3;
   class="kw">protected class="kw">static class="kw">final int X_OFFSET = 0;
   class="kw">protected class="kw">static class="kw">final int Y_OFFSET = 1;
   class="kw">protected class="kw">static class="kw">final int Z_OFFSET = 2;
   class="kw">protected int size = 0;
   @Nonnull
   class="kw">protected int[] components = ArrayUtil.EMPTY_INT_ARRAY;

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

   class="kw">public Vector3iList(int var1) {
      this.components = new int[var1 * 3];
   }

   class="kw">public void clear() {
      this.size = 0;
   }

   class="kw">public boolean empty() {
      class="kw">return this.size == 0;
   }

   class="kw">public int size() {
      class="kw">return this.size;
   }

   class="kw">public Vector3i get(int var1, @Nonnull Vector3i var2) {
      int var3 = var1 * 3;
      assert var3 >= 0 : "Index must be zero or a positive integer";
      assert var3 + 3 <= this.components.length : "Index must allow space for 3 components (x, y, z)";
      var2.set(this.components[var3 + 0], this.components[var3 + 1], this.components[var3 + 2]);
      class="kw">return var2;
   }

   @Nullable
   class="kw">public Vector3ic get(@Nonnull RandomGenerator var1, @Nonnull Vector3i var2) {
      class="kw">return this.size == 0 ? null : this.get(var1.nextInt(this.size), var2);
   }

   class="kw">public void add(@Nonnull Vector3i var1) {
      this.add(var1.x, var1.y, var1.z);
   }

   class="kw">public void add(@Nonnull Vector3ic var1) {
      this.add(var1.x(), var1.y(), var1.z());
   }

   class="kw">public void add(int var1, int var2, int var3) {
      this.ensureCapacity();
      int var4 = this.size * 3;
      this.components[var4 + 0] = var1;
      this.components[var4 + 1] = var2;
      this.components[var4 + 2] = var3;
      this.size++;
   }

   class="kw">public boolean remove(int var1) {
      if (this.size == 0) {
         class="kw">return false;
      }

      if (this.size > 1) {
         int var2 = var1 * 3;
         int var3 = (this.size - 1) * 3;
         this.components[var2 + 0] = this.components[var3 + 0];
         this.components[var2 + 1] = this.components[var3 + 1];
         this.components[var2 + 2] = this.components[var3 + 2];
      }

      this.size--;
      class="kw">return true;
   }

   class="kw">public void copy(@Nonnull Vector3iList var1) {
      this.size = var1.size;
      this.components = Arrays.copyOf(var1.components, var1.components.length);
   }

   class="kw">protected void ensureCapacity() {
      if ((this.size + 1) * 3 > this.components.length) {
         int var1 = Math.max(ArrayUtil.grow(this.components.length), (this.size + 1) * 3);
         this.components = Arrays.copyOf(this.components, var1);
      }
   }
}