Various minor UI/Net changes

This commit is contained in:
Anuken
2018-01-02 20:45:13 -05:00
parent 2796ab9801
commit c23743ee45
11 changed files with 240 additions and 36 deletions

View File

@@ -3,10 +3,7 @@ package io.anuke.kryonet;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.utils.Array;
import com.badlogic.gdx.utils.ObjectSet;
import com.esotericsoftware.kryonet.Client;
import com.esotericsoftware.kryonet.Connection;
import com.esotericsoftware.kryonet.FrameworkMessage;
import com.esotericsoftware.kryonet.Listener;
import com.esotericsoftware.kryonet.*;
import io.anuke.mindustry.Vars;
import io.anuke.mindustry.net.Address;
import io.anuke.mindustry.net.Net;
@@ -15,9 +12,12 @@ import io.anuke.mindustry.net.Net.SendMode;
import io.anuke.mindustry.net.Packets.Connect;
import io.anuke.mindustry.net.Packets.Disconnect;
import io.anuke.mindustry.net.Registrator;
import io.anuke.ucore.UCore;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.util.Arrays;
import java.util.List;
public class KryoClient implements ClientProvider{
@@ -25,6 +25,23 @@ public class KryoClient implements ClientProvider{
public KryoClient(){
client = new Client();
client.setDiscoveryHandler(new ClientDiscoveryHandler() {
@Override
public DatagramPacket onRequestNewDatagramPacket() {
return new DatagramPacket(new byte[4], 4);
}
@Override
public void onDiscoveredHost(DatagramPacket datagramPacket) {
//TODO doesn't send data
UCore.log("DATA HOST FOUND: " + Arrays.toString(datagramPacket.getData()));
}
@Override
public void onFinally() {
}
});
client.start();
client.addListener(new Listener(){
@Override

View File

@@ -2,10 +2,7 @@ package io.anuke.kryonet;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.utils.IntArray;
import com.esotericsoftware.kryonet.Connection;
import com.esotericsoftware.kryonet.FrameworkMessage;
import com.esotericsoftware.kryonet.Listener;
import com.esotericsoftware.kryonet.Server;
import com.esotericsoftware.kryonet.*;
import com.esotericsoftware.kryonet.util.InputStreamSender;
import io.anuke.mindustry.net.Net;
import io.anuke.mindustry.net.Net.SendMode;
@@ -19,6 +16,9 @@ import io.anuke.mindustry.net.Streamable.StreamChunk;
import io.anuke.ucore.UCore;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.DatagramChannel;
import java.util.Arrays;
public class KryoServer implements ServerProvider {
@@ -27,6 +27,22 @@ public class KryoServer implements ServerProvider {
public KryoServer(){
server = new Server();
server.setDiscoveryHandler(new ServerDiscoveryHandler() {
private ByteBuffer buffer = ByteBuffer.allocate(4);
{
buffer.putInt(987264236);
}
@Override
public boolean onDiscoverHost(DatagramChannel datagramChannel, InetSocketAddress fromAddress) throws IOException {
//TODO doesn't send data
UCore.log("SENDING DATA: " + Arrays.toString(buffer.array()));
datagramChannel.send(this.buffer, fromAddress);
return true;
}
});
Thread thread = new Thread(server, "Kryonet Server");
thread.setDaemon(true);
thread.start();