BlockSetCommand class

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

Файл: com/hypixel/hytale/server/core/universe/world/commands/block/BlockSetCommand.java

extends: SimpleBlockCommand

Поля (5)

МодификаторыТипИмя
final RequiredArg<BlockType> blockArg
CommandSender var6
BlockType var7
Store var8
Ref var9

Методы (2)

МодификаторыВозвратСигнатура
if if(var9 != null)
abstract super super("set", "server.commands.block.set.desc")

Исходный код

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

class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
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.universe.world.chunk.BlockOperations;
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 javax.annotation.Nonnull;

class="kw">public class BlockSetCommand class="kw">extends SimpleBlockCommand {
   class="kw">private class="kw">final RequiredArg<BlockType> blockArg = this.withRequiredArg("block", "server.commands.block.set.arg.block", ArgTypes.BLOCK_TYPE_ASSET);

   class="kw">public BlockSetCommand() {
      super("set", "server.commands.block.set.desc");
      this.setPermissionGroups("hytale:Builder");
   }

   @Override
   class="kw">protected void executeWithBlock(@Nonnull CommandContext var1, @Nonnull WorldChunk var2, int var3, int var4, int var5) {
      CommandSender var6 = var1.sender();
      BlockType var7 = var1.get(this.blockArg);
      Store var8 = var2.getReference().getStore();
      Ref var9 = var8.getExternalData().getChunkSectionReferenceAtBlock(var3, var4, var5);
      if (var9 != null) {
         BlockOperations.setBlock(var8.getExternalData(), var9, var3, var4, var5, BlockType.getAssetMap().getIndex(var7.getId()), var7, 0, 0, 0);
         var6.sendMessage(
            Message.translation("server.commands.block.set.success").param("x", var3).param("y", var4).param("z", var5).param("id", var7.getId().toString())
         );
      }
   }
}