package com.maceswinger.server.GUI.commands; import java.awt.Color; import com.maceswinger.server.GUI.MainFrame; import com.moomoohk.MooCommands.Command; public class StartCommand extends Command { @Override public String getCommand() { return "/start"; } @Override public String getHelpMessage() { return "Starts the server (if it's not already running). Default port is 2650"; } @Override public String getUsage() { return "/start [port]"; } @Override public int getMaxParams() { return 1; } @Override public int getMinParams() { return 0; } @Override protected void execute(String[] params) { final int port = params.length == 0 ? 2650 : Integer.parseInt(params[0]); this.outputMessage = ("Starting server on port " + port + "..."); new Thread(new Runnable() { public void run() { MainFrame.frame.server.run(port); } }, "Server thread").start(); } protected boolean check(String[] params) { if (MainFrame.frame.server.isRunning()) { this.outputColor = Color.red; this.outputMessage = "Server is already running!"; return false; } if (params.length > 0 && (Integer.parseInt(params[0]) > 883951 || Integer.parseInt(params[0]) < 0)) { this.outputColor = Color.red; this.outputMessage = "Port " + params[0] + " is out of range! (Must be between 0 and 883951)"; return false; } return super.check(params); } }