IChunkAccessorSync interface

Пакет: com.hypixel.hytale.server.core.universe.world.accessor

Файл: com/hypixel/hytale/server/core/universe/world/accessor/IChunkAccessorSync.java

Поля (7)

МодификаторыТипИмя
WorldChunk var2
int var3
long var4
long var4
WorldChunk var6
WorldChunk var6
int var7

Методы (7)

МодификаторыВозвратСигнатура
default boolean breakBlockboolean breakBlock(int var1, int var2, int var3, int var4)
default int getBlockint getBlock(@Nonnull Vector3i var1)
default int getBlockint getBlock(int var1, int var2, int var3)
if if(var6 == null)
default void setBlockvoid setBlock(int var1, int var2, int var3, String var4)
default void setBlockvoid setBlock(int var1, int var2, int var3, String var4, int var5)
default void setBlockInteractionStatevoid setBlockInteractionState(@Nonnull Vector3i var1, @Nonnull BlockType var2, @Nonnull String var3)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.universe.world.accessor;

class="kw">import com.hypixel.hytale.component.Holder;
class="kw">import com.hypixel.hytale.math.util.ChunkUtil;
class="kw">import com.hypixel.hytale.protocol.BlockPosition;
class="kw">import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
class="kw">import com.hypixel.hytale.server.core.universe.world.chunk.WorldChunk;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
class="kw">import com.hypixel.hytale.server.core.util.FillerBlockUtil;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.joml.Vector3i;
class="kw">import org.joml.Vector3ic;

@Deprecated
class="kw">public class="kw">interface IChunkAccessorSync {
   @Nullable
   WorldChunk getChunkIfInMemory(long var1);

   @Nullable
   WorldChunk loadChunkIfInMemory(long var1);

   @Nullable
   WorldChunk getChunkIfLoaded(long var1);

   @Nullable
   WorldChunk getChunkIfNonTicking(long var1);

   @Nullable
   WorldChunk getChunk(long var1);

   @Nullable
   WorldChunk getNonTickingChunk(long var1);

   class="kw">default int getBlock(@Nonnull Vector3i var1) {
      class="kw">return this.getBlock(var1.x(), var1.y(), var1.z());
   }

   class="kw">default int getBlock(int var1, int var2, int var3) {
      long var4 = ChunkUtil.indexChunkFromBlock(var1, var3);
      WorldChunk var6 = this.getChunk(var4);
      class="kw">return var6 == null ? 0 : var6.getBlock(var1, var2, var3);
   }

   @Nullable
   class="kw">default BlockType getBlockType(@Nonnull Vector3ic var1) {
      class="kw">return this.getBlockType(var1.x(), var1.y(), var1.z());
   }

   @Nullable
   class="kw">default BlockType getBlockType(int var1, int var2, int var3) {
      long var4 = ChunkUtil.indexChunkFromBlock(var1, var3);
      WorldChunk var6 = this.getChunk(var4);
      if (var6 == null) {
         class="kw">return null;
      }

      int var7 = var6.getBlock(var1, var2, var3);
      class="kw">return BlockType.getAssetMap().getAsset(var7);
   }

   class="kw">default void setBlock(int var1, int var2, int var3, String var4) {
      this.setBlock(var1, var2, var3, var4, 0);
   }

   class="kw">default void setBlock(int var1, int var2, int var3, String var4, int var5) {
      this.getChunk(ChunkUtil.indexChunkFromBlock(var1, var3)).setBlock(var1, var2, var3, var4, var5);
   }

   class="kw">default boolean breakBlock(int var1, int var2, int var3, int var4) {
      class="kw">return this.getChunk(ChunkUtil.indexChunkFromBlock(var1, var3)).breakBlock(var1, var2, var3, var4);
   }

   @Nullable
   class="kw">default Holder<ChunkStore> getBlockComponentHolder(int var1, int var2, int var3) {
      class="kw">return var2 >= 0 && var2 < 320 ? this.getChunk(ChunkUtil.indexChunkFromBlock(var1, var3)).getBlockComponentHolder(var1, var2, var3) : null;
   }

   class="kw">default void setBlockInteractionState(@Nonnull Vector3i var1, @Nonnull BlockType var2, @Nonnull String var3) {
      this.getChunk(ChunkUtil.indexChunkFromBlock(var1.x, var1.z)).setBlockInteractionState(var1, var2, var3);
   }

   @Nonnull
   @Deprecated(forRemoval = true)
   class="kw">default BlockPosition getBaseBlock(@Nonnull BlockPosition var1) {
      WorldChunk var2 = this.getNonTickingChunk(ChunkUtil.indexChunkFromBlock(var1.x, var1.z));
      int var3 = var2.getFiller(var1.x, var1.y, var1.z);
      class="kw">return var3 != 0
         ? new BlockPosition(var1.x - FillerBlockUtil.unpackX(var3), var1.y - FillerBlockUtil.unpackY(var3), var1.z - FillerBlockUtil.unpackZ(var3))
         : var1;
   }
}