/** * This file is part of aion-unique <aion-unique.org>. * * aion-unique is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * aion-unique is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with aion-unique. If not, see <http://www.gnu.org/licenses/>. */ package admincommands; import com.aionemu.gameserver.configs.administration.AdminConfig; import com.aionemu.gameserver.model.gameobjects.player.Player; import com.aionemu.gameserver.model.legion.Legion; import com.aionemu.gameserver.services.LegionService; import com.aionemu.gameserver.utils.PacketSendUtility; import com.aionemu.gameserver.utils.chathandlers.AdminCommand; import com.google.inject.Inject; /** * @author Simple */ public class LegionCommand extends AdminCommand { @Inject private LegionService legionService; /** * The constructor of Legion Command */ public LegionCommand() { super("legion"); } @Override public void executeCommand(Player admin, String[] params) { if(admin.getAccessLevel() < AdminConfig.COMMAND_LEGION) { PacketSendUtility.sendMessage(admin, "You dont have enough rights to execute this command"); return; } if(params.length < 2) { PacketSendUtility.sendMessage(admin, "syntax //legion <disband|setlevel|setpoints|setname> <legion name> <value>"); return; } Legion legion = legionService.getLegion(params[1].toLowerCase()); if(legion == null) { PacketSendUtility.sendMessage(admin, "The " + params[1].toLowerCase() + " legion does not exist."); return; } if(params[0].toLowerCase().equals("disband")) { legionService.disbandLegion(legion); PacketSendUtility.sendMessage(admin, "The following legion has been disbanded: " + legion.getLegionName()); } else if(params[0].toLowerCase().equals("setlevel")) { int newLevel = Integer.parseInt(params[2]); if(newLevel < 1 || newLevel > 5) { PacketSendUtility.sendMessage(admin, "Please use a valid legion level. (1 - 5)"); return; } else if(legion.getLegionLevel() == newLevel) { PacketSendUtility.sendMessage(admin, "Level of legion already is " + newLevel); return; } legionService.changeLevel(legion, newLevel, true); PacketSendUtility.sendMessage(admin, "The " + legion.getLegionName() + " legion has been leveled up to " + newLevel); } else if(params[0].toLowerCase().equals("setpoints")) { int newPoints = Integer.parseInt(params[2]); if(newPoints <= 0 || newPoints > 2000000000) { PacketSendUtility.sendMessage(admin, "Please use valid points amount. (0 - 2.000.000.000)"); return; } else if(legion.getContributionPoints() == newPoints) { PacketSendUtility.sendMessage(admin, "Contribution Points of legion already is " + newPoints); return; } legionService.setContributionPoints(legion, newPoints, true); PacketSendUtility.sendMessage(admin, "The " + legion.getLegionName() + " legion points have been changed to " + newPoints); } else if(params[0].toLowerCase().equals("setname")) { String newLegionName = params[2]; if(!legionService.isValidName(newLegionName)) { PacketSendUtility.sendMessage(admin, "Please use a valid legion name!"); return; } else if(legion.getLegionName().toLowerCase() == newLegionName.toLowerCase()) { PacketSendUtility.sendMessage(admin, "Name of legion already is " + newLegionName); return; } legionService.setLegionName(legion, newLegionName, true); PacketSendUtility.sendMessage(admin, "The " + legion.getLegionName() + " legion's name has been changed to " + newLegionName); } } }