From 20eea3b3856684879d48c23b839bf5d17936305f Mon Sep 17 00:00:00 2001 From: Anuken Date: Mon, 1 Jan 2018 16:09:17 -0500 Subject: [PATCH] Switched to different Kryonet fork; full Android support --- .../io/anuke/mindustry/AndroidLauncher.java | 3 + build.gradle | 2 +- .../assets-raw/sprites/ui/icons/icon-host.png | Bin 0 -> 193 bytes core/assets/bundles/bundle.properties | 3 +- core/assets/sprites/sprites.atlas | 455 +++++++++--------- core/assets/sprites/sprites.png | Bin 80835 -> 81725 bytes core/src/io/anuke/mindustry/Vars.java | 1 + core/src/io/anuke/mindustry/core/Control.java | 5 + .../io/anuke/mindustry/core/NetClient.java | 31 +- .../io/anuke/mindustry/core/NetServer.java | 54 ++- .../src/io/anuke/mindustry/core/Renderer.java | 6 +- core/src/io/anuke/mindustry/core/UI.java | 21 +- .../io/anuke/mindustry/entities/Player.java | 31 +- .../anuke/mindustry/input/GestureHandler.java | 2 +- core/src/io/anuke/mindustry/io/NetworkIO.java | 13 +- core/src/io/anuke/mindustry/io/Saves.java | 6 +- core/src/io/anuke/mindustry/net/Net.java | 2 + core/src/io/anuke/mindustry/net/Packets.java | 16 +- .../io/anuke/mindustry/net/Registrator.java | 2 + core/src/io/anuke/mindustry/net/Syncable.java | 5 +- .../src/io/anuke/mindustry/ui/MenuDialog.java | 27 +- .../mindustry/ui/fragments/HudFragment.java | 8 + .../mindustry/ui/fragments/MenuFragment.java | 2 +- .../blocks/types/distribution/Conveyor.java | 24 +- kryonet/build/libs/kryonet-release.jar | Bin 0 -> 7637 bytes kryonet/build/tmp/jar/MANIFEST.MF | 2 + kryonet/src/io/anuke/kryonet/KryoServer.java | 5 + 27 files changed, 416 insertions(+), 310 deletions(-) create mode 100644 core/assets-raw/sprites/ui/icons/icon-host.png create mode 100644 kryonet/build/libs/kryonet-release.jar create mode 100644 kryonet/build/tmp/jar/MANIFEST.MF diff --git a/android/src/io/anuke/mindustry/AndroidLauncher.java b/android/src/io/anuke/mindustry/AndroidLauncher.java index ebd5f40d5f..660caabb4e 100644 --- a/android/src/io/anuke/mindustry/AndroidLauncher.java +++ b/android/src/io/anuke/mindustry/AndroidLauncher.java @@ -7,6 +7,7 @@ import android.os.Bundle; import android.telephony.TelephonyManager; import com.badlogic.gdx.backends.android.AndroidApplication; import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration; +import com.esotericsoftware.minlog.Log; import io.anuke.kryonet.KryoClient; import io.anuke.kryonet.KryoServer; import io.anuke.mindustry.io.PlatformFunction; @@ -64,6 +65,8 @@ public class AndroidLauncher extends AndroidApplication{ config.hideStatusBar = true; + Log.set(Log.LEVEL_DEBUG); + Net.setClientProvider(new KryoClient()); Net.setServerProvider(new KryoServer()); diff --git a/build.gradle b/build.gradle index e737d3b7cf..52d19a7b29 100644 --- a/build.gradle +++ b/build.gradle @@ -114,7 +114,7 @@ project(":kryonet") { dependencies { compile project(":core") - compile "com.esotericsoftware:kryonet:2.22.0-RC1" + compile 'com.github.crykn:kryonet:2.22.1' } } diff --git a/core/assets-raw/sprites/ui/icons/icon-host.png b/core/assets-raw/sprites/ui/icons/icon-host.png new file mode 100644 index 0000000000000000000000000000000000000000..82d5d2d1530a21f310f67abe1e93c4ac8e5cd363 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0y~yVBiB`4mJh`26+$Niwq15Y)RhkE)4%caKYZ?lNlHo zI14-?iy0WWg+Z8+Vb&Z81_lQ95>H=O_D772LR!Xm=eFEoU|{g`ba4#PIDd7bCl`YP z53})w|MffPtqQoK|7gw>w#zP84&Hq&`NGph>>b02LoVqFH*NFhKKq)-JW;IQWcuAX rfnie~w?DNxks-WYQ~vK`Q&y$F(kje+d;J+07#KWV{an^LB{Ts5*cv}K literal 0 HcmV?d00001 diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 291bf3401e..229b0e804c 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -13,8 +13,9 @@ text.loadgame=Load Game text.joingame=Join Game text.quit=Quit text.server.connected=A player has joined. -text.server.disconnected=A player has disconnected. +text.server.disconnected={0} has disconnected. text.hostserver=Host Server +text.host=Host text.joingame.title=Join Game text.joingame.ip=IP: text.disconnect=Disconnected. diff --git a/core/assets/sprites/sprites.atlas b/core/assets/sprites/sprites.atlas index f1f4d17a0e..8d8c150fcc 100644 --- a/core/assets/sprites/sprites.atlas +++ b/core/assets/sprites/sprites.atlas @@ -27,49 +27,49 @@ blocks/blackrock1 index: -1 blocks/blackrockshadow1 rotate: false - xy: 315, 91 + xy: 482, 95 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/blackstone1 rotate: false - xy: 315, 81 + xy: 988, 485 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/blackstone2 rotate: false - xy: 325, 91 + xy: 998, 485 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/blackstone3 rotate: false - xy: 325, 81 + xy: 1008, 485 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/blackstoneblock1 rotate: false - xy: 335, 91 + xy: 841, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/blackstoneblock2 rotate: false - xy: 335, 81 + xy: 841, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/blackstoneblock3 rotate: false - xy: 345, 91 + xy: 851, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -83,7 +83,7 @@ blocks/blackstoneedge index: -1 blocks/block rotate: false - xy: 355, 91 + xy: 861, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -111,119 +111,119 @@ blocks/chainturret index: -1 blocks/chainturret-icon rotate: false - xy: 123, 79 + xy: 109, 35 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/coal1 rotate: false - xy: 193, 63 + xy: 871, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/coal2 rotate: false - xy: 203, 63 + xy: 871, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/coal3 rotate: false - xy: 213, 63 + xy: 881, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/coaldrill rotate: false - xy: 223, 63 + xy: 881, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/coalgenerator rotate: false - xy: 233, 63 + xy: 891, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/coalgenerator-top rotate: false - xy: 243, 63 + xy: 891, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/coalpurifier rotate: false - xy: 253, 63 + xy: 901, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/combustiongenerator rotate: false - xy: 263, 63 + xy: 901, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/compositewall rotate: false - xy: 273, 63 + xy: 911, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conduit rotate: false - xy: 283, 63 + xy: 911, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conduitbottom rotate: false - xy: 293, 63 + xy: 921, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conduitliquid rotate: false - xy: 303, 67 + xy: 921, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conduittop rotate: false - xy: 531, 136 + xy: 931, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conveyor rotate: false - xy: 527, 126 + xy: 931, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conveyormove rotate: false - xy: 365, 95 + xy: 941, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/conveyortunnel rotate: false - xy: 365, 85 + xy: 941, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -237,42 +237,42 @@ blocks/core index: -1 blocks/cross rotate: false - xy: 375, 95 + xy: 951, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/crucible rotate: false - xy: 375, 85 + xy: 951, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/deepwater rotate: false - xy: 385, 95 + xy: 961, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/dirt1 rotate: false - xy: 385, 85 + xy: 961, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/dirt2 rotate: false - xy: 395, 95 + xy: 971, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/dirt3 rotate: false - xy: 395, 85 + xy: 971, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -286,7 +286,7 @@ blocks/dirtedge index: -1 blocks/door rotate: false - xy: 405, 95 + xy: 851, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -300,7 +300,7 @@ blocks/door-large index: -1 blocks/door-large-icon rotate: false - xy: 405, 85 + xy: 861, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -314,21 +314,21 @@ blocks/door-large-open index: -1 blocks/door-open rotate: false - xy: 415, 95 + xy: 871, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/doubleturret rotate: false - xy: 123, 67 + xy: 95, 7 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/duriumwall rotate: false - xy: 415, 85 + xy: 881, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -342,266 +342,266 @@ blocks/duriumwall-large index: -1 blocks/duriumwall-large-icon rotate: false - xy: 425, 95 + xy: 891, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/enemyspawn rotate: false - xy: 425, 85 + xy: 901, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/flameturret rotate: false - xy: 135, 79 + xy: 536, 181 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/fluxpump rotate: false - xy: 435, 85 + xy: 921, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/grass1 rotate: false - xy: 445, 95 + xy: 931, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/grass2 rotate: false - xy: 445, 85 + xy: 941, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/grass3 rotate: false - xy: 455, 95 + xy: 951, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/grassblock1 rotate: false - xy: 455, 85 + xy: 961, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/grassblock2 rotate: false - xy: 465, 95 + xy: 971, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/grassedge rotate: false - xy: 136, 91 + xy: 152, 91 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/ice1 rotate: false - xy: 465, 85 + xy: 981, 473 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/ice2 rotate: false - xy: 475, 95 + xy: 981, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/ice3 rotate: false - xy: 475, 85 + xy: 981, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/iceedge rotate: false - xy: 150, 91 + xy: 166, 91 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/icerock1 rotate: false - xy: 524, 107 + xy: 991, 475 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/icerock2 rotate: false - xy: 786, 393 + xy: 991, 465 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/icerockshadow1 rotate: false - xy: 796, 393 + xy: 1001, 475 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/rockshadow1 rotate: false - xy: 796, 393 + xy: 1001, 475 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/icerockshadow2 rotate: false - xy: 844, 485 + xy: 991, 455 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/rockshadow2 rotate: false - xy: 844, 485 + xy: 991, 455 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/iron1 rotate: false - xy: 924, 485 + xy: 512, 82 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/iron2 rotate: false - xy: 934, 485 + xy: 522, 82 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/iron3 rotate: false - xy: 944, 485 + xy: 801, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/irondrill rotate: false - xy: 954, 485 + xy: 811, 445 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/ironwall rotate: false - xy: 964, 485 + xy: 821, 445 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/junction rotate: false - xy: 974, 485 + xy: 831, 445 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/laserturret rotate: false - xy: 243, 85 + xy: 844, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/lava rotate: false - xy: 984, 485 + xy: 841, 444 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/lavaedge rotate: false - xy: 164, 91 + xy: 95, 75 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/lavasmelter rotate: false - xy: 994, 485 + xy: 851, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/liquiditemjunction rotate: false - xy: 1004, 485 + xy: 861, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/liquidjunction rotate: false - xy: 1014, 485 + xy: 871, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/liquidrouter rotate: false - xy: 841, 475 + xy: 881, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/machineturret rotate: false - xy: 243, 73 + xy: 856, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/megarepairturret rotate: false - xy: 255, 85 + xy: 868, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/mortarturret rotate: false - xy: 255, 73 + xy: 880, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/mossblock rotate: false - xy: 851, 475 + xy: 901, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/mossstone rotate: false - xy: 851, 475 + xy: 901, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -622,7 +622,7 @@ blocks/nuclearreactor-center index: -1 blocks/nuclearreactor-icon rotate: false - xy: 851, 465 + xy: 921, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -643,196 +643,196 @@ blocks/nuclearreactor-small index: -1 blocks/oil rotate: false - xy: 861, 475 + xy: 931, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/oiledge rotate: false - xy: 95, 61 + xy: 109, 75 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/oilrefinery rotate: false - xy: 851, 455 + xy: 941, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/omnidrill rotate: false - xy: 861, 465 + xy: 951, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/plasmaturret rotate: false - xy: 267, 85 + xy: 892, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/playerspawn rotate: false - xy: 871, 475 + xy: 961, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/powerbooster rotate: false - xy: 861, 455 + xy: 971, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/poweredconveyor rotate: false - xy: 871, 465 + xy: 981, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/poweredconveyormove rotate: false - xy: 881, 475 + xy: 991, 445 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/powerlaser rotate: false - xy: 871, 455 + xy: 1001, 445 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/powerlasercorner rotate: false - xy: 881, 465 + xy: 1011, 445 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/powerlaserrouter rotate: false - xy: 891, 475 + xy: 109, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/pulseconduit rotate: false - xy: 881, 455 + xy: 736, 381 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/pulseconduitbottom rotate: false - xy: 891, 465 + xy: 740, 371 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/pulseconduittop rotate: false - xy: 901, 475 + xy: 740, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/pump rotate: false - xy: 891, 455 + xy: 740, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/repairturret rotate: false - xy: 267, 73 + xy: 904, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/rock1 rotate: false - xy: 911, 475 + xy: 740, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/rock2 rotate: false - xy: 901, 455 + xy: 740, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/router rotate: false - xy: 911, 465 + xy: 798, 393 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/rtgenerator rotate: false - xy: 921, 475 + xy: 180, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/rtgenerator-top rotate: false - xy: 911, 455 + xy: 190, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sand1 rotate: false - xy: 921, 465 + xy: 200, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sand2 rotate: false - xy: 931, 475 + xy: 210, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sand3 rotate: false - xy: 921, 455 + xy: 220, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sandblock1 rotate: false - xy: 931, 465 + xy: 230, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sandblock2 rotate: false - xy: 941, 475 + xy: 240, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sandblock3 rotate: false - xy: 931, 455 + xy: 250, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -846,126 +846,126 @@ blocks/sandedge index: -1 blocks/shadow rotate: false - xy: 279, 85 + xy: 916, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/shieldgenerator rotate: false - xy: 951, 475 + xy: 270, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/shotgunturret rotate: false - xy: 279, 73 + xy: 928, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/shrub rotate: false - xy: 961, 475 + xy: 527, 126 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/shrubshadow rotate: false - xy: 951, 455 + xy: 527, 116 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/smelter rotate: false - xy: 961, 465 + xy: 524, 106 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/sniperturret rotate: false - xy: 291, 85 + xy: 940, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/snow1 rotate: false - xy: 971, 475 + xy: 362, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/snow2 rotate: false - xy: 961, 455 + xy: 372, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/snow3 rotate: false - xy: 971, 465 + xy: 382, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/snowblock1 rotate: false - xy: 981, 475 + xy: 392, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/snowblock2 rotate: false - xy: 971, 455 + xy: 402, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/snowblock3 rotate: false - xy: 981, 465 + xy: 412, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/snowedge rotate: false - xy: 95, 19 + xy: 95, 33 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/sorter rotate: false - xy: 991, 475 + xy: 422, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/steelconveyor rotate: false - xy: 981, 455 + xy: 432, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/steelconveyormove rotate: false - xy: 991, 465 + xy: 442, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/steelwall rotate: false - xy: 1001, 475 + xy: 452, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -979,98 +979,98 @@ blocks/steelwall-large index: -1 blocks/steelwall-large-icon rotate: false - xy: 991, 455 + xy: 462, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stone1 rotate: false - xy: 1001, 465 + xy: 472, 83 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stone2 rotate: false - xy: 1011, 475 + xy: 482, 76 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stone3 rotate: false - xy: 1001, 455 + xy: 492, 72 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stoneblock1 rotate: false - xy: 1011, 465 + xy: 502, 72 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stoneblock2 rotate: false - xy: 1011, 455 + xy: 512, 72 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stoneblock3 rotate: false - xy: 533, 178 + xy: 522, 72 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stonedrill rotate: false - xy: 537, 168 + xy: 107, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stoneedge rotate: false - xy: 109, 77 + xy: 109, 47 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/stoneformer rotate: false - xy: 537, 158 + xy: 746, 381 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/stonewall rotate: false - xy: 537, 148 + xy: 750, 371 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/teleporter rotate: false - xy: 801, 443 + xy: 750, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/teleporter-top rotate: false - xy: 811, 445 + xy: 750, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/thermalgenerator rotate: false - xy: 821, 445 + xy: 750, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1084,56 +1084,56 @@ blocks/titancannon index: -1 blocks/titancannon-icon rotate: false - xy: 291, 73 + xy: 952, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/titanium1 rotate: false - xy: 831, 445 + xy: 750, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/titanium2 rotate: false - xy: 841, 445 + xy: 750, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/titanium3 rotate: false - xy: 851, 445 + xy: 740, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/titaniumdrill rotate: false - xy: 861, 445 + xy: 750, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/titaniumpurifier rotate: false - xy: 871, 445 + xy: 734, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/titaniumshieldwall rotate: false - xy: 881, 445 + xy: 744, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/titaniumwall rotate: false - xy: 891, 445 + xy: 754, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1147,77 +1147,77 @@ blocks/titaniumwall-large index: -1 blocks/titaniumwall-large-icon rotate: false - xy: 901, 445 + xy: 528, 96 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/turret rotate: false - xy: 303, 89 + xy: 964, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 blocks/uranium1 rotate: false - xy: 931, 445 + xy: 532, 86 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/uranium2 rotate: false - xy: 941, 445 + xy: 532, 76 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/uranium3 rotate: false - xy: 951, 445 + xy: 542, 86 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/uraniumdrill rotate: false - xy: 961, 445 + xy: 542, 76 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/water rotate: false - xy: 971, 445 + xy: 756, 381 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blocks/wateredge rotate: false - xy: 109, 63 + xy: 95, 19 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 blocks/waveturret rotate: false - xy: 303, 77 + xy: 976, 483 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 bullet rotate: false - xy: 355, 81 + xy: 861, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 chainbullet rotate: false - xy: 183, 64 + xy: 841, 454 size: 8, 7 orig: 8, 7 offset: 0, 0 @@ -1294,14 +1294,14 @@ enemies/targetenemy-t1 index: -1 enemies/enemy-t2 rotate: false - xy: 108, 91 + xy: 124, 91 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 enemies/enemy-t3 rotate: false - xy: 122, 91 + xy: 138, 91 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -1392,63 +1392,63 @@ enemies/healerenemy-t3 index: -1 enemies/mortarenemy-t1 rotate: false - xy: 738, 412 + xy: 738, 396 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/mortarenemy-t2 rotate: false - xy: 738, 396 + xy: 754, 414 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/mortarenemy-t3 rotate: false - xy: 754, 414 + xy: 754, 398 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/rapidenemy-t1 rotate: false - xy: 754, 398 + xy: 770, 414 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/rapidenemy-t2 rotate: false - xy: 770, 414 + xy: 770, 398 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/rapidenemy-t3 rotate: false - xy: 770, 398 + xy: 786, 419 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/tankenemy-t1 rotate: false - xy: 786, 419 + xy: 786, 403 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/tankenemy-t2 rotate: false - xy: 786, 403 + xy: 92, 89 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 enemies/tankenemy-t3 rotate: false - xy: 92, 89 + xy: 108, 89 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -1476,63 +1476,63 @@ enemies/titanenemy-t3 index: -1 enemyarrow rotate: false - xy: 527, 117 + xy: 482, 86 size: 8, 7 orig: 8, 7 offset: 0, 0 index: -1 icon-coal rotate: false - xy: 854, 485 + xy: 1001, 465 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-dirium rotate: false - xy: 864, 485 + xy: 1001, 455 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-iron rotate: false - xy: 874, 485 + xy: 1011, 475 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-steel rotate: false - xy: 884, 485 + xy: 1011, 465 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-stone rotate: false - xy: 894, 485 + xy: 1011, 455 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-titanium rotate: false - xy: 904, 485 + xy: 492, 82 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-uranium rotate: false - xy: 914, 485 + xy: 502, 82 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 laser rotate: false - xy: 178, 91 + xy: 533, 178 size: 1, 12 orig: 1, 12 offset: 0, 0 @@ -1553,42 +1553,42 @@ laserfull index: -1 mechs/mech-standard rotate: false - xy: 95, 75 + xy: 95, 61 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 mechs/ship-standard rotate: false - xy: 95, 33 + xy: 109, 61 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 shell rotate: false - xy: 941, 465 + xy: 260, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shot rotate: false - xy: 941, 455 + xy: 280, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shot-long rotate: false - xy: 951, 465 + xy: 290, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanshell rotate: false - xy: 911, 445 + xy: 534, 106 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1687,14 +1687,14 @@ ui/check-over index: -1 ui/clear rotate: false - xy: 109, 51 + xy: 109, 23 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/cursor rotate: false - xy: 69, 3 + xy: 734, 311 size: 4, 4 orig: 4, 4 offset: 0, 0 @@ -1715,7 +1715,7 @@ ui/icons/icon-add index: -1 ui/icons/icon-areaDelete rotate: false - xy: 109, 39 + xy: 537, 169 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1729,28 +1729,28 @@ ui/icons/icon-arrow index: -1 ui/icons/icon-arrow-down rotate: false - xy: 135, 67 + xy: 537, 157 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-arrow-left rotate: false - xy: 147, 79 + xy: 537, 145 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-arrow-right rotate: false - xy: 109, 27 + xy: 786, 391 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-arrow-up rotate: false - xy: 147, 67 + xy: 302, 89 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1799,21 +1799,21 @@ ui/icons/icon-close-over index: -1 ui/icons/icon-crafting rotate: false - xy: 159, 79 + xy: 314, 89 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-cursor rotate: false - xy: 159, 67 + xy: 326, 89 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-defense rotate: false - xy: 95, 7 + xy: 338, 89 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1827,7 +1827,7 @@ ui/icons/icon-discord index: -1 ui/icons/icon-distribution rotate: false - xy: 109, 15 + xy: 350, 89 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1897,14 +1897,14 @@ ui/icons/icon-grid index: -1 ui/icons/icon-hold rotate: false - xy: 171, 79 + xy: 362, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-holdDelete rotate: false - xy: 171, 67 + xy: 374, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1916,9 +1916,16 @@ ui/icons/icon-home orig: 14, 14 offset: 0, 0 index: -1 +ui/icons/icon-host + rotate: false + xy: 631, 204 + size: 14, 14 + orig: 14, 14 + offset: 0, 0 + index: -1 ui/icons/icon-info rotate: false - xy: 107, 3 + xy: 386, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1932,7 +1939,7 @@ ui/icons/icon-line index: -1 ui/icons/icon-load rotate: false - xy: 631, 204 + xy: 647, 227 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -1960,21 +1967,21 @@ ui/icons/icon-loading index: -1 ui/icons/icon-menu rotate: false - xy: 183, 85 + xy: 398, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-none rotate: false - xy: 183, 73 + xy: 410, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-pause rotate: false - xy: 195, 85 + xy: 422, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1995,35 +2002,35 @@ ui/icons/icon-pick index: -1 ui/icons/icon-play rotate: false - xy: 195, 73 + xy: 434, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-play-2 rotate: false - xy: 647, 227 + xy: 647, 211 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-power rotate: false - xy: 207, 85 + xy: 446, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-production rotate: false - xy: 207, 73 + xy: 458, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-quit rotate: false - xy: 647, 211 + xy: 647, 195 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2037,7 +2044,7 @@ ui/icons/icon-redo index: -1 ui/icons/icon-rename rotate: false - xy: 647, 195 + xy: 631, 188 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2051,35 +2058,35 @@ ui/icons/icon-resize index: -1 ui/icons/icon-rotate rotate: false - xy: 631, 188 + xy: 647, 179 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-rotate-arrow rotate: false - xy: 647, 179 + xy: 722, 411 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-rotate-left rotate: false - xy: 722, 411 + xy: 722, 395 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-rotate-right rotate: false - xy: 722, 395 + xy: 724, 365 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-save rotate: false - xy: 724, 365 + xy: 724, 349 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2100,7 +2107,7 @@ ui/icons/icon-save-map index: -1 ui/icons/icon-settings rotate: false - xy: 219, 85 + xy: 470, 93 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2114,35 +2121,35 @@ ui/icons/icon-terrain index: -1 ui/icons/icon-tools rotate: false - xy: 724, 349 + xy: 724, 333 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-touch rotate: false - xy: 219, 73 + xy: 492, 92 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-touchDelete rotate: false - xy: 231, 85 + xy: 504, 92 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 ui/icons/icon-trash rotate: false - xy: 724, 333 + xy: 724, 317 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 ui/icons/icon-tutorial rotate: false - xy: 724, 317 + xy: 738, 412 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2156,7 +2163,7 @@ ui/icons/icon-undo index: -1 ui/icons/icon-weapon rotate: false - xy: 231, 73 + xy: 516, 92 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -2234,7 +2241,7 @@ ui/scroll-knob-vertical-black index: -1 ui/selection rotate: false - xy: 524, 117 + xy: 592, 284 size: 1, 1 orig: 1, 1 offset: 0, 0 @@ -2313,7 +2320,7 @@ ui/textfield-over index: -1 ui/white rotate: false - xy: 535, 188 + xy: 738, 391 size: 3, 3 orig: 3, 3 offset: 0, 0 @@ -2336,42 +2343,42 @@ ui/window-empty index: -1 weapons/blaster rotate: false - xy: 345, 81 + xy: 851, 463 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weapons/flamer rotate: false - xy: 435, 95 + xy: 911, 453 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weapons/mortar rotate: false - xy: 841, 465 + xy: 891, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weapons/multigun rotate: false - xy: 841, 455 + xy: 911, 443 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weapons/railgun rotate: false - xy: 901, 465 + xy: 740, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weapons/triblaster rotate: false - xy: 921, 445 + xy: 538, 96 size: 8, 8 orig: 8, 8 offset: 0, 0 diff --git a/core/assets/sprites/sprites.png b/core/assets/sprites/sprites.png index 62f0be40b92f41d04403af42e891a55b1fd0a084..c0118c8038984b37824f50caf93b9834f8faab0c 100644 GIT binary patch literal 81725 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

mIm!TyWdXz81Nu2 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�^ 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

au4jD}$%`)(^px*1ej%mCIok!-CaJ7Zep4B7ckM zGW_uCdmeOmfuz{qJDmTwFfr&ZZa*+xBvd-ry}XL=cG=}0yS}v?$Ue4xrL$b@#=9Ic z6DmT?CqB5`vwYdNMXwGVf4`?vtWG$FqatI*soy1s{yurs^`5(#jdzuEhWUS`y7-*` z`%C`UH*lNr3pa1$eJ>#-Zt%Iped0eqrGHwC4T3jKLPRoNOfNi>P@B7LtEB&SS#gG( zb-j5qS`0c-TUID0+i!nUd}+PrWB22$gc(C-{>!XrT*aa&$lx;3lVRtK-~u6s;Q3w0 zYWH=hG}vwaYaY$;!M05G{7w@N29rLywJ&#-#g^61dm4WovYzl&hxprf@g+YR&s)8- za{{eZO4%!y5c%5b+S~(QCe7P^C2FS8o9U|UF0+2uD1EZn@t}R)?05Hd+gZ@{U0}(DLGtw9ej=F_rjxWvtQ?HGt8LuA+fa~jf-K|@9^^aU3K=Z zck8#^ub+3LZn{B(%H;Z~FUrfyuQR$fm=s?4_G?F8Ka=tQ+KZhGf4*OS`d^Th!9iVk zw+5TbrT4)M8&r1&GJGh{4Ke)PFjYI8t9NPqw!+u;;tUKo`ujE}9p!qvzUrRpI)ygrNo%>@5tNR76wLLuF=fC^0 zIqFL;N4?nf|ANYH8mrcNg{)%zJ_y2)h47=T2o2L8n2)y}1laiMh4ROK*l6!-WY9|15nO9w;#|6fv#% z#9Z)+zasOt&c{FNQWrhaPmG`Uwo8biX2-?d|L(Q@xSJQ1;WC$D!R7<6Zvrc~Ng@>mt&+XiCVU5a!wR$o;+CbtfUYE~g zZP=vt^YdKx16zIKr-3&jGKezFn(1=+>37$sj1!*z7c|IuubTAY-NlIyc6Kr@y2@Fv z@;8tngIzG;8^0`~U5UcbNn zmY{<;Q$Wc{-|6?or?NX-`|mEm(Drt>iIC0zCI{n|MxWzi`_F4IY}u^d;3wdb?JeEy zG+E=q4L4Q>(G5-vPFLAm8G0TrS7P|+_CTp2rvGojZmA=|>i!)~9wjcb6+wHyJ3veD zz&k877`Dt{2x#5$Vw(oT7SDGL9zPZ{2&j7to#(8-mb-b;FT0>9Mh1bCIWBRG5B@XH YNtRwzF?pW=0|Nttr>mdKI;Vst01Kkn^8f$< literal 80835 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 p6b_I{^(zSclAlo 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 y-a_X&>#x;rUi8Z*D2kCm;AD { @@ -98,7 +104,7 @@ public class NetClient extends Module { int id = packet.ids[i]; if(id != Vars.player.id){ Entity entity = null; - if(id >= packet.enemyStart){ + if(i >= packet.enemyStart){ entity = Vars.control.enemyGroup.getByID(id); }else { entity = Vars.control.playerGroup.getByID(id); @@ -106,7 +112,10 @@ public class NetClient extends Module { Syncable sync = ((Syncable)entity); - if(sync == null) continue; + if(sync == null){ + Gdx.app.error("Mindustry", "Unknown entity ID: " + id + " " + (i >= packet.enemyStart ? "(enemy)" : "(player)")); + continue; + } //augh ((Interpolator)sync.getInterpolator()).type.read(entity, packet.data[i]); @@ -136,6 +145,8 @@ public class NetClient extends Module { } Vars.control.setWaveData(packet.enemies, packet.wave, packet.countdown); + Timers.resetTime(packet.time + (float)(TimeUtils.timeSinceMillis(packet.timestamp) / 1000.0 * 60.0)); + Gdx.app.postRunnable(() -> { Vars.ui.updateItems(); }); @@ -217,6 +228,18 @@ public class NetClient extends Module { e.printStackTrace(); } }); + + Net.handle(DisconnectPacket.class, packet -> { + Player player = Vars.control.playerGroup.getByID(packet.playerid); + + if(player != null){ + player.remove(); + } + }); + + Net.handle(Player.class, player -> { + player.add(); + }); } public void update(){ @@ -259,7 +282,7 @@ public class NetClient extends Module { if(Timers.get("syncPlayer", playerSyncTime)){ PositionPacket packet = new PositionPacket(); packet.data = Vars.player.getInterpolator().type.write(Vars.player); - Net.send(packet, SendMode.tcp); //TODO udp instead? + Net.send(packet, SendMode.udp); //TODO udp instead? } } } diff --git a/core/src/io/anuke/mindustry/core/NetServer.java b/core/src/io/anuke/mindustry/core/NetServer.java index 016618912a..a74777fff3 100644 --- a/core/src/io/anuke/mindustry/core/NetServer.java +++ b/core/src/io/anuke/mindustry/core/NetServer.java @@ -4,6 +4,7 @@ import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.utils.IntArray; import com.badlogic.gdx.utils.IntMap; +import com.badlogic.gdx.utils.TimeUtils; import io.anuke.mindustry.Vars; import io.anuke.mindustry.core.GameState.State; import io.anuke.mindustry.entities.BulletType; @@ -24,6 +25,7 @@ import io.anuke.ucore.core.Effects.Effect; import io.anuke.ucore.core.Timers; import io.anuke.ucore.entities.Entity; import io.anuke.ucore.modules.Module; +import io.anuke.ucore.util.Bundles; import io.anuke.ucore.util.Mathf; import java.io.ByteArrayInputStream; @@ -39,8 +41,14 @@ public class NetServer extends Module{ public NetServer(){ - Net.handleServer(Connect.class, packet -> { - UCore.log("Sending world data to client (ID="+packet.id+"/"+packet.addressTCP+")"); + Net.handleServer(Connect.class, connect -> { + UCore.log("Connection found: " + connect.addressTCP); + }); + + Net.handleServer(ConnectPacket.class, packet -> { + int id = Net.getLastConnection(); + + UCore.log("Sending world data to client (ID="+id+")"); WorldData data = new WorldData(); ByteArrayOutputStream stream = new ByteArrayOutputStream(); @@ -51,7 +59,7 @@ public class NetServer extends Module{ //TODO compress and uncompress when sending data.stream = new ByteArrayInputStream(stream.toByteArray()); - Net.sendStream(packet.id, data); + Net.sendStream(id, data); Gdx.app.postRunnable(() -> { Vars.ui.showInfo("$text.server.connected"); @@ -59,25 +67,38 @@ public class NetServer extends Module{ EntityDataPacket dp = new EntityDataPacket(); Player player = new Player(); - player.clientid = packet.id; + player.clientid = id; + player.name = packet.name; + player.isAndroid = packet.android; player.set(Vars.control.core.worldx(), Vars.control.core.worldy() - Vars.tilesize*2); player.add(); - connections.put(packet.id, player); + connections.put(id, player); dp.playerid = player.id; dp.players = Vars.control.playerGroup.all().toArray(Player.class); UCore.log("Sending entities: " + Arrays.toString(dp.players)); - //TODO send pathfind positions - //TODO save enemy nodes + Net.sendExcept(id, player, SendMode.tcp); - Net.sendTo(packet.id, dp, SendMode.tcp); + Net.sendTo(id, dp, SendMode.tcp); }); }); Net.handleServer(Disconnect.class, packet -> { - Gdx.app.postRunnable(() -> Vars.ui.showInfo("$text.server.disconnected")); + Player player = connections.get(packet.id); + + if(player == null) { + Gdx.app.postRunnable(() -> Vars.ui.showInfo(Bundles.format("text.server.disconnected", ""))); + return; + } + + Gdx.app.postRunnable(() -> Vars.ui.showInfo(Bundles.format("text.server.disconnected", player.name))); + + DisconnectPacket dc = new DisconnectPacket(); + dc.playerid = player.id; + + Net.send(dc, SendMode.tcp); }); Net.handleServer(PositionPacket.class, pos -> { @@ -200,7 +221,7 @@ public class NetServer extends Module{ packet.ids = new int[amount]; packet.data = new float[amount][0]; - int index = 0; + short index = 0; for(Player player : Vars.control.playerGroup.all()){ float[] out = player.getInterpolator().type.write(player); @@ -229,23 +250,24 @@ public class NetServer extends Module{ packet.countdown = Vars.control.getWaveCountdown(); packet.enemies = Vars.control.getEnemiesRemaining(); packet.wave = Vars.control.getWave(); + packet.time = Timers.time(); + packet.timestamp = TimeUtils.millis(); Net.send(packet, SendMode.udp); } if(Timers.get("serverBlockSync", blockSyncTime)){ - BlockSyncPacket packet = new BlockSyncPacket(); IntArray connections = Net.getConnections(); for(int i = 0; i < connections.size; i ++){ int id = connections.get(i); - Player player = this.connections.get(i); + Player player = this.connections.get(id); if(player == null) continue; int x = Mathf.scl2(player.x, Vars.tilesize); int y = Mathf.scl2(player.y, Vars.tilesize); - int w = 14; - int h = 10; + int w = 16; + int h = 12; sendBlockSync(id, x, y, w, h); } @@ -270,7 +292,7 @@ public class NetServer extends Module{ byte times = 0; for(; times < tile.entity.timer.getTimes().length; times ++){ - if(tile.entity.timer.getTimes()[times] > 0){ + if(tile.entity.timer.getTimes()[times] <= 1f){ break; } } @@ -278,7 +300,7 @@ public class NetServer extends Module{ stream.writeByte(times); for(int i = 0; i < times; i ++){ - stream.writeFloat(tile.entity.timer.getTimes()[times]); + stream.writeFloat(tile.entity.timer.getTimes()[i]); } tile.entity.write(stream); diff --git a/core/src/io/anuke/mindustry/core/Renderer.java b/core/src/io/anuke/mindustry/core/Renderer.java index 4d9afffd38..9236def916 100644 --- a/core/src/io/anuke/mindustry/core/Renderer.java +++ b/core/src/io/anuke/mindustry/core/Renderer.java @@ -418,10 +418,8 @@ public class Renderer extends RendererModule{ drawHealth(entity); } - if(!Vars.android && Vars.showPlayer) { - for(Player player : Vars.control.playerGroup.all()){ - if(!player.isDead()) drawHealth(player); - } + for(Player player : Vars.control.playerGroup.all()){ + if(!player.isDead() && !player.isAndroid) drawHealth(player); } } } diff --git a/core/src/io/anuke/mindustry/core/UI.java b/core/src/io/anuke/mindustry/core/UI.java index fb374ab12b..fe12ea4369 100644 --- a/core/src/io/anuke/mindustry/core/UI.java +++ b/core/src/io/anuke/mindustry/core/UI.java @@ -181,10 +181,12 @@ public class UI extends SceneModule{ join = new FloatingDialog("$text.joingame.title"); join.content().add("$text.joingame.ip").left(); - join.content().addField("localhost", text -> lastip = text).size(180f, 54f); + Mindustry.platforms.addDialog(join.content().addField("localhost", text -> lastip = text).size(180f, 54f).get()); join.content().row(); join.content().add("$text.server.port").left(); - join.content().addField(Vars.port + "", new DigitsOnlyFilter(), text -> lastport = Strings.parseInt(text)).size(180f, 54f); + Mindustry.platforms.addDialog(join.content() + .addField(Vars.port + "", new DigitsOnlyFilter(), text -> lastport = Strings.parseInt(text)) + .size(180f, 54f).get()); join.buttons().defaults().size(140f, 60f).pad(4f); join.buttons().addButton("$text.cancel", join::hide); join.buttons().addButton("$text.ok", () -> { @@ -472,6 +474,21 @@ public class UI extends SceneModule{ public void showInfo(String info){ scene.table().add(info).get().getParent().actions(Actions.fadeOut(4f), Actions.removeActor()); } + + public void showHostServer(){ + showTextInput("$text.hostserver", "$text.server.port", Vars.port + "", new DigitsOnlyFilter(), text -> { + int result = Strings.parseInt(text); + if(result == Integer.MIN_VALUE || result >= 65535){ + Vars.ui.showError("$text.server.invalidport"); + }else{ + try{ + Net.host(result); + }catch (IOException e){ + Vars.ui.showError(Bundles.format("text.server.error", Strings.parseException(e, false))); + } + } + }); + } public void showAbout(){ about.show(); diff --git a/core/src/io/anuke/mindustry/entities/Player.java b/core/src/io/anuke/mindustry/entities/Player.java index b4cba08ad4..10543d8e95 100644 --- a/core/src/io/anuke/mindustry/entities/Player.java +++ b/core/src/io/anuke/mindustry/entities/Player.java @@ -11,6 +11,7 @@ import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.Blocks; import io.anuke.ucore.core.*; import io.anuke.ucore.entities.DestructibleEntity; +import io.anuke.ucore.entities.SolidEntity; import io.anuke.ucore.util.Angles; import io.anuke.ucore.util.Mathf; @@ -19,10 +20,14 @@ import static io.anuke.mindustry.Vars.*; public class Player extends DestructibleEntity implements Syncable{ private static final float speed = 1.1f; private static final float dashSpeed = 1.8f; - + + public String name = "player name"; public transient Weapon weapon = Weapon.blaster; public Mech mech = Mech.standard; public float angle; + public boolean isAndroid; + + public transient float targetAngle = 0f; public transient int clientid; public transient boolean isLocal = false; @@ -43,15 +48,20 @@ public class Player extends DestructibleEntity implements Syncable{ } @Override - public Interpolator getInterpolator() { + public Interpolator getInterpolator() { return inter; } @Override public void damage(int amount){ - if(!Vars.debug && !Vars.android) + if(!Vars.debug) super.damage(amount); } + + @Override + public boolean collides(SolidEntity other){ + return super.collides(other) && !isAndroid; + } @Override public void onDeath(){ @@ -79,9 +89,13 @@ public class Player extends DestructibleEntity implements Syncable{ @Override public void draw(){ - if((Vars.debug && (!Vars.showPlayer || !Vars.showUI)) || (Vars.android && isLocal)) return; + if(isAndroid && isLocal){ + angle = Mathf.lerpAngDelta(angle, targetAngle, 0.2f); + } - String part = Vars.android ? "ship" : "mech"; + if((Vars.debug && (!Vars.showPlayer || !Vars.showUI)) || (isAndroid && isLocal)) return; + + String part = isAndroid ? "ship" : "mech"; if(Vars.snapCamera && Settings.getBool("smoothcam") && Settings.getBool("pixelate")){ Draw.rect(part+"-"+mech.name(), (int)x, (int)y, angle-90); @@ -93,7 +107,7 @@ public class Player extends DestructibleEntity implements Syncable{ @Override public void update(){ - if(!isLocal || android){ + if(!isLocal || isAndroid){ if(!isDead() && !isLocal) inter.update(this); return; } @@ -153,4 +167,9 @@ public class Player extends DestructibleEntity implements Syncable{ public Player add(){ return add(Vars.control.playerGroup); } + + @Override + public String toString() { + return "Player{" + id + ", android=" + isAndroid + ", local=" + isLocal + ", " + x + ", " + y + "}\n"; + } } diff --git a/core/src/io/anuke/mindustry/input/GestureHandler.java b/core/src/io/anuke/mindustry/input/GestureHandler.java index 94bc361802..1330783edb 100644 --- a/core/src/io/anuke/mindustry/input/GestureHandler.java +++ b/core/src/io/anuke/mindustry/input/GestureHandler.java @@ -52,7 +52,7 @@ public class GestureHandler extends GestureAdapter{ float dx = deltaX*Core.camera.zoom/Core.cameraScale, dy = deltaY*Core.camera.zoom/Core.cameraScale; player.x -= dx; player.y += dy; - player.angle = Mathf.lerpAngDelta(player.angle, Mathf.atan2(dx, dy), 0.5f); + player.targetAngle = Mathf.atan2(dx, -dy); }else if(player.placeMode.lockCamera && (player.placeMode.pan && player.recipe != null)){ input.mousex += deltaX; input.mousey += deltaY; diff --git a/core/src/io/anuke/mindustry/io/NetworkIO.java b/core/src/io/anuke/mindustry/io/NetworkIO.java index 44f09db95a..4b8c60bf95 100644 --- a/core/src/io/anuke/mindustry/io/NetworkIO.java +++ b/core/src/io/anuke/mindustry/io/NetworkIO.java @@ -1,7 +1,6 @@ package io.anuke.mindustry.io; import com.badlogic.gdx.files.FileHandle; -import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.TimeUtils; import com.badlogic.gdx.utils.reflect.ClassReflection; import io.anuke.mindustry.Vars; @@ -12,8 +11,6 @@ import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.Blocks; import io.anuke.mindustry.world.blocks.types.BlockPart; import io.anuke.mindustry.world.blocks.types.Rock; -import io.anuke.mindustry.world.blocks.types.production.Generator; -import io.anuke.ucore.UCore; import io.anuke.ucore.core.Timers; import io.anuke.ucore.entities.Entities; @@ -141,7 +138,7 @@ public class NetworkIO { byte times = 0; for(; times < tile.entity.timer.getTimes().length; times ++){ - if(tile.entity.timer.getTimes()[times] > 0){ + if(tile.entity.timer.getTimes()[times] <= 1){ break; } } @@ -149,7 +146,7 @@ public class NetworkIO { stream.writeByte(times); for(int i = 0; i < times; i ++){ - stream.writeFloat(tile.entity.timer.getTimes()[times]); + stream.writeFloat(tile.entity.timer.getTimes()[i]); } tile.entity.write(stream); @@ -204,8 +201,6 @@ public class NetworkIO { int enemies = stream.readInt(); - Array enemiesToUpdate = new Array<>(); - for(int i = 0; i < enemies; i ++){ int id = stream.readInt(); byte type = stream.readByte(); @@ -226,7 +221,6 @@ public class NetworkIO { enemy.tier = tier; enemy.node = node; enemy.add(Vars.control.enemyGroup); - enemiesToUpdate.add(enemy); }catch (Exception e){ throw new RuntimeException(e); } @@ -234,8 +228,7 @@ public class NetworkIO { Vars.control.setWaveData(enemies, wave, wavetime); - if(!android) - Vars.player.add(); + Vars.player.add(); //map diff --git a/core/src/io/anuke/mindustry/io/Saves.java b/core/src/io/anuke/mindustry/io/Saves.java index 140034b6e3..8e7fd21e54 100644 --- a/core/src/io/anuke/mindustry/io/Saves.java +++ b/core/src/io/anuke/mindustry/io/Saves.java @@ -2,12 +2,7 @@ package io.anuke.mindustry.io; import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.utils.Array; -import com.badlogic.gdx.utils.Timer; -import com.badlogic.gdx.utils.Timer.Task; import com.badlogic.gdx.utils.async.AsyncExecutor; -import com.badlogic.gdx.utils.reflect.ClassReflection; -import com.badlogic.gdx.utils.reflect.Field; -import com.badlogic.gdx.utils.reflect.ReflectionException; import io.anuke.mindustry.Vars; import io.anuke.mindustry.core.GameState; import io.anuke.mindustry.core.GameState.State; @@ -156,6 +151,7 @@ public class Saves { public void delete(){ SaveIO.fileFor(index).delete(); + saves.removeValue(this, true); if(this == current){ current = null; } diff --git a/core/src/io/anuke/mindustry/net/Net.java b/core/src/io/anuke/mindustry/net/Net.java index 7c79dfe6cd..66f24c47a4 100644 --- a/core/src/io/anuke/mindustry/net/Net.java +++ b/core/src/io/anuke/mindustry/net/Net.java @@ -192,6 +192,8 @@ public class Net{ public IntArray getConnections(); /**Register classes to be sent.*/ public void register(Class... types); + /**Returns the ping for a certain connection.*/ + public int getPingFor(int connection); } public enum SendMode{ diff --git a/core/src/io/anuke/mindustry/net/Packets.java b/core/src/io/anuke/mindustry/net/Packets.java index 13fc79d516..965ae42a9f 100644 --- a/core/src/io/anuke/mindustry/net/Packets.java +++ b/core/src/io/anuke/mindustry/net/Packets.java @@ -28,17 +28,27 @@ public class Packets { public static class SyncPacket{ public int[] ids; public float[][] data; - public int enemyStart = 0; + public short enemyStart; } public static class BlockSyncPacket extends Streamable{ } - public static class StateSyncPacket { + public static class ConnectPacket{ + public String name; + public boolean android; + } + + public static class DisconnectPacket{ + public int playerid; + } + + public static class StateSyncPacket{ public int[] items; - public float countdown; + public float countdown, time; public int enemies, wave; + public long timestamp; } public static class PositionPacket{ diff --git a/core/src/io/anuke/mindustry/net/Registrator.java b/core/src/io/anuke/mindustry/net/Registrator.java index a9f733317c..15537a7ada 100644 --- a/core/src/io/anuke/mindustry/net/Registrator.java +++ b/core/src/io/anuke/mindustry/net/Registrator.java @@ -31,6 +31,8 @@ public class Registrator { EnemyDeathPacket.class, BlockUpdatePacket.class, BlockDestroyPacket.class, + ConnectPacket.class, + DisconnectPacket.class, Class.class, byte[].class, diff --git a/core/src/io/anuke/mindustry/net/Syncable.java b/core/src/io/anuke/mindustry/net/Syncable.java index 6e31f342c3..a5fee2b06b 100644 --- a/core/src/io/anuke/mindustry/net/Syncable.java +++ b/core/src/io/anuke/mindustry/net/Syncable.java @@ -1,7 +1,6 @@ package io.anuke.mindustry.net; import com.badlogic.gdx.math.Vector2; -import io.anuke.mindustry.Vars; import io.anuke.mindustry.entities.Player; import io.anuke.mindustry.entities.enemies.Enemy; import io.anuke.mindustry.graphics.Fx; @@ -37,11 +36,11 @@ public interface Syncable { @Override public void update(Player entity, Interpolator interpolator) { Interpolator i = entity.getInterpolator(); - if(i.target.dst(entity.x, entity.y) > 16){ + if(i.target.dst(entity.x, entity.y) > 16 && !entity.isAndroid){ entity.set(i.target.x, i.target.y); } - if(Vars.android && i.target.dst(entity.x, entity.y) > 2f && Timers.get(entity, "dashfx", 3)){ + if(entity.isAndroid && i.target.dst(entity.x, entity.y) > 2f && Timers.get(entity, "dashfx", 2)){ Angles.translation(entity.angle + 180, 3f); Effects.effect(Fx.dashsmoke, entity.x + Angles.x(), entity.y + Angles.y()); } diff --git a/core/src/io/anuke/mindustry/ui/MenuDialog.java b/core/src/io/anuke/mindustry/ui/MenuDialog.java index ea5a67eccc..79a16e6826 100644 --- a/core/src/io/anuke/mindustry/ui/MenuDialog.java +++ b/core/src/io/anuke/mindustry/ui/MenuDialog.java @@ -10,11 +10,7 @@ import io.anuke.ucore.scene.Element; import io.anuke.ucore.scene.builders.build; import io.anuke.ucore.scene.builders.imagebutton; import io.anuke.ucore.scene.ui.ImageButton; -import io.anuke.ucore.scene.ui.TextField.TextFieldFilter.DigitsOnlyFilter; import io.anuke.ucore.util.Bundles; -import io.anuke.ucore.util.Strings; - -import java.io.IOException; import static io.anuke.mindustry.Vars.ui; @@ -62,26 +58,13 @@ public class MenuDialog extends FloatingDialog{ content().row(); - content().addButton("$text.hostserver", () -> { - Vars.ui.showTextInput("$text.hostserver", "$text.server.port", Vars.port + "", new DigitsOnlyFilter(), text -> { - int result = Strings.parseInt(text); - if(result == Integer.MIN_VALUE || result >= 65535){ - Vars.ui.showError("$text.server.invalidport"); - }else{ - try{ - Net.host(result); - GameState.set(State.playing); - }catch (IOException e){ - Vars.ui.showError(Bundles.format("text.server.error", Strings.parseException(e, false))); - } - } - }); - }).disabled(b -> Net.active() || (Net.active() && !Net.server())); + content().addButton("$text.hostserver", () -> ui.showHostServer()) + .disabled(b -> Net.active() || (Net.active() && !Net.server())); content().row(); content().addButton("$text.quit", () -> { - Vars.ui.showConfirm("$text.confirm", "$text.quit.confirm", () -> { + ui.showConfirm("$text.confirm", "$text.quit.confirm", () -> { runSave(); hide(); GameState.set(State.menu); @@ -105,8 +88,12 @@ public class MenuDialog extends FloatingDialog{ new imagebutton("icon-tools", isize, () -> ui.showPrefs()).text("$text.settings").padTop(4f); new imagebutton("icon-save", isize, ()-> save.show()).text("$text.save").padTop(4f); + + content().row(); new imagebutton("icon-load", isize, () -> load.show()).text("$text.load").padTop(4f); + + new imagebutton("icon-host", isize, () -> ui.showHostServer()).text("$text.host").padTop(4f); new imagebutton("icon-quit", isize, () -> { Vars.ui.showConfirm("$text.confirm", "$text.quit.confirm", () -> { diff --git a/core/src/io/anuke/mindustry/ui/fragments/HudFragment.java b/core/src/io/anuke/mindustry/ui/fragments/HudFragment.java index 2b3f050554..8cf72e324f 100644 --- a/core/src/io/anuke/mindustry/ui/fragments/HudFragment.java +++ b/core/src/io/anuke/mindustry/ui/fragments/HudFragment.java @@ -150,6 +150,14 @@ public class HudFragment implements Fragment{ }}.end(); + if(Vars.debugNet) { + new table() {{ + new label(() -> "players: " + Vars.control.playerGroup.amount()); + row(); + new label(() -> "" + Vars.control.playerGroup.all()); + }}.end(); + } + blockfrag.build(); } diff --git a/core/src/io/anuke/mindustry/ui/fragments/MenuFragment.java b/core/src/io/anuke/mindustry/ui/fragments/MenuFragment.java index 7abea26796..ffb946ea76 100644 --- a/core/src/io/anuke/mindustry/ui/fragments/MenuFragment.java +++ b/core/src/io/anuke/mindustry/ui/fragments/MenuFragment.java @@ -72,7 +72,7 @@ public class MenuFragment implements Fragment{ new imagebutton("icon-tools", isize, () -> ui.showPrefs()).text("$text.settings").padTop(4f); - new imagebutton("icon-tools", isize, () -> ui.showJoinGame()).text("$text.joingame").padTop(4f); + new imagebutton("icon-add", isize, () -> ui.showJoinGame()).text("$text.joingame").padTop(4f); if(Mindustry.donationsCallable != null){ new imagebutton("icon-donate", isize, () -> { diff --git a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java index 47cd9b0830..89e9def39e 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java @@ -1,15 +1,7 @@ package io.anuke.mindustry.world.blocks.types.distribution; -import static io.anuke.mindustry.Vars.tilesize; - -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.util.*; - import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.IntArray; - import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.world.Block; @@ -17,7 +9,20 @@ import io.anuke.mindustry.world.Layer; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Draw; import io.anuke.ucore.core.Timers; -import io.anuke.ucore.util.*; +import io.anuke.ucore.util.Bits; +import io.anuke.ucore.util.Mathf; +import io.anuke.ucore.util.Strings; +import io.anuke.ucore.util.Tmp; + +import java.io.DataInputStream; +import java.io.DataOutputStream; +import java.io.IOException; +import java.util.AbstractList; +import java.util.Collections; +import java.util.Comparator; +import java.util.List; + +import static io.anuke.mindustry.Vars.tilesize; public class Conveyor extends Block{ private static ItemPos pos1 = new ItemPos(); @@ -182,6 +187,7 @@ public class Conveyor extends Block{ @Override public void read(DataInputStream stream) throws IOException{ + convey.clear(); int amount = stream.readInt(); convey.ensureCapacity(amount); diff --git a/kryonet/build/libs/kryonet-release.jar b/kryonet/build/libs/kryonet-release.jar new file mode 100644 index 0000000000000000000000000000000000000000..e2350720b9fe8d4f4152ac07bde317b9aecddff7 GIT binary patch literal 7637 zcmWIWW@h1HVBp|jc+jBe!@$76zyu-~7#KJi7#MtALmYKI{oM4K84wB$a}<3x)ib@5 zW?*2DWME(rL00JN=;!I?8XThM>-O3A%xNEQUA>FE-nv@n&Ya&IWN^j!!P7@ina~Ua zSqQV0nSp^JGath~WF;VnW#;QA=9OlrqA0wJ<^w^9SrCQUMV0w^sU;X1=APv0e#y+h z;K0Gapo~p}cTr`&b53SzUWtmKUUE)iadB^0Zn(6oNSzvI&ZZm{2ZxqvZeH06jk^01 zrgkMYNX-sV>3H-ztz2rE%5KZuvz`8T{$sL#Y$>Aq{L16-`YFe)XHRhHHhh>;_Uv5o z`{MV->6`xiy#867;hvjno8g|-N}Zyt?^kjpyB_@=(R=aDyg9WCl6d7$J$2W*_Hkp= zoG!)AdjT6H4~xCye<=J!v}RQj3%`hnh=^#8G0(5|L$h}uF4(Ieb9aNZdyIY2d@Hl> zU)jH$31!{>H;S3$ZAhupn#Ob)L_)yNwJcJ7z{o?3%KI^LAFnzTY9!?X24>kJRR`YgKVSD-;*L z@0DBi$q7IA8^{{CcI~?J=K zdLMM=oqXe>L1VaR&9Q>r_NJn5vNRI?4?n+g{R8X1kb(sdwQJTsl&)F*z?%2|WA?0^ z`~eVg;w2(0b0R{QEBWkAn)~AW zTH&BWE3U7+a>#r4>#tRzGu&P;ihaG+-@gBkOMutpyLYPF*A?sN%Ux7<&2LxHu-@R} z6sJ~|>GHz5^ZE%Z*UhFaFZct*jnWgipL5K;q}7rs#m>q6X{Xy`7va{|I~ZAvC3}B) z$gJOxZH{QINxPG%k0fhYJ{bBmUBGHZK{}^ z&>--c@gS3tZj(Hx?$X(3|26*b@0jD&G~aOFU+%Vg=cb2D%Iw|GCI0?3=~$R(kudd* zaX^O8WK-v|xn-L|-YJQ0a$(hBzo`@Og=KH!=9K(rRWq;WXzN=>E4>$ZcfqEspv3#& zCys^pd0y3Y|C68aww7J{h(;=J@bB644civ07-6TZaA#qwlYm+lLJ4I6JPn$&eQASY+Xlz<7>ZX3*8 z#(dJp%6R3c7g2UU%)cDm_akWfGQHhl^$q(E%RdY*eLva6fhjU&?VQ*5?r&e8{;%%m zb#8|6her)MR9VfFITBWK7wUX|70kLlsYBuP?DI)GdSiOtg;nf6bvQ~qZNs_M);2jG zCOl7^+`ii|Co%fqbFMOxJK_PGx8?4dIq6;HGIaq%uW6aTnSw13YcBUW|Izolk;L5V?EKZWk6S%%S)43h9c3Qb_dGLMRi=Or8 z48L5O_AY8qzD(PncCm?SMbjox9%OdFEj#yrSN7~+PD~%6wmOQV$ zdn5j$cJGCwtEM)+oBjHU3hRoDUtdL28)bTTrCt1_QOwkQ>#y<~qw|+65;?wXz01+^ zx0y@aseZRq>;DQN&rONGdqRIy6-|7?e%s+k3}bBR)3uA%{tlhKrTunpilv$HwDMK! z67{0bT&j)`ogNu?RO1+n-rR*jp*+bhN3ZM5e-V&7Ib7n4w5U~?sDu`mLFk#swxanD z8oQK^h1jroM&1bCc;315{HYzw4z(>_aOhJ%%Q3499CPw@Ia#NyeaUw;;Cf8?+~Z-5 z#TbxcR#JRpKQ6dQQT7X`4=a}<5yFSGlO3L3D`4f$|`aH zjj7JlR-FKJblS@#B;I_4B;^`4(?M}5b86ZC3*{`)`Ca^8AE zRBB4w=X|#B2Gz+e4(}g!dtCpIT4YUW+BGwjg@M6}6HntNIJKxOwMfMXQfN&LdmSbm zF7nS$&&SA*apLZVjhBQbWrS2MJaTK+74Iy8ECKJ2hYT!R8WYv#&Q#d=cK*K)n!g0z zMyZsYyu|*(xwLftOo4!mBWtGC>iz!qw)Wh;^nX9UUzKK<|8Tp8+eG0f){c3nBo6Cx zmZ!8#?0;moZ+fA4tA=iRYRSWSGtQozahyM?EMDX8^nfWF6c$VW;nxTRYAIDrqo2~~N6YM8`2sy;%?4WPB!KQi7TB*l<*~O*Z51kyhUs@G;_sL7$ zyE>tn`=^=hoUK>I^lH^XW1hKAuA6-(XRphf$upVt>@Bb2<3&5yX7_DCDa@;+5xT^pLG&!Nm?%jzB6>w5Lt(Oo+wg&d7EDmNuQ z=eb&Fp?iL7ck&;tqcS%Z9{D0GJux9Jk;8gj)^47II~+vgo~F*_doV?R%GdCh-`VZ! zJQ{u4efBxK{eFDQU&EdS7HPm6D+;CbN6QDZJYD#&()K2tGH4^ z^rAweA8#+2xN%*xPmB;l#`9$>C8sT({WS93x@c9-RZXE8Ty_VSbDevf%qniME`jNY zvaqO&uo!pHMRNA@FMP=$e*T}&VGA7cSL3z zy4RnxRo@>}xpi+gPjGI2{ne|zhp+qZ5Ne#8n>^L;isHtk&C`93_y@H-65~JGzdrGx z_5V2GE1KVKUynHLH|^bP-rHf>`O`0WSlc;I*|F=P^irn9?5P=(gSa5$HJSMebam(9IeP*ew@LF+Z$TJ@<)3{i6P9A=A66Rp$M# zf8TLY+uZGaYRA8j8i(@jE6VeiO#1GY#dL)CQaw}Q1!PJAc|mRn9pUK0}d3@KhpO{Nz@Jb=A}M9o&BJKjJ>~!Bx%Q_@~fhedC{8lh+&Fw~Vu0{2;qx zT6p~P&CgTjO#is2iT4EiM<)CI2cOJ#+_U0=YRrSPr@5{@jyBq-`&d+Ry=Or1vX!@+ zE!PHI;1*(Hy=%Adw$L^H^ffP+#BGqdYi7jydPZ^3=C4nt*e1{1HCaY9=daK#BQebr z7Hz4MDz;CMy1vOW`_Ks$^-aqsxgI|uI!W{L&CJ`kcsyCQNiKVsGyQ_ZYg?Uz<{7D_ zoNEuat$eTV*Z=z446}KQCvQvCUi_3Vd)vY4_ZOb~NTsM7;jrf=p&yccTtt+uwwxj(||!MSL&w@aq5q+Vay zGf#Y1N=P8hg9(#Zezm!{v{v!p?O zL(74+hGG?xIKhJoqwjLBc_avK`SAD(h@cjL?}6Ixhyev>m=JTb`Y*y|Ge z#bFoEz1Yor>}J%;&DA#+b+La~&|+GyAusy=xR}>7RTELs_lN%qy<4Rlv+DLenje)LGOUhmiF>Ce6c!d2v@^JmPoy_y+UBCSij#%aUqxI@p7Q#l*I##k zsdFhNrXryq-T!o+v|h5p+A3m8?%k4A7TnQ`jsC59r2j*E^8Stf_0t8`6*F!>a&)bg zbb^CK?LxaaJ78M1j?R&AqX31xt z+UutuT@CV{S?$fIRK2ON^URgQbA0CQE4;ICqw#cUX_<#@`wEIS+~T^uaG~HthCQN6 z+G4ZK;-(o)7Rb;(y*pAzC7Yl1xlz|W$GK74Ez_ib8m_ARXgZ~6x9NTLrH*U-Hj9<} zJ&cH*-+cVZp_`%Zxt7Q8RCyL8>F(Y0hh-kSufyr*rG9(&-B8-P^}&hPnM)RQt6zB= zzk6*vyLZqMwWW0zHpb}vJ7BfTqeqNM;OnLvg~yXJG>^^Qp6~Kv+4&#UiVy96N5MqoHpf){1@Ia)ikC1*N6qx@bSKkG>L2NpH>&ew$5puvw`e>rk%Pb+^H3l z*S9S5Rb5eI(*DeZbK8^)Qv2I>dqtGZEHO>czR1fV_*Uuf+zi*27g^q4!YBp%sT83f@GLhg*@G+6Z!R)lqdTWUcy*jR zx3%NJw|hF&@+H#__Z}*kZICq4xiaduNT9n!|1Pal#}2c+n_wWP*5Q8QNb;jsQnym9 zd>xV3E+fMfcZ>-d9fjJaN-|LB=JH zYa~1#+e~=sSXKX}&mkko@p^2T=Z-G8>W&OCf~_)qVM z>L+Xbcm0@OA1l_N^=_`S^}K~fw(Y$Y+hm@VnLJLuu;SPbpXYCn8}#wqJYRJqM(^%p zspE!K$N9_`KU8ZnQd4;u`-*MyA#gyQ2~+=1 zI`Hqkui1$#=^iLMMO6RJ_ef&8e6$Londl|Dbm@g=sdhAmf~8|>s|KIt=O=7%5e<`?Mh|1BxbKXq%#&#UrJi|%`R zEK2Z-*jfC3X7RV1>GzBCf4qKwzmEL_!*9Voy(=}W3|2l26jAhXGi>fxo?{!f`KE^5 z!8uXq+&4BH*;1T{zW%qHND?U zNV@v83og^2%yf8T%gdBUmx^m%MlE~3=NmuIb`h)TMRx0%27M&Yuw?67vZ`JuLtG@DKYoFepD;GPXrM9vB%3HRqE!=9~ zf$3KJ4qdm}cW}EDkL+!OQWZzN^`%QTEIxc_U7M|JX3CD!=GP+HdEFD1EZWk&ZsJ7t zzTMk(Y|ndad^9aP<;sMsA7x{B=kdwwvs!t_Wn13fZnWvenky$hDulhMZant?UE6`Z zT_M8Lo_ovbHb#psV0ALQDpaoZTIE9h;c3DvJU#0(?HJ;OR&2Vlv1zi{tm`Rl44Y3b z@&0M{ENrH^*@XATt(%S{-VNmB)(f6~D)#rZ_Cw{@YNzj2y->v|;xT2rkxkYV)$D!e z7JshSik~=TN9pkmlQU;t&stl-bUQhm|M;Xy8`qT_o^bE(gE@K9C$~)Abf!Y9QsVs2 zuv^KR|JJ;ga`(CamreZD389MEW1l!s^216W6iHPZn~WNn80LRA}?f zoLfe{hdSS{`ZCY*$wF6Et5e?hZWPXCE@l2;<;Y*Z%Szz`pG)#$tE+!pS3ld%y*+d9 z;hQ|Gez3c+xBDrwoewNM6DqpP^4cZ#9o`}fY~LTfTJ2yEoRK5{*`-EKVzsMaKEzCxC}D#j86k-f()TyCPV{d77SS%XiOWV3}z2#x(vjJ*mDS38*K6nT|4^Z z8ALk+!;;3&*tBC#rJ);$KE{qPP?i-uF$nPn%smJLAst0@xwWijSsJZ*xiR-@ga;W7sG2DY$`Iqo0ScuiHm`YVIva*10QHomH_~~>1+M~ literal 0 HcmV?d00001 diff --git a/kryonet/build/tmp/jar/MANIFEST.MF b/kryonet/build/tmp/jar/MANIFEST.MF new file mode 100644 index 0000000000..59499bce4a --- /dev/null +++ b/kryonet/build/tmp/jar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/kryonet/src/io/anuke/kryonet/KryoServer.java b/kryonet/src/io/anuke/kryonet/KryoServer.java index c3cbfc8843..7b697997ac 100644 --- a/kryonet/src/io/anuke/kryonet/KryoServer.java +++ b/kryonet/src/io/anuke/kryonet/KryoServer.java @@ -133,6 +133,11 @@ public class KryoServer implements ServerProvider { } } + @Override + public int getPingFor(int connection) { + return getByID(connection).getReturnTripTime(); + } + @Override public void register(Class... types) { for(Class c : types){