PlayCommandBase class

Пакет: com.hypixel.hytale.server.core.modules.singleplayer.commands

Файл: com/hypixel/hytale/server/core/modules/singleplayer/commands/PlayCommandBase.java

extends: CommandBase

Поля (20)

МодификаторыТипИмя
break
break
break
break
break
break
break
break
break
break
break
break
break
break
break
break
break
break
Access var2
Boolean var3

Методы (9)

МодификаторыВозвратСигнатура
if if(var2 == this.commandAccess)
if if(!var3 && var2 == this.commandAccess)
abstract super super(var1, var2)
switch switch(this.commandAccess)
switch switch(this.commandAccess)
switch switch(this.commandAccess)
switch switch(this.commandAccess)
switch switch(this.commandAccess)
switch switch(this.commandAccess)

Исходный код

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

class="kw">import com.hypixel.hytale.protocol.packets.serveraccess.Access;
class="kw">import com.hypixel.hytale.server.core.Constants;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.Options;
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.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.modules.singleplayer.SingleplayerModule;
class="kw">import javax.annotation.Nonnull;

class="kw">public class="kw">abstract class PlayCommandBase class="kw">extends CommandBase {
   @Nonnull
   class="kw">private class="kw">final SingleplayerModule singleplayerModule;
   @Nonnull
   class="kw">private class="kw">final Access commandAccess;
   @Nonnull
   class="kw">private class="kw">final OptionalArg<Boolean> enabledArg = this.withOptionalArg("enabled", "server.commands.play.enabled.desc", ArgTypes.BOOLEAN);

   class="kw">protected PlayCommandBase(@Nonnull String var1, @Nonnull String var2, @Nonnull SingleplayerModule var3, @Nonnull Access var4) {
      super(var1, var2);
      this.singleplayerModule = var3;
      this.commandAccess = var4;
   }

   @Override
   class="kw">public boolean hasPermission(@Nonnull CommandSender var1) {
      class="kw">return Constants.SINGLEPLAYER && SingleplayerModule.isOwner(var1.getUuid()) ? true : super.hasPermission(var1);
   }

   @Override
   class="kw">protected void executeSync(@Nonnull CommandContext var1) {
      if (Options.getOptionSet().valueOf(Options.AUTH_MODE) == Options.AuthMode.OFFLINE) {
         var1.sendMessage(Message.translation("server.commands.play.offlineMode"));
      } else if (!Constants.SINGLEPLAYER) {
         class="kw">switch (this.commandAccess) {
            case Private:
               var1.sendMessage(Message.translation("server.commands.play.singleplayerOnlyPrivate"));
               break;
            case LAN:
               var1.sendMessage(Message.translation("server.commands.play.singleplayerOnlyLan"));
               break;
            case Friend:
               var1.sendMessage(Message.translation("server.commands.play.singleplayerOnlyFriend"));
               break;
            case Open:
               var1.sendMessage(Message.translation("server.commands.play.singleplayerOnlyOpen"));
         }
      } else {
         Access var2 = SingleplayerModule.get().getAccess();
         if (!this.enabledArg.provided(var1)) {
            if (var2 == this.commandAccess) {
               this.singleplayerModule.requestServerAccess(Access.Private);
               class="kw">switch (this.commandAccess) {
                  case Private:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledPrivate"));
                     break;
                  case LAN:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledLan"));
                     break;
                  case Friend:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledFriend"));
                     break;
                  case Open:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledOpen"));
               }
            } else {
               this.singleplayerModule.requestServerAccess(this.commandAccess);
               class="kw">switch (this.commandAccess) {
                  case Private:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledPrivate"));
                     break;
                  case LAN:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledLan"));
                     break;
                  case Friend:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledFriend"));
                     break;
                  case Open:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledOpen"));
               }
            }
         } else {
            Boolean var3 = this.enabledArg.get(var1);
            if (!var3 && var2 == this.commandAccess) {
               this.singleplayerModule.requestServerAccess(Access.Private);
               class="kw">switch (this.commandAccess) {
                  case Private:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledPrivate"));
                     break;
                  case LAN:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledLan"));
                     break;
                  case Friend:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledFriend"));
                     break;
                  case Open:
                     var1.sendMessage(Message.translation("server.commands.play.accessDisabledOpen"));
               }
            } else if (var3 && var2 != this.commandAccess) {
               this.singleplayerModule.requestServerAccess(this.commandAccess);
               class="kw">switch (this.commandAccess) {
                  case Private:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledPrivate"));
                     break;
                  case LAN:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledLan"));
                     break;
                  case Friend:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledFriend"));
                     break;
                  case Open:
                     var1.sendMessage(Message.translation("server.commands.play.accessEnabledOpen"));
               }
            } else {
               class="kw">switch (this.commandAccess) {
                  case Private:
                     var1.sendMessage(Message.translation("server.commands.play.accessAlreadyToggledPrivate").param("enabled", var3.toString()));
                     break;
                  case LAN:
                     var1.sendMessage(Message.translation("server.commands.play.accessAlreadyToggledLan").param("enabled", var3.toString()));
                     break;
                  case Friend:
                     var1.sendMessage(Message.translation("server.commands.play.accessAlreadyToggledFriend").param("enabled", var3.toString()));
                     break;
                  case Open:
                     var1.sendMessage(Message.translation("server.commands.play.accessAlreadyToggledOpen").param("enabled", var3.toString()));
               }
            }
         }
      }
   }
}