public void ResetSelectTower() { m_TowerBuildPrintMGR = null; for (int i = 0; i < m_NodesCanBuildList.Count; i++) { m_NodesListMGR.transform.GetChild(i).GetComponent <NodeMGR>().SetNodeColor(E_TOWERTYPE.E_MAX); } }
public void SelectTowerToBuild(TowerBuildPrint Tower, E_TOWERTYPE eTowerType) { m_eTowerType = eTowerType; m_TowerBuildPrintMGR = Tower; if (HasMoney) { for (int i = 0; i < m_NodesCanBuildList.Count; i++) { m_NodesListMGR.transform.GetChild(i).GetComponent <NodeMGR>().SetNodeColor(eTowerType); } } DeSelectNode(); }
private void LoadTowerInfo() { m_builMGR = TowerBuildMGR.instance; m_TowerInfoList = CSVFileReader.Read(m_TowerInfoCVSFileName); for (int i = 0; i < m_TowerInfoList.Count; i++) { //DB에서 타워 정보 불러옴 int nId = (int)m_TowerInfoList[i]["id"]; TowerBuildPrint TempTowerBuildPrint = new TowerBuildPrint(); TempTowerBuildPrint.m_nCost = (int)m_TowerInfoList[i]["Price_lv1"]; TempTowerBuildPrint.m_nUpgrageCost = (int)m_TowerInfoList[i]["Price_lv2"]; TempTowerBuildPrint.m_nSellPrice = (int)m_TowerInfoList[i]["Price_Sell_lv1"]; TempTowerBuildPrint.m_nSellUpgradePrice = (int)m_TowerInfoList[i]["Price_Sell_lv2"]; if (nId == (int)E_TOWERTYPE.E_CANNON) { m_CannonTower = TempTowerBuildPrint; m_CannonTower.m_prefab = m_Cannonprefab; m_CannonTower.m_Upgradeprefab = m_CannonUpgradeprefab; m_CannonPriceTxt.text = m_CannonTower.m_nCost.ToString(); } else if (nId == (int)E_TOWERTYPE.E_LASER) { m_LaserTower = TempTowerBuildPrint; m_LaserTower.m_prefab = m_Laserprefab; m_LaserTower.m_Upgradeprefab = m_LaserUpgradeprefab; m_LaserPriceTxt.text = m_LaserTower.m_nCost.ToString(); } else if (nId == (int)E_TOWERTYPE.E_MAGIC) { m_MagicTower = TempTowerBuildPrint; m_MagicTower.m_prefab = m_Magicprefab; m_MagicTower.m_Upgradeprefab = m_MagicUpgradeprefab; m_MagicPriceTxt.text = m_MagicTower.m_nCost.ToString(); } } }
void BuildTower(TowerBuildPrint TowerBuildPrint) { if (PlayerStats.nMoney < TowerBuildPrint.m_nCost) { return; } PlayerStats.nMoney -= TowerBuildPrint.m_nCost; GameObject effect = Instantiate(m_TowerBuildMGR.m_buildEffect, GetBuildPosition(), Quaternion.identity); Destroy(effect, 3f); //GameObject Tower = Instantiate(m_TowerBuildPrintMGR.m_prefab, node.GetBuildPosition(), Quaternion.identity); GameObject Tower = Instantiate(TowerBuildPrint.m_prefab, GetBuildPosition(), TowerBuildPrint.m_prefab.transform.rotation); m_Tower = Tower; m_TowerBuildPrintMGR = TowerBuildPrint; m_TowerBuildMGR.ResetSelectTower(); }
public void SellTower() { if (m_bUpgarade) { PlayerStats.nMoney += m_TowerBuildPrintMGR.m_nSellUpgradePrice; } else { PlayerStats.nMoney += m_TowerBuildPrintMGR.m_nSellPrice; } GameObject effect = Instantiate(m_TowerBuildMGR.m_SellEffect, GetBuildPosition(), Quaternion.identity); Destroy(effect, 3f); Destroy(m_Tower); m_TowerBuildPrintMGR = null; m_bUpgarade = false; }
public void SelectNode(NodeMGR Node) { if (m_SelectNode == Node) { DeSelectNode(); return; } if (m_SelectNode != null) { NodeMGR BeforeTempNodeScript = m_SelectNode.GetComponent <NodeMGR>(); BeforeTempNodeScript.TowerRangeDisplay(false); } m_SelectNode = Node; m_TowerBuildPrintMGR = null; m_NodeUiMGR.SetTarget(m_SelectNode); NodeMGR TempNodeScript = m_SelectNode.GetComponent <NodeMGR>(); TempNodeScript.TowerRangeDisplay(true); }