From 9d62f37aa047b4d0a42d04845cad89f20a134c73 Mon Sep 17 00:00:00 2001 From: njs11009 Date: Wed, 9 Dec 2015 10:00:24 -0500 Subject: [PATCH] Prevent the player from showing up in the player list; handle incoming invisible connections. --- MegaMek/src/megamek/client/Client.java | 22 ------------------- .../megamek/client/ui/swing/MegaMekGUI.java | 11 +--------- .../client/ui/swing/PlayerListDialog.java | 4 ++++ MegaMek/src/megamek/server/Server.java | 3 +++ 4 files changed, 8 insertions(+), 32 deletions(-) diff --git a/MegaMek/src/megamek/client/Client.java b/MegaMek/src/megamek/client/Client.java index 21f701df..03d2d6e9 100644 --- a/MegaMek/src/megamek/client/Client.java +++ b/MegaMek/src/megamek/client/Client.java @@ -117,7 +117,6 @@ public class Client implements IClientCommandHandler { // we need these to communicate with the server private String name; - private boolean conAsInvis; private IConnection connection; @@ -250,27 +249,6 @@ public Client(String name, String host, int port) { rsg = new RandomSkillsGenerator(); } - - public Client(String name, String host, int port, boolean invisible) { - // construct new client - this.name = name; - this.host = host; - this.port = port; - this.conAsInvis = invisible; - - registerCommand(new HelpCommand(this)); - registerCommand(new MoveCommand(this)); - registerCommand(new RulerCommand(this)); - registerCommand(new ShowEntityCommand(this)); - registerCommand(new FireCommand(this)); - registerCommand(new DeployCommand(this)); - registerCommand(new ShowTileCommand(this)); - registerCommand(new AddBotCommand(this)); - registerCommand(new AssignNovaNetworkCommand(this)); - - rsg = new RandomSkillsGenerator(); - } - public int getLocalPlayerNumber() { return localPlayerNumber; diff --git a/MegaMek/src/megamek/client/ui/swing/MegaMekGUI.java b/MegaMek/src/megamek/client/ui/swing/MegaMekGUI.java index 5becd439..b03c8bcc 100644 --- a/MegaMek/src/megamek/client/ui/swing/MegaMekGUI.java +++ b/MegaMek/src/megamek/client/ui/swing/MegaMekGUI.java @@ -735,17 +735,8 @@ void connect() { Messages.getString("MegaMek.ConnectAlert.message"), Messages.getString("MegaMek.ConnectAlert.title"), JOptionPane.ERROR_MESSAGE); //$NON-NLS-1$ //$NON-NLS-2$ return; } - boolean conAsInvis = false; - if (cd.spectateValue.equalsIgnoreCase("Yes")) { - conAsInvis = true; - } // initialize game - if(!conAsInvis){ - client = new Client(cd.playerName, cd.serverAddr, cd.port); - } - else { - client = new Client(cd.playerName, cd.serverAddr, cd.port, true); - } + client = new Client(cd.playerName, cd.serverAddr, cd.port); ClientGUI gui = new ClientGUI(client,controller); controller.clientgui = gui; frame.setCursor(new Cursor(Cursor.WAIT_CURSOR)); diff --git a/MegaMek/src/megamek/client/ui/swing/PlayerListDialog.java b/MegaMek/src/megamek/client/ui/swing/PlayerListDialog.java index 150ca450..0d3d4895 100644 --- a/MegaMek/src/megamek/client/ui/swing/PlayerListDialog.java +++ b/MegaMek/src/megamek/client/ui/swing/PlayerListDialog.java @@ -140,6 +140,10 @@ public static void refreshPlayerList(JList playerList, } ((DefaultListModel) playerList.getModel()) .addElement(playerDisplay.toString()); + + if(player.isInvisible()) { + playerDisplay.delete(0, playerDisplay.length()-1); + } } } diff --git a/MegaMek/src/megamek/server/Server.java b/MegaMek/src/megamek/server/Server.java index a1ad105d..ba0b6e4c 100644 --- a/MegaMek/src/megamek/server/Server.java +++ b/MegaMek/src/megamek/server/Server.java @@ -879,9 +879,12 @@ private void receivePlayerVersion(Packet packet, int connId) { if (needs) { IPlayer player = getPlayer(connId); if (null != player) { + if(!player.isInvisible()) + { sendServerChat("For " + player.getName() + " Server reports:" + System.lineSeparator() + buf.toString()); + } } } else { System.out.println("SUCCESS: Client/Server Version ("+version+") and Checksum ("+clientChecksum+") matched");