package admincommands; import org.apache.commons.lang3.math.NumberUtils; import com.aionemu.gameserver.dataholders.DataManager; import com.aionemu.gameserver.model.gameobjects.VisibleObject; import com.aionemu.gameserver.model.gameobjects.player.Player; import com.aionemu.gameserver.model.templates.TitleTemplate; import com.aionemu.gameserver.network.aion.serverpackets.SM_SYSTEM_MESSAGE; import com.aionemu.gameserver.utils.PacketSendUtility; import com.aionemu.gameserver.utils.Util; import com.aionemu.gameserver.utils.chathandlers.AdminCommand; import com.aionemu.gameserver.world.World; /** * @author xavier */ public class AddTitle extends AdminCommand { public AddTitle() { super("addtitle", "Adds titles to players."); setSyntaxInfo(" [playerName] - Adds the title to your target or the specified player."); } @Override public void execute(Player player, String... params) { if (params.length < 1 || params.length > 2) { sendInfo(player); return; } TitleTemplate titleTemplate = DataManager.TITLE_DATA.getTitleTemplate(NumberUtils.toInt(params[0])); if (titleTemplate == null) { sendInfo(player, "Invalid title id."); return; } Player target = null; if (params.length == 2) { String playerName = Util.convertName(params[1]); target = World.getInstance().getPlayer(playerName); if (target == null) { PacketSendUtility.sendPacket(player, SM_SYSTEM_MESSAGE.STR_NO_SUCH_USER(playerName)); return; } } else { VisibleObject creature = player.getTarget(); if (player.getTarget() instanceof Player) { target = (Player) creature; } if (target == null) { target = player; } } if (!target.getTitleList().addTitle(titleTemplate.getTitleId(), false, 0)) { if (!target.equals(player)) sendInfo(player, "Couldn't add title \"" + titleTemplate.getL10n() + "\" to " + target); } else { if (!target.equals(player)) { sendInfo(player, "Added title \"" + titleTemplate.getL10n() + "\" to " + target); sendInfo(target, player.getName(true) + " gave you the title \"" + titleTemplate.getL10n() + "\""); } } } }