public void InitAmp(TowerMng _TowerMng, MapMng _MapMng, int x, int y, GameObject _LoadRoot, GameObject _AmpLine, GameObject ObjRoot, Tower tower) { //Tower target = new Tower(); //for(int i=0;i<_TowerMng._TowerList.Count;i++) //{ // if (_TowerMng._TowerList[i]._AmpTarget) // { // target = _TowerMng._TowerList[i]; // target._AmpTarget = false; // } //} if (tower._AmpType_Hero == 1)//Guitar { GetComponent <Tower>().Init("amp", 5, 1.5f, ObjRoot, 250, 0); _AmpType = 1; _MainBody = StageMng.Data._Towers[0]; } else if (tower._AmpType_Hero == 2)//Drum { GetComponent <Tower>().Init("amp", 5, 1.5f, 0); _MainBody = StageMng.Data._Towers[1]; _AmpType = 2; } else if (tower._AmpType_Hero == 3)//Bass { _AmpType = 3; GetComponent <Tower>().Init("amp", 5, 1.5f, ObjRoot, 250, 0); _MainBody = StageMng.Data._Towers[2]; } else if (tower._AmpType_Hero == 4)//KeyBoard { _AmpType = 4; GetComponent <Tower>().Init("amp", 5, 1.5f, ObjRoot, 250, 0); _MainBody = StageMng.Data._Towers[3]; } _LinkIcon.SetActive(true); _LinkIconArray[_AmpType - 1].SetActive(true); _TowerMng._TowerList.Add(GetComponent <Tower>()); _MapMng.RedTileSet(x, y); GameObject line = NGUITools.AddChild(_LoadRoot, _AmpLine); line.transform.localPosition = transform.localPosition + new Vector3(-640, -360, 0); line.transform.localEulerAngles = new Vector3(0, 0, Mathf.Atan2(transform.localPosition.y - tower.transform.localPosition.y, transform.localPosition.x - tower.transform.localPosition.x) * Mathf.Rad2Deg); line.GetComponent <UI2DSprite>().width = (int)Vector2.Distance(transform.localPosition, tower.transform.localPosition); _ParentSet = true; StartCoroutine(Update1()); }
void CreateTower(int number, int x, int y) { if (number == 4)//AMP { if (_TowerMng._TowerList.Count >= 1) { for (int i = 0; i < _TowerMng._TowerList.Count; i++) { _TowerMng._TowerList[i]._AmpTarget = false; } GameObject obj = NGUITools.AddChild(_ObjectRoot, _TowerObjectArray[number]); obj.transform.localPosition = new Vector3(x * _TileSize + _TileSize / 2, y * _TileSize + _TileSize / 2, 0);// + new Vector3(140, 105, 0); obj.GetComponent <Tower>()._Amp = true; obj.GetComponent <Tower>()._MyAnimation.Init("amp"); //float range = Vector2.Distance(obj.transform.localPosition, _TowerMng._TowerList[0].transform.localPosition); //int tnum = 0; //for (int i = 1; i < _TowerMng._TowerList.Count; i++) //{ // if (range > Vector2.Distance(obj.transform.localPosition, _TowerMng._TowerList[i].transform.localPosition) && // !_TowerMng._TowerList[i]._Amp) // { // tnum = i; // range = Vector2.Distance(obj.transform.localPosition, _TowerMng._TowerList[i].transform.localPosition); // } //} _AmpTemp = obj.GetComponent <Tower_Amp>(); //_AmpTempNumber = tnum; _AmpTempX = x; _AmpTempY = y; _AmpTargetSelectBG.SetActive(true); _AmpSelecting = true; } } else { float[] Rank_DamagePercent = { 75, 85, 100, 115, 125 }; if (number == 0 && !_SetGuitarTower) { GameObject obj = NGUITools.AddChild(_ObjectRoot, _TowerObjectArray[number]); obj.transform.localPosition = new Vector3(x * _TileSize + _TileSize / 2, y * _TileSize + _TileSize / 2, 0);// + new Vector3(140, 105, 0); obj.GetComponent <Tower>().Init("guitar", 1, 1.3f, _ObjectRoot, 250, (8.0f + (4.0f * StaticMng.Instance._GuitarTowerLevel)) * (Rank_DamagePercent[StaticMng.Instance._GuitarTowerRank - 1] / 100.0f)); _SetGuitarTower = true; _TowerMng._TowerList.Add(obj.GetComponent <Tower>()); _MapMng.RedTileSet(x, y); StageMng.Data._Towers[0] = obj.GetComponent <Tower>(); StageMng.Data._TowerSet[0] = true; } else if (number == 1 && !_SetDrumTower) { GameObject obj = NGUITools.AddChild(_ObjectRoot, _TowerObjectArray[number]); obj.transform.localPosition = new Vector3(x * _TileSize + _TileSize / 2, y * _TileSize + _TileSize / 2, 0);// + new Vector3(140, 105, 0); obj.GetComponent <Tower>().Init("drum", 2, 1.4f, (1.0f + (0.5f * StaticMng.Instance._DrumTowerLevel)) * (Rank_DamagePercent[StaticMng.Instance._DrumTowerRank - 1] / 100.0f)); _SetDrumTower = true; _TowerMng._TowerList.Add(obj.GetComponent <Tower>()); _MapMng.RedTileSet(x, y); StageMng.Data._Towers[1] = obj.GetComponent <Tower>(); StageMng.Data._TowerSet[1] = true; } else if (number == 2 && !_SetBassTower) { GameObject obj = NGUITools.AddChild(_ObjectRoot, _TowerObjectArray[number]); obj.transform.localPosition = new Vector3(x * _TileSize + _TileSize / 2, y * _TileSize + _TileSize / 2, 0);// + new Vector3(140, 105, 0); obj.GetComponent <Tower>().Init("bass", 3, 1.5f, _ObjectRoot, 250, (3.0f + (1.5f * StaticMng.Instance._BassTowerLevel)) * (Rank_DamagePercent[StaticMng.Instance._BassTowerRank - 1] / 100.0f)); _SetBassTower = true; _TowerMng._TowerList.Add(obj.GetComponent <Tower>()); _MapMng.RedTileSet(x, y); StageMng.Data._Towers[2] = obj.GetComponent <Tower>(); StageMng.Data._TowerSet[2] = true; } else if (number == 3 && !_SetKeyBoardTower) { GameObject obj = NGUITools.AddChild(_ObjectRoot, _TowerObjectArray[number]); obj.transform.localPosition = new Vector3(x * _TileSize + _TileSize / 2, y * _TileSize + _TileSize / 2, 0);// + new Vector3(140, 105, 0); obj.GetComponent <Tower>().Init("keyboard", 4, 2.0f, _ObjectRoot, 250, (4.0f + (2.0f * StaticMng.Instance._KeyBoardTowerLevel)) * (Rank_DamagePercent[StaticMng.Instance._KeyBoardTowerRank - 1] / 100.0f)); _SetKeyBoardTower = true; _TowerMng._TowerList.Add(obj.GetComponent <Tower>()); _MapMng.RedTileSet(x, y); StageMng.Data._Towers[3] = obj.GetComponent <Tower>(); StageMng.Data._TowerSet[3] = true; } _TowerIconGrid.SetActive(true); } }