MacroCommandBuilder class

Пакет: com.hypixel.hytale.builtin.commandmacro

Файл: com/hypixel/hytale/builtin/commandmacro/MacroCommandBuilder.java

implements: JsonAssetWithMap<String, DefaultAssetMap<String, MacroCommandBuilder>>

Поля (2)

МодификаторыТипИмя
String var1
String[] var2

Методы (5)

МодификаторыВозвратСигнатура
abstract return new MacroCommandBasereturn new MacroCommandBase(var1, var2, this.aliases, this.description, this.parameters, this.commands, this.permissionGroup)
for for(String var6 : var2)
public String getIdString getId()
public String getNameString getName()
if if(this.name == null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.commandmacro;

class="kw">import com.hypixel.hytale.assetstore.AssetExtraInfo;
class="kw">import com.hypixel.hytale.assetstore.codec.AssetBuilderCodec;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.assetstore.map.JsonAssetWithMap;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.codecs.array.ArrayCodec;
class="kw">import com.hypixel.hytale.codec.validation.Validators;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class MacroCommandBuilder class="kw">implements JsonAssetWithMap<String, DefaultAssetMap<String, MacroCommandBuilder>> {
   @Nonnull
   class="kw">public class="kw">static class="kw">final AssetBuilderCodec<String, MacroCommandBuilder> CODEC = AssetBuilderCodec.builder(
         MacroCommandBuilder.class,
         MacroCommandBuilder::new,
         Codec.STRING,
         (var0, var1) -> var0.id = var1,
         var0 -> var0.id,
         (var0, var1) -> var0.data = var1,
         var0 -> var0.data
      )
      .append(new KeyedCodec<>("Name", Codec.STRING, true), (var0, var1) -> var0.name = var1, var0 -> var0.name)
      .add()
      .append(new KeyedCodec<>("Aliases", Codec.STRING_ARRAY, false), (var0, var1) -> var0.aliases = var1, var0 -> var0.aliases)
      .add()
      .<String>append(new KeyedCodec<>("Description", Codec.STRING, true), (var0, var1) -> var0.description = var1, var0 -> var0.description)
      .addValidator(Validators.serverLocKeyValidator())
      .add()
      .append(
         new KeyedCodec<>("Parameters", new ArrayCodec<>(MacroCommandParameter.CODEC, MacroCommandParameter[]::new), false),
         (var0, var1) -> var0.parameters = var1,
         var0 -> var0.parameters
      )
      .add()
      .append(new KeyedCodec<>("Commands", Codec.STRING_ARRAY, true), (var0, var1) -> var0.commands = var1, var0 -> var0.commands)
      .add()
      .append(new KeyedCodec<>("PermissionGroup", Codec.STRING, false), (var0, var1) -> var0.permissionGroup = var1, var0 -> var0.permissionGroup)
      .add()
      .build();
   class="kw">private String id;
   class="kw">private String name;
   class="kw">private String[] aliases;
   class="kw">private String description;
   class="kw">private MacroCommandParameter[] parameters;
   class="kw">private String[] commands;
   class="kw">private String permissionGroup;
   class="kw">private AssetExtraInfo.Data data;

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

   @Nullable
   class="kw">public String[] getPathTokens() {
      if (this.name == null) {
         class="kw">return null;
      }

      String var1 = this.name.strip();
      if (!var1.isEmpty() && var1.length() == this.name.length()) {
         String[] var2 = var1.split(" ", -1);

         for (String var6 : var2) {
            if (var6.isEmpty()) {
               class="kw">return null;
            }
         }

         class="kw">return var2;
      } else {
         class="kw">return null;
      }
   }

   @Nonnull
   MacroCommandBase createBase(@Nonnull String var1, @Nonnull String var2) {
      class="kw">return new MacroCommandBase(var1, var2, this.aliases, this.description, this.parameters, this.commands, this.permissionGroup);
   }

   class="kw">public String getName() {
      class="kw">return this.name;
   }

   class="kw">public String getId() {
      class="kw">return this.id;
   }
}