diff --git a/core/assets/version.properties b/core/assets/version.properties
index a8e8ba5e19..330b7767c3 100644
--- a/core/assets/version.properties
+++ b/core/assets/version.properties
@@ -1,7 +1,7 @@
#Autogenerated file. Do not modify.
-#Mon Feb 26 22:08:54 EST 2018
+#Mon Feb 26 23:26:06 EST 2018
version=release
-androidBuildCode=306
+androidBuildCode=308
name=Mindustry
code=3.4
build=29
diff --git a/core/src/Mindustry.gwt.xml b/core/src/Mindustry.gwt.xml
index 5fdf4b2778..c964b6179d 100644
--- a/core/src/Mindustry.gwt.xml
+++ b/core/src/Mindustry.gwt.xml
@@ -15,4 +15,5 @@
+
\ No newline at end of file
diff --git a/core/src/io/anuke/mindustry/ui/dialogs/AdminsDialog.java b/core/src/io/anuke/mindustry/ui/dialogs/AdminsDialog.java
index 08d397c006..c23348a91a 100644
--- a/core/src/io/anuke/mindustry/ui/dialogs/AdminsDialog.java
+++ b/core/src/io/anuke/mindustry/ui/dialogs/AdminsDialog.java
@@ -23,6 +23,8 @@ public class AdminsDialog extends FloatingDialog {
private void setup(){
content().clear();
+ if(gwt) return;
+
float w = 400f, h = 80f;
Table table = new Table();
diff --git a/core/src/io/anuke/mindustry/ui/dialogs/BansDialog.java b/core/src/io/anuke/mindustry/ui/dialogs/BansDialog.java
index 8191d7d81c..eea695c28a 100644
--- a/core/src/io/anuke/mindustry/ui/dialogs/BansDialog.java
+++ b/core/src/io/anuke/mindustry/ui/dialogs/BansDialog.java
@@ -20,6 +20,8 @@ public class BansDialog extends FloatingDialog {
private void setup(){
content().clear();
+ if(gwt) return;
+
float w = 400f, h = 80f;
Table table = new Table();
diff --git a/core/src/io/anuke/mindustry/ui/fragments/PlayerListFragment.java b/core/src/io/anuke/mindustry/ui/fragments/PlayerListFragment.java
index 33efa45eec..19cb02e7c7 100644
--- a/core/src/io/anuke/mindustry/ui/fragments/PlayerListFragment.java
+++ b/core/src/io/anuke/mindustry/ui/fragments/PlayerListFragment.java
@@ -87,7 +87,7 @@ public class PlayerListFragment implements Fragment{
float h = 74f;
for(Player player : playerGroup.all()){
- NetConnection connection = Net.getConnection(player.clientid);
+ NetConnection connection = gwt ? null : Net.getConnection(player.clientid);
if(connection == null && Net.server() && !player.isLocal) continue;
@@ -162,7 +162,7 @@ public class PlayerListFragment implements Fragment{
});
}
}).update(b ->{
- b.setChecked(connection != null && netServer.admins.isAdmin(connection.address));
+ b.setChecked(player.isAdmin);
b.setDisabled(Net.client());
}).get().setTouchable(() -> Net.client() ? Touchable.disabled : Touchable.enabled);
diff --git a/kryonet/src/io/anuke/kryonet/KryoServer.java b/kryonet/src/io/anuke/kryonet/KryoServer.java
index 4b65ac1586..62332f841f 100644
--- a/kryonet/src/io/anuke/kryonet/KryoServer.java
+++ b/kryonet/src/io/anuke/kryonet/KryoServer.java
@@ -404,8 +404,6 @@ public class KryoServer implements ServerProvider {
}
-
-
class SocketServer extends WebSocketServer {
public SocketServer(int port) {
@@ -415,7 +413,7 @@ public class KryoServer implements ServerProvider {
@Override
public void onOpen(WebSocket conn, ClientHandshake handshake) {
Connect connect = new Connect();
- connect.addressTCP = conn.getRemoteSocketAddress().toString();
+ connect.addressTCP = conn.getRemoteSocketAddress().getAddress().getHostAddress();
KryoConnection kn = new KryoConnection(lastconnection ++, connect.addressTCP, conn);
Log.info("&bRecieved web connection: {0} {1}", kn.id, connect.addressTCP);