Ejemplo n.º 1
0
 private void OnClientDisconnected(WebSocketClient client)
 {
     if (client.GetPlayerObject() != null)
     {
         PublishObjectDespawnedToChildren(client.GetPlayerObject());
     }
 }
Ejemplo n.º 2
0
        private void OnClientPositionUpdateReceived(WebSocketClient client, float x, float y)
        {
            if (client.GetPlayerObject() != null)
            {
                client.GetPlayerObject().SetPosX(x);
                client.GetPlayerObject().SetPosY(y);

                PublishObjectUpdatedToChildren(client.GetPlayerObject());
            }
        }
Ejemplo n.º 3
0
        private void OnClientReady(WebSocketClient client, string name, string color)
        {
            GameObject playerObject = physicsWorld.CreateObject(name, 2, color);

            client.SetPlayerObject(playerObject);
            playerObject.SetIsPlayerObject(true);

            foreach (GameObject gameObject in physicsWorld.GetGameObject())
            {
                SendMessageToClient(client, ParameterMap.Stringify("type", "3",
                                                                   "id", gameObject.GetIdentifier(),
                                                                   "x", gameObject.GetPosXAsString(),
                                                                   "y", gameObject.GetPosYAsString(),
                                                                   "size", gameObject.GetSizeAsString(),
                                                                   "name", gameObject.GetName(),
                                                                   "color", gameObject.GetColor()));
            }

            if (client.GetPlayerObject() != null)
            {
                SendMessageToClient(client, ParameterMap.Stringify("type", "2",
                                                                   "id", client.GetPlayerObject().GetIdentifier()));

                lock (clients)
                {
                    foreach (WebSocketClient otherClient in clients)
                    {
                        if (otherClient != client)
                        {
                            SendMessageToClient(otherClient, ParameterMap.Stringify("type", "3",
                                                                                    "id", client.GetPlayerObject().GetIdentifier(),
                                                                                    "x", client.GetPlayerObject().GetPosXAsString(),
                                                                                    "y", client.GetPlayerObject().GetPosYAsString(),
                                                                                    "size", client.GetPlayerObject().GetSizeAsString(),
                                                                                    "name", client.GetPlayerObject().GetName(),
                                                                                    "color", client.GetPlayerObject().GetColor()));
                        }
                    }
                }
            }
        }