void sendPlayerPosition() { GameObject gameObject = GameObject.FindWithTag("Player"); Vector3 position = gameObject.transform.position; ClientMessage clientMessage = baseMessage(); Player player = clientMessage.player; Entity entity = new Entity(); EVector3 evector = new EVector3(); entity.vector3 = evector; entity.vector3.x = position.x; entity.vector3.y = position.z; entity.vector3.z = position.y; entity.id = player.id; entity.entityType = "player"; TrackEntity trackEntity = new TrackEntity(); trackEntity.value = true; entity.trackEntity = trackEntity; GetNeighbors getNeighbors = new GetNeighbors(); getNeighbors.neighborType = "npc"; getNeighbors.vector3 = new EVector3(); getNeighbors.vector3.x = position.x; getNeighbors.vector3.y = position.z; getNeighbors.vector3.z = position.y; entity.getNeighbors = getNeighbors; clientMessage.entity.Add(entity); sendMessage(clientMessage); }
void printResponse(ClientMessage message) { foreach (Entity entity in message.entity) { neighborsFromServer.TryAdd("1", entity.neighbors); } }
void sendMessage(ClientMessage message) { MemoryStream stream = new MemoryStream(); Serializer.Serialize(stream, message); byte[] bytes = stream.ToArray(); udpClient.Send(bytes, bytes.Length, "192.168.1.6", 8100); }
ClientMessage baseMessage() { Player player = basePlayer(); ClientMessage clientMessage = new ClientMessage(); clientMessage.player = player; return(clientMessage); }
private void dataReady(IAsyncResult ar) { byte[] bytes = udpClient.EndReceive(ar, ref udp_ep); MemoryStream stream = new MemoryStream(bytes); ClientMessage clientMessage = Serializer.Deserialize <ClientMessage> (stream); printResponse(clientMessage); receiveData(); }
void OnApplicationQuit() { ClientMessage clientMessage = baseMessage(); PlayerLogout logout = new PlayerLogout(); logout.playerId = basePlayer().id; clientMessage.playerLogout = logout; sendMessage(clientMessage); udpClient.Close(); //networkThread.Abort (); //networkThread.Join (); Debug.Log("Networking stopped"); }