package Commands; import Events.Tools; import Manager.BlockBreakManager; import Manager.ModModeManager; import Manager.SaveInventory; import Manager.VanishModeManager; import me.vipel.main.Main; import org.bukkit.GameMode; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.event.block.BlockBreakEvent; import java.io.IOException; public class ModMode implements CommandExecutor { Main plugin; public ModMode(Main plugin) { this.plugin = plugin; } SaveInventory sa = new SaveInventory(); @Override public boolean onCommand(CommandSender sender, Command command, String s, String[] args) { if(!(sender instanceof Player)){ sender.sendMessage("§cYou don't have access to Player commands!"); return true; }else{ Player p = (Player)sender; if(p.hasPermission("staffmodes.modmode")){ if(ModModeManager.getInstance().isInAdminMode(p) || ModModeManager.getInstance().isInOwnerMode(p)){ p.sendMessage("§cYou are in another mode!"); return true; } if(!(ModModeManager.getInstance().isInModMode(p))){ ModModeManager.getInstance().setModMode(p, true); VanishModeManager.getInstance().setModVanish(p, true); BlockBreakManager.getInstance().setBreakAccess(p, false); p.setHealth(20); p.setFoodLevel(20); p.setFireTicks(0); p.setGameMode(GameMode.CREATIVE); p.setAllowFlight(true); p.sendMessage("§bMod Mode §aenabled!"); try { this.sa.saveInventory(p); } catch (IOException e) { e.printStackTrace(); } Tools.getInstance().onVanishItem(p); Tools.getInstance().StaffInventory(p); p.updateInventory(); return true; }try{ ModModeManager.getInstance().setModMode(p, false); VanishModeManager.getInstance().setModVanish(p, false); BlockBreakManager.getInstance().setBreakAccess(p, true); p.setGameMode(GameMode.SURVIVAL); p.setAllowFlight(false); this.sa.loadInventory(p); p.sendMessage("§bMod Mode §cdisabled!"); return true; } catch (Exception e) { e.printStackTrace(); } }else{ p.sendMessage("§cYou do not have permissions for this command!"); return true; } } return true; } }