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;
}
}