| | |
| | | // 血条位置的设定 |
| | | PreCalculateTowerBloodUi(); |
| | | |
| | | float[] gapArr = { 0.2f, 0.7f }; |
| | | m_arrTGO = new EndlessTowerGridOpen[dimensions.x, dimensions.y]; |
| | | |
| | | for (int x = 0; x < dimensions.x; ++x) |
| | |
| | | buyButton.transform.SetParent(container.transform); |
| | | |
| | | Vector3 pos = buyButton.transform.position; |
| | | pos.x = arrGridCentPos[x, y].x; |
| | | pos.z = arrGridCentPos[x, y].y; |
| | | pos.x = arrGridCentPos[x, y].x + (x - 2) * gapArr[3 - y]; |
| | | pos.z = arrGridCentPos[x, y].y + 6f; |
| | | pos.y = 30; |
| | | buyButton.transform.position = pos; |
| | | buyButton.transform.localRotation = Quaternion.identity; |
| | |
| | | arrTowerEnergyUi = new EnergyUICtl[dimensions.x, AttackRowNumbers]; |
| | | arrTowerEnergyEffect = new ParticleSystem[dimensions.x, AttackRowNumbers]; |
| | | |
| | | float[] gapArr = { 0.4f, 0.6f }; |
| | | |
| | | for (int x = 0; x < dimensions.x; x++) |
| | | { |
| | | for (int y = 0; y < AttackRowNumbers; ++y) |
| | |
| | | arrTowerBloodUi[x, y] = tbv; |
| | | tbv.gameObject.SetActive(false); |
| | | |
| | | Vector3 targetPos = GridToWorld(new IntVector2(x, dy - y), new IntVector2(2, 1)); |
| | | |
| | | // 子弹条 |
| | | img = Instantiate(towerBulletUIPrefab); |
| | | img.transform.SetParent(container.transform, true); |
| | | tpos = img.transform.position; |
| | | tpos.x = m_arrTowerBulletUIPos[x, y].x + 4.2f; |
| | | tpos.z = m_arrTowerBulletUIPos[x, y].y - 0.5f; |
| | | tpos.y = 30f; |
| | | img.transform.position = tpos; |
| | | img.transform.localScale = Vector3.one; |
| | | img.transform.localRotation = Quaternion.identity; |
| | | img.transform.SetParent(transform, false); |
| | | img.transform.position = targetPos; |
| | | Vector3 pos = img.transform.position; |
| | | pos.x -= 1f; |
| | | img.transform.position = pos; |
| | | |
| | | BulletUICtl buc = img.GetComponent<BulletUICtl>(); |
| | | arrTowerBulletUi[x, y] = buc; |
| | |
| | | img = Instantiate(towerEnergyUIPrefab); |
| | | img.transform.SetParent(container.transform); |
| | | tpos = img.transform.position; |
| | | tpos.x = m_arrTowerBulletUIPos[x, y].x + 4.2f; |
| | | tpos.z = m_arrTowerBulletUIPos[x, y].y - 0.5f; |
| | | tpos.x = m_arrTowerBulletUIPos[x, y].x + 4.4f + (x - 2) * gapArr[y]; |
| | | tpos.z = m_arrTowerBulletUIPos[x, y].y + 5f; |
| | | tpos.y = 30f; |
| | | img.transform.position = tpos; |
| | | img.transform.localScale = Vector3.one; |
| | |
| | | |
| | | // 设置播放特效对应的3D坐标: |
| | | Vector3 vpos = GridToWorld(new IntVector2(x, dy - y), new IntVector2(2, 1)); |
| | | vpos.x -= (gridSize / 2.0f); |
| | | vpos.y += 5.0f; |
| | | vpos.x -= 1f; |
| | | |
| | | arrTowerEnergyEffect[x, y] = Instantiate(energyEffectPrefab); |
| | | arrTowerEnergyEffect[x, y].transform.position = vpos; |