// 開啟塔狀態介面 public void openTowerStatusPanel(CannonPlatform selectCannon) { closeAllPanel(); TowerStatusPanel.GetComponent <TowerStatusManager>().set_useCannon(selectCannon); Vector3 newPosition = getPanelPosition(TowerStatusPanel); TowerStatusPanel.GetComponent <RectTransform> ().position = newPosition; TowerStatusPanel.SetActive(true); }
// 檢查滑鼠點在tower上時要開起的panel public void setMouseDownTowerPanel(CannonPlatform selectCannon) { if (check_other_ui_panel()) { if (!anyPanelOpen()) { openTowerStatusPanel(selectCannon); } } }
void check_raycast_to_open_panel() { RaycastHit hit; Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit, Mathf.Infinity, LayerMask.GetMask("CannonPlatform"))) { CannonPlatform selectCannon = hit.transform.gameObject.GetComponent <CannonPlatform>(); Debug.Log(selectCannon); if (selectCannon) { selectTowerPannel.GetComponent <TowerManager>().set_useCannon(selectCannon); openTowerPanel(); } } }
// 檢查滑鼠點在cube上時要開起的panel public void setMouseDownCubePanel(CannonPlatform selectCannon) { if (check_other_ui_panel()) { if (!anyPanelOpen()) { if (selectCannon.IsEmpty) { openBuildTowerPanel(selectCannon); } else { openTowerStatusPanel(selectCannon); } } } }
public void set_useCannon(CannonPlatform selectCannon) { useCannon = selectCannon; lvText.text = " Lv : " + useCannon.getLevel; towertypeText.text = useCannon.getName; atkText.text = " ATK : " + useCannon.getAtk; spdText.text = " SPD : " + useCannon.getSpd; priceText.text = " Sell : " + useCannon.getPrice + "G"; if (useCannon.getLevel == useCannon.getMaxLevel) { lvUpText.text = " max level"; lvUpButtom.interactable = false; } else { Debug.Log("cost:" + useCannon.getCost); lvUpText.text = " LevelUp : " + useCannon.getCost + "G"; Debug.Log("lvcUpButtom:" + lvUpButtom); lvUpButtom.interactable = true; } }
public void setUseCannon(CannonPlatform selectCannon) { useCannon = selectCannon; }