Пример #1
0
        private async Task <byte[]> ActionChangeTransform(NameValueCollection queryString)
        {
            var vector = new Vector3(
                ParseStringToFloat(queryString.Get("x")),
                ParseStringToFloat(queryString.Get("y")),
                ParseStringToFloat(queryString.Get("z")));

            await TaskSwitcher.SwitchToMainThread();

            var changeGameObject = GetGameObjectById(queryString.Get("id"));

            var fieldChange = queryString.Get("transformType");

            switch (fieldChange)
            {
            case "position":
                changeGameObject.transform.position = vector;
                break;

            case "rotation":
                changeGameObject.transform.rotation = Quaternion.Euler(vector);
                break;

            case "scale":
                changeGameObject.transform.localScale = vector;
                break;
            }

            return(ResponseTools.CreateOkResponse());
        }
        private async Task <byte[]> ActionChangeTransform(NameValueCollection queryString)
        {
            var vector = new Vector3(
                ParseFloatString(queryString.Get("x")),
                ParseFloatString(queryString.Get("y")),
                ParseFloatString(queryString.Get("z")));

            await TaskSwitcher.SwitchToMainThread();

            var idGameObject = int.Parse(queryString.Get("id"));
            var hierarchy    = HierarchyTools.GetHierarchyActiveScene();

            hierarchy.gameobjectsDictonary.TryGetValue(idGameObject, out var changeGameObject);

            var fieldChange = queryString.Get("transformType");

            switch (fieldChange)
            {
            case "position":
                changeGameObject.transform.position = vector;
                break;

            case "rotation":
                changeGameObject.transform.rotation = Quaternion.Euler(vector);
                break;

            case "scale":
                changeGameObject.transform.localScale = vector;
                break;
            }

            return(ResponseTools.CreateOkResponse());
        }
Пример #3
0
        private async Task <byte[]> ActionChangeEnableGameObject(NameValueCollection queryString)
        {
            await TaskSwitcher.SwitchToMainThread();

            bool activeGameObject = ParseStringToBool(queryString.Get("activeSelf"));
            var  changeGameObject = GetGameObjectById(queryString.Get("id"));

            changeGameObject.SetActive(activeGameObject);

            return(ResponseTools.CreateOkResponse());
        }
Пример #4
0
        private async Task <byte[]> ActionDelete(NameValueCollection queryString)
        {
            var idString = queryString.Get("id");

            if (string.IsNullOrEmpty(idString))
            {
                throw new Exception("Dont find id in ActionDelete action");
            }

            if (int.TryParse(idString, out var idDelete))
            {
                await DeleteGameObjectById(idDelete);

                return(ResponseTools.CreateOkResponse());
            }

            return(new byte[0]);
        }
Пример #5
0
        private async Task <byte[]> ActionMove(NameValueCollection queryString)
        {
            var idSourceString      = queryString.Get("idSource");
            var idDestinationString = queryString.Get("idDestination");

            if (string.IsNullOrEmpty(idSourceString))
            {
                throw new Exception("Dont find idSource in ActionMove action");
            }

            if (string.IsNullOrEmpty(idDestinationString))
            {
                throw new Exception("Dont find idDestination in ActionMove action");
            }

            var idSourceInt      = int.Parse(idSourceString);
            var idDestinationInt = int.Parse(idDestinationString);

            await MoveChildren(idSourceInt, idDestinationInt);

            return(ResponseTools.CreateOkResponse());
        }