package admincommands; import org.apache.commons.lang3.ArrayUtils; import com.aionemu.gameserver.model.ChatType; import com.aionemu.gameserver.model.Race; import com.aionemu.gameserver.model.gameobjects.player.Player; import com.aionemu.gameserver.utils.ChatUtil; import com.aionemu.gameserver.utils.PacketSendUtility; import com.aionemu.gameserver.utils.chathandlers.AdminCommand; import com.aionemu.gameserver.world.World; /** * @author Neon */ public class Announce extends AdminCommand { public Announce() { super("announce", "Sends a server-wide notice."); setSyntaxInfo( " - Sends the message either with your ame or nonymously.", " - Sends an anonymous message to os or dian players." ); } @Override public void execute(Player admin, String... params) { if (params.length <= 1) { sendInfo(admin); return; } String flag = params[0].toLowerCase(); String[] flags = { "n", "a", "ely", "asmo" }; if (!ArrayUtils.contains(flags, flag)) { sendInfo(admin); return; } StringBuilder sb = new StringBuilder(); Race allowedRace = null; switch (flag) { case "n": sb.append(ChatUtil.name(admin) + ":"); break; case "a": sb.append("Announce:"); break; case "ely": sb.append("Elyos:"); allowedRace = Race.ELYOS; break; case "asmo": sb.append("Asmodians:"); allowedRace = Race.ASMODIANS; break; } for (int i = 1; i < params.length; i++) sb.append(" ").append(params[i]); for (Player player : World.getInstance().getAllPlayers()) if (allowedRace == null || player.getRace() == allowedRace || validateAccess(player)) PacketSendUtility.sendMessage(player, sb.toString(), ChatType.BRIGHT_YELLOW_CENTER); } }