コード例 #1
0
 public void CreateSpecial(int index)
 {
     if (activeSlot != null)
     {
         string[] specials = { "Building_Special_Marketing", "Building_Special_Solar", "Building_Special_Nuclear" };
         Vector2  bPos     = activeSlot.SetSpecial(specials[index], this);
         activeBuildingSpecial = activeSlot.GetComponentInChildren <BuildingSpecial>();
         activeSlot            = null;
         slotPanel.SetActive(false);
         BuildingPanel.SetActive(false);
         BuildingSpecialPanel.SetActive(true);
     }
 }
コード例 #2
0
 public void AddToBuildingArray(int x, int y, BuildingSpecial b)
 {
     buildingSpecialArray[y, x] = b;
 }
コード例 #3
0
    void CheckInput()
    {
        if (!inMinigame)
        {
            if (Input.GetButtonDown("Fire1"))
            {
                if (UnityEngine.EventSystems.EventSystem.current.IsPointerOverGameObject(-1) == false)
                {
                    Ray        ray = Camera.main.ScreenPointToRay(Input.mousePosition);
                    RaycastHit hit;
                    if (Physics.Raycast(ray, out hit, 100f))
                    {
                        GameObject buildingObj = hit.transform.gameObject;

                        if (buildingObj.GetComponent <Building>() != null)
                        {
                            activeSlot            = null;
                            activeBuildingSpecial = null;
                            activeBuilding        = buildingObj.GetComponent <Building>();
                            cameraController.ZoomInOn(hit.transform);
                            BuildingSpecialPanel.SetActive(false);
                            BuildingPanel.SetActive(true);
                            slotPanel.SetActive(false);
                        }
                        else
                        {
                            BuildingPanel.SetActive(false);
                            activeBuilding = null;
                        }

                        if (buildingObj.GetComponent <BuildingSpecial>() != null)
                        {
                            activeBuilding        = null;
                            activeSlot            = null;
                            activeBuildingSpecial = buildingObj.GetComponent <BuildingSpecial>();
                            cameraController.ZoomInOn(hit.transform);
                            BuildingPanel.SetActive(false);
                            BuildingSpecialPanel.SetActive(true);
                            slotPanel.SetActive(false);
                        }
                        else
                        {
                            BuildingSpecialPanel.SetActive(false);
                            activeBuildingSpecial = null;
                        }

                        if (buildingObj.GetComponent <Tile>() != null)
                        {
                            Debug.Log("Clicked tile");
                            activeBuilding        = null;
                            activeBuildingSpecial = null;
                            activeSlot            = buildingObj.GetComponent <Tile>();
                            cameraController.ZoomInOn(hit.transform);
                            if (activeSlot.building == null || activeSlot.slotType == Tile.types.Green_Band)
                            {
                                slotPanel.SetActive(true);
                                BuildingPanel.SetActive(false);
                                BuildingSpecialPanel.SetActive(false);
                                UpdateSlotPanel();
                            }
                        }
                        else
                        {
                            slotPanel.SetActive(false);
                            activeSlot = null;
                        }
                    }
                    else
                    {
                        slotPanel.SetActive(false);
                        BuildingPanel.SetActive(false);
                        BuildingSpecialPanel.SetActive(false);
                        activeSlot            = null;
                        activeBuilding        = null;
                        activeBuildingSpecial = null;
                    }
                }
            }
            if (Input.GetButtonDown("Fire2"))
            {
                slotPanel.SetActive(false);
                BuildingPanel.SetActive(false);
                BuildingSpecialPanel.SetActive(false);
                cameraController.ZoomOut();

                activeSlot            = null;
                activeBuildingSpecial = null;
                activeBuilding        = null;
            }
            else if (Input.GetKeyDown(KeyCode.Menu))
            {
                Company.money += 1000;
            }
            else if (Input.GetKeyDown(KeyCode.Home))
            {
                Company.powerLeft += 1000;
            }
            else if (Input.GetKeyDown(KeyCode.Escape))
            {
                slotPanel.SetActive(false);
                BuildingPanel.SetActive(false);
                BuildingSpecialPanel.SetActive(false);
                activeSlot            = null;
                activeBuilding        = null;
                activeBuildingSpecial = null;
            }
        }
    }