示例#1
0
        protected override void onItemInserted(ResourceDescriptor descriptor)
        {
            // add onClick on resource handlers
            var button = descriptor.controller.button;

            Debug.Log("Creating onClick listener for an craft result resource: ");
            var type = descriptor.resource.GetType();

            if (type == (typeof(Galaxy)))
            {
                button.onClick.AddListener((() =>
                {
                    // FIXME asem [REFACTOR] replace this code with calling api-method from InstantiatingApi script
                    PauseMenuManager.CloseCraftMenu();
                    var result = Instantiate(prefab, new Vector3(5, 0, 0), Quaternion.identity) as GameObject;
                    result.GetComponent <SpriteRenderer>().sortingOrder = 2;
                    clear();
                }));
            }
            else if (type == (typeof(Star)))
            {
                button.onClick.AddListener((() =>
                {
                    PauseMenuManager.CloseCraftMenu();
                    InstantiatingApi.CreateStar();
                    clear();
                }));
            }
            else if (type == (typeof(Planet)))
            {
                button.onClick.AddListener((() =>
                {
                    PauseMenuManager.CloseCraftMenu();
                    InstantiatingApi.CreatePlanet();
                    clear();
                }));
            }
            else
            {
                button.onClick.AddListener((() =>
                {
                    CraftMenuController controller = this.CraftMenuController;
                    Debug.Log("Processing click for craft resource via controller: ", controller);
                    controller.moveCraftResultToResources(descriptor);
                }));
            }
        }