SimpleBlockCommand class
Пакет: com.hypixel.hytale.server.core.universe.world.commands.block
Файл: com/hypixel/hytale/server/core/universe/world/commands/block/SimpleBlockCommand.java
extends: AbstractWorldCommand
Поля (7)
| Модификаторы | Тип | Имя |
|---|---|---|
|
long |
var10 |
|
CommandSender |
var4 |
|
RelativeIntPosition |
var5 |
|
Vector3i |
var6 |
|
int |
var7 |
|
int |
var8 |
|
int |
var9 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract abstract |
void |
executeWithBlockvoid executeWithBlock(@Nonnull CommandContext var1, @Nonnull WorldChunk var2, int var3, int var4, int var5) |
abstract |
|
super super(var1, var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.universe.world.commands.block;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.logger.HytaleLogger;
class="kw">import com.hypixel.hytale.math.util.ChunkUtil;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandSender;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.RelativeIntPosition;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractWorldCommand;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.chunk.WorldChunk;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.logging.Level;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3i;
class="kw">public class="kw">abstract class SimpleBlockCommand class="kw">extends AbstractWorldCommand {
@Nonnull
class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_ERROR_EXCEPTION = Message.translation("server.commands.error.exception");
@Nonnull
class="kw">private class="kw">final RequiredArg<RelativeIntPosition> coordsArg = this.withRequiredArg(
"x y z", "server.commands.block.set.arg.coords", ArgTypes.RELATIVE_BLOCK_POSITION
);
class="kw">public SimpleBlockCommand(@Nonnull String var1, @Nonnull String var2) {
super(var1, var2);
}
@Override
class="kw">protected void execute(@Nonnull CommandContext var1, @Nonnull World var2, @Nonnull Store<EntityStore> var3) {
CommandSender var4 = var1.sender();
RelativeIntPosition var5 = var1.get(this.coordsArg);
Vector3i var6 = var5.getBlockPosition(var1, var3);
int var7 = var6.x;
int var8 = var6.y;
int var9 = var6.z;
long var10 = ChunkUtil.indexChunkFromBlock(var7, var9);
var2.getChunkAsync(var10).thenAcceptAsync(var5x -> this.executeWithBlock(var1, var5x, var7, var8, var9), var2).exceptionally(var1x -> {
((HytaleLogger.Api)HytaleLogger.getLogger().at(Level.SEVERE).withCause(var1x)).log("Error getting chunk for command");
var4.sendMessage(MESSAGE_COMMANDS_ERROR_EXCEPTION);
class="kw">return null;
});
}
class="kw">protected class="kw">abstract void executeWithBlock(@Nonnull CommandContext var1, @Nonnull WorldChunk var2, int var3, int var4, int var5);
}