LeaveCommand class

Пакет: com.hypixel.hytale.builtin.portals.commands.player

Файл: com/hypixel/hytale/builtin/portals/commands/player/LeaveCommand.java

extends: AbstractPlayerCommand

Поля (4)

МодификаторыТипИмя
Player var6
PortalWorld var7
CombinedItemContainer var8
boolean var9

Методы (3)

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

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.instances.InstancesPlugin;
class="kw">import com.hypixel.hytale.builtin.portals.resources.PortalWorld;
class="kw">import com.hypixel.hytale.builtin.portals.utils.CursedItems;
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.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.inventory.InventoryComponent;
class="kw">import com.hypixel.hytale.server.core.inventory.container.CombinedItemContainer;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;

class="kw">public class LeaveCommand class="kw">extends AbstractPlayerCommand {
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_LEAVE_NOT_IN_PORTAL = Message.translation("server.commands.leave.notInPortal");
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_LEAVE_UNCURSED_TEMP = Message.translation("server.commands.leave.uncursedTemp").color("#d955ef");

   class="kw">public LeaveCommand() {
      super("leave", "server.commands.leave.desc");
   }

   @Override
   class="kw">protected void execute(
      @Nonnull CommandContext var1, @Nonnull Store<EntityStore> var2, @Nonnull Ref<EntityStore> var3, @Nonnull PlayerRef var4, @Nonnull World var5
   ) {
      Player var6 = var2.getComponent(var3, Player.getComponentType());
      if (var6 != null) {
         PortalWorld var7 = var2.getResource(PortalWorld.getResourceType());
         if (!var7.exists()) {
            var4.sendMessage(MESSAGE_COMMANDS_LEAVE_NOT_IN_PORTAL);
         } else {
            CombinedItemContainer var8 = InventoryComponent.getCombined(var2, var3, InventoryComponent.EVERYTHING);
            boolean var9 = CursedItems.uncurseAll(var8);
            if (var9) {
               var4.sendMessage(MESSAGE_COMMANDS_LEAVE_UNCURSED_TEMP);
            }

            InstancesPlugin.exitInstance(var3, var2);
         }
      }
   }
}