EventTitleCommand class

Пакет: com.hypixel.hytale.server.core.command.commands.utility

Файл: com/hypixel/hytale/server/core/command/commands/utility/EventTitleCommand.java

extends: CommandBase

Поля (17)

МодификаторыТипИмя
return
return
Message var10
Message var11
String var2
var2
var2
String var3
String var3
var3
var3
var3
var3
var3
String var4
String var4
boolean var5

Методы (1)

МодификаторыВозвратСигнатура
abstract super super("eventtitle", "server.commands.eventtitle.desc")

Исходный код

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

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.CommandUtil;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.DefaultArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.FlagArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.OptionalArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.Universe;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.util.EventTitleUtil;
class="kw">import java.util.regex.Pattern;
class="kw">import javax.annotation.Nonnull;

class="kw">public class EventTitleCommand class="kw">extends CommandBase {
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_EVENT_TITLE_TITLE_REQUIRED = Message.translation("server.commands.eventtitle.titleRequired");
   @Nonnull
   class="kw">private class="kw">final FlagArg majorFlag = this.withFlagArg("major", "server.commands.eventtitle.major.desc");
   @Nonnull
   class="kw">private class="kw">final DefaultArg<String> secondaryTitleArg = this.withDefaultArg(
      "secondary", "server.commands.eventtitle.secondary.desc", ArgTypes.STRING, "Event", "server.commands.eventtitle.secondary.defaultDesc"
   );
   @Nonnull
   class="kw">private class="kw">final OptionalArg<String> primaryTitleArg = this.withOptionalArg("title", "server.commands.eventtitle.title.desc", ArgTypes.STRING);

   class="kw">public EventTitleCommand() {
      super("eventtitle", "server.commands.eventtitle.desc");
      this.setAllowsExtraArguments(true);
   }

   @Override
   class="kw">protected void executeSync(@Nonnull CommandContext var1) {
      String var2;
      if (this.primaryTitleArg.provided(var1)) {
         var2 = this.primaryTitleArg.get(var1).replace("\"", "");
      } else {
         String var3 = var1.getInputString();
         String var4 = CommandUtil.stripCommandName(var3);
         if (var4.trim().isEmpty()) {
            var1.sendMessage(MESSAGE_COMMANDS_EVENT_TITLE_TITLE_REQUIRED);
            class="kw">return;
         }

         var2 = this.extractTitleFromRawInput(var4, var1);
         if (var2.trim().isEmpty()) {
            var1.sendMessage(MESSAGE_COMMANDS_EVENT_TITLE_TITLE_REQUIRED);
            class="kw">return;
         }
      }

      Message var10 = Message.raw(var2);
      Message var11 = Message.raw(this.secondaryTitleArg.get(var1));
      boolean var5 = this.majorFlag.get(var1);

      for (World var7 : Universe.get().getWorlds().values()) {
         for (PlayerRef var9 : var7.getPlayerRefs()) {
            EventTitleUtil.showEventTitleToPlayer(var9, var10, var11, var5);
         }
      }
   }

   @Nonnull
   class="kw">private String extractTitleFromRawInput(@Nonnull String var1, @Nonnull CommandContext var2) {
      String var3 = var1.trim();
      if (this.majorFlag.get(var2)) {
         var3 = var3.replaceAll("--major\\b", "").trim();
      }

      if (this.secondaryTitleArg.provided(var2)) {
         String var4 = this.secondaryTitleArg.get(var2);
         var3 = var3.replaceAll("--secondary\\s*=\\s*" + Pattern.quote(var4), "");
         var3 = var3.replaceAll("--secondary\\s+" + Pattern.quote(var4), "");
      } else {
         var3 = var3.replaceAll("--secondary\\s*=\\s*[^\\s]+", "");
         var3 = var3.replaceAll("--secondary\\s+[^\\s]+", "");
      }

      class="kw">return var3.trim();
   }
}