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); } }
public void AddToBuildingArray(int x, int y, BuildingSpecial b) { buildingSpecialArray[y, x] = b; }
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; } } }