RailStepResult class

Пакет: com.hypixel.hytale.server.npc.movement.controllers

Файл: com/hypixel/hytale/server/npc/movement/controllers/RailStepResult.java

Поля (5)

МодификаторыТипИмя
final BlockHit[] BLOCK_HITS
int var1
int var1
BlockHit[] var2
EntityHit[] var2

Методы (12)

МодификаторыВозвратСигнатура
abstract throw new IndexOutOfBoundsExceptionthrow new IndexOutOfBoundsException("pass-through index " + var1 + " out of bounds for size " + this.passThroughCount)
abstract throw new IndexOutOfBoundsExceptionthrow new IndexOutOfBoundsException("entity-hit index " + var1 + " out of bounds for size " + this.entityHitCount)
for for(int var1 = 0; var1 < this.entityHitCount; var1++)
for for(int var3 = this.passThroughBlocks.length; var3 < var1; var3++)
for for(int var3 = this.entityHits.length; var3 < var1; var3++)
public int getEntityHitCountint getEntityHitCount()
public int getPassThroughCountint getPassThroughCount()
if if(var1 >= 0 && var1 < this.passThroughCount)
if if(this.passThroughCount >= this.passThroughBlocks.length)
if if(var1 >= 0 && var1 < this.entityHitCount)
if if(this.entityHitCount >= this.entityHits.length)
public void resetvoid reset()

Исходный код

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

class="kw">import java.util.Arrays;
class="kw">import javax.annotation.Nonnull;

class="kw">public class="kw">final class RailStepResult {
   class="kw">private class="kw">static class="kw">final BlockHit[] BLOCK_HITS = new BlockHit[0];
   class="kw">private class="kw">static class="kw">final EntityHit[] ENTITY_HITS = new EntityHit[0];
   class="kw">public boolean obstructed;
   class="kw">public boolean hitEntity;
   class="kw">public double appliedFraction;
   @Nonnull
   class="kw">private BlockHit[] passThroughBlocks = BLOCK_HITS;
   class="kw">private int passThroughCount;
   @Nonnull
   class="kw">private EntityHit[] entityHits = ENTITY_HITS;
   class="kw">private int entityHitCount;

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

   class="kw">public void reset() {
      this.obstructed = false;
      this.hitEntity = false;
      this.appliedFraction = 0.0;

      for (int var1 = 0; var1 < this.entityHitCount; var1++) {
         this.entityHits[var1].clearReferences();
      }

      this.passThroughCount = 0;
      this.entityHitCount = 0;
   }

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

   @Nonnull
   class="kw">public BlockHit getPassThrough(int var1) {
      if (var1 >= 0 && var1 < this.passThroughCount) {
         class="kw">return this.passThroughBlocks[var1];
      } else {
         throw new IndexOutOfBoundsException("pass-through index " + var1 + " out of bounds for size " + this.passThroughCount);
      }
   }

   @Nonnull
   class="kw">public BlockHit nextPassThrough() {
      if (this.passThroughCount >= this.passThroughBlocks.length) {
         int var1 = this.passThroughBlocks.length == 0 ? 4 : this.passThroughBlocks.length * 2;
         BlockHit[] var2 = Arrays.copyOf(this.passThroughBlocks, var1);

         for (int var3 = this.passThroughBlocks.length; var3 < var1; var3++) {
            var2[var3] = new BlockHit();
         }

         this.passThroughBlocks = var2;
      }

      class="kw">return this.passThroughBlocks[this.passThroughCount++];
   }

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

   @Nonnull
   class="kw">public EntityHit getEntityHit(int var1) {
      if (var1 >= 0 && var1 < this.entityHitCount) {
         class="kw">return this.entityHits[var1];
      } else {
         throw new IndexOutOfBoundsException("entity-hit index " + var1 + " out of bounds for size " + this.entityHitCount);
      }
   }

   @Nonnull
   class="kw">public EntityHit nextEntityHit() {
      if (this.entityHitCount >= this.entityHits.length) {
         int var1 = this.entityHits.length == 0 ? 4 : this.entityHits.length * 2;
         EntityHit[] var2 = Arrays.copyOf(this.entityHits, var1);

         for (int var3 = this.entityHits.length; var3 < var1; var3++) {
            var2[var3] = new EntityHit();
         }

         this.entityHits = var2;
      }

      class="kw">return this.entityHits[this.entityHitCount++];
   }
}