package consolecommands; import java.util.List; import com.aionemu.gameserver.model.gameobjects.player.Player; import com.aionemu.gameserver.network.aion.serverpackets.SM_SYSTEM_MESSAGE; import com.aionemu.gameserver.utils.ChatUtil; import com.aionemu.gameserver.utils.PacketSendUtility; import com.aionemu.gameserver.utils.chathandlers.ConsoleCommand; import com.aionemu.gameserver.world.World; /** * @author ginho1 */ public class Clearusercoolt extends ConsoleCommand { public Clearusercoolt() { super("clearusercoolt", "Clears cooldowns for instances."); } @Override public void execute(Player admin, String... params) { String playerName = ChatUtil.getRealCharName(params[0], true); Player player = World.getInstance().getPlayer(playerName); if (player == null) { PacketSendUtility.sendPacket(admin, SM_SYSTEM_MESSAGE.STR_NO_SUCH_USER(playerName)); return; } clearAllInstanceCooldowns(admin, player); } public static void clearAllInstanceCooldowns(Player admin, Player player) { if (player.getPortalCooldownList().getPortalCoolDowns() == null) { PacketSendUtility.sendMessage(admin, (player.equals(admin) ? "You have" : player.getName() + " has") + " no instance cooldowns to remove."); return; } List worldIds = player.getPortalCooldownList().getPortalCoolDowns().keySet().stream().toList(); player.getPortalCooldownList().setPortalCoolDowns(null); worldIds.forEach(player.getPortalCooldownList()::sendEntryInfo); if (player.equals(admin)) { PacketSendUtility.sendMessage(admin, "Your instance cooldowns were removed."); } else { PacketSendUtility.sendMessage(admin, "You have removed instance cooldowns of " + player.getName() + '.'); PacketSendUtility.sendMessage(player, admin.getName(true) + " removed your instance cooldowns."); } } }