Exemplo n.º 1
0
    internal static void Query(Protocol.QueryPayload payload)
    {
        MessagingBus.QueuedSceneMessage_Scene queuedMessage = GetSceneMessageInstance();

        string queryId = Convert.ToString(payload.raycastPayload.id);

        RaycastType raycastType = (RaycastType)payload.raycastPayload.raycastType;

        Ray ray = new Ray()
        {
            origin    = payload.raycastPayload.origin,
            direction = payload.raycastPayload.direction,
            distance  = payload.raycastPayload.distance
        };

        queuedMessage.method  = MessagingTypes.QUERY;
        queuedMessage.payload = new QueryMessage()
        {
            payload = new RaycastQuery()
            {
                id          = queryId,
                raycastType = raycastType,
                ray         = ray,
                sceneId     = currentSceneId
            }
        };

        queueHandler.EnqueueSceneMessage(queuedMessage);
    }
Exemplo n.º 2
0
    public void QueueQueryCorrectly()
    {
        Protocol.QueryPayload payload = new Protocol.QueryPayload();
        payload.queryType      = 79014;
        payload.raycastPayload = new Protocol.RaycastQueryPayload
        {
            direction   = Vector3.right,
            distance    = 10,
            id          = 66,
            origin      = Vector3.zero,
            raycastType = 1
        };
        EntryPoint_World.Query(payload);

        string json1     = JsonConvert.SerializeObject(queueHandler.messagesList[0]);
        string json1base = @"{""method"":""Query"",""payload"":{""queryType"":null,""payload"":{""sceneId"":""test-scene-id"",""id"":""66"",""raycastType"":1,""ray"":{""origin"":{""x"":0.0,""y"":0.0,""z"":0.0},""direction"":{""x"":1.0,""y"":0.0,""z"":0.0},""distance"":10.0}}},""tag"":""test-tag"",""type"":1,""sceneId"":""test-scene-id"",""message"":null,""isUnreliable"":false,""unreliableMessageKey"":null}";

        Assert.AreEqual(json1base, json1);
    }