| | |
| | | get { return levelData.upgradeDescription; } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// Initialises the Effects attached to this object |
| | | /// </summary> |
| | |
| | | m_ParentTower = tower; |
| | | } |
| | | |
| | | private Transform mat; |
| | | private MeshRenderer myRender; |
| | | |
| | | Vector3 normalScale; |
| | | |
| | | private Vector3 fireScale = new Vector3(1.92f, 1.92f, 2.208f); |
| | | private Vector3 woodScale = new Vector3(1.5f, 1.5f, 2.82f); |
| | | private Vector3 waterScale = new Vector3(1.0f, 1.0f, 1.88f); |
| | | |
| | | private Vector3 fireOffectp = new Vector3(0f, 0f, -0.15f); |
| | | |
| | | private Vector3 woodOffectp = new Vector3(0.08f, 0f, 0.2f); |
| | | |
| | | private void Awake() |
| | | { |
| | | mat = transform.Find("Cube"); |
| | | myRender = mat.GetComponent<MeshRenderer>(); |
| | | normalScale = new Vector3(1.5f, 1.5f, 1.5f); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 未上阵塔缩放,固定缩放 |
| | | /// </summary> |
| | | public void NormalScale() |
| | | { |
| | | mat.localScale = normalScale; |
| | | mat.localPosition = Vector3.zero; |
| | | } |
| | | |
| | | private bool isAttack; |
| | | /// <summary> |
| | | /// 设置火宝石攻速 |
| | | /// </summary> |
| | | /// <param name="isAttack"></param> |
| | | public void SetFireMatSpeed(bool isFast) |
| | | { |
| | | if (isFast && isAttack) |
| | | { |
| | | myRender.material.SetFloat("_Speed", 40); |
| | | } |
| | | else |
| | | { |
| | | //还原10 |
| | | myRender.material.SetFloat("_Speed", 8); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 上阵塔缩放 |
| | | /// </summary> |
| | | public void ResetScale() |
| | | { |
| | | if (transform.name.StartsWith("GrowUpTower")) |
| | | { |
| | | //火元素 |
| | | mat.localScale = fireScale; |
| | | mat.localPosition = fireOffectp; |
| | | } |
| | | else if (transform.name.StartsWith("BlinkTower")) |
| | | { |
| | | //木元素 |
| | | mat.localScale = woodScale; |
| | | mat.localPosition = woodOffectp; |
| | | |
| | | } |
| | | else if (transform.name.StartsWith("CopyCatTower")) |
| | | { |
| | | //水元素 |
| | | //mat.localScale = woodScale; |
| | | |
| | | Vector3 scale = mat.localScale; |
| | | |
| | | if (!this.bScaleForCombat) |
| | | { |
| | | scale.z *= 1.267f; |
| | | mat.localScale = scale; |
| | | Vector3 pos = mat.localPosition; |
| | | pos.z -= 0.2f; |
| | | mat.localPosition = pos; |
| | | bScaleForCombat = true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 当前的TowerLevel设置为对应怪物的材质显示 |
| | | /// </summary> |
| | | /// <param name="mat"></param> |
| | | public void SetTowerMonsterMat(Material mat) |
| | | public void SetTowerMonsterMat(Material material, bool isAttack) |
| | | { |
| | | if (mat == null) return; |
| | | // 查找子结点: |
| | | foreach (Transform t in transform.GetComponentsInChildren<Transform>()) |
| | | { |
| | | if (t.name == "Cube") |
| | | { |
| | | t.GetComponent<MeshRenderer>().material = mat; |
| | | Vector3 scale = t.localScale; |
| | | if (material == null) return; |
| | | |
| | | if (!this.bScaleForCombat) |
| | | { |
| | | scale.z *= 1.267f; |
| | | t.localScale = scale; |
| | | Vector3 pos = t.localPosition; |
| | | pos.z -= 0.2f; |
| | | t.localPosition = pos; |
| | | bScaleForCombat = true; |
| | | } |
| | | this.isAttack = isAttack; |
| | | myRender.material = material; |
| | | if (isAttack) |
| | | { |
| | | if (transform.name.StartsWith("GrowUpTower") || transform.name.StartsWith("BlinkTower")) |
| | | { |
| | | float t = Mathf.Floor(Time.time); |
| | | float offect = t % 8; |
| | | myRender.material.SetFloat("_ChangeTime", Mathf.Floor(Time.time - offect)); |
| | | |
| | | } |
| | | } |
| | | else |
| | | { |
| | | myRender.material.SetFloat("_ChangeTime", Mathf.Floor(Time.time)); |
| | | } |
| | | |
| | | //Debug.Log("当前时间Time.time:"+Time.time); |
| | | // if (transform.name.StartsWith("GrowUpTower") && mat.localPosition != fireOffectp) |
| | | // { |
| | | // mat.localPosition = fireOffectp; |
| | | // } |
| | | // else if (transform.name.StartsWith("BlinkTower") && mat.localPosition != woodOffectp) |
| | | // { |
| | | // //木元素 |
| | | // mat.localPosition = woodOffectp; |
| | | // } |
| | | // // 查找子结点: |
| | | // foreach (Transform t in transform.GetComponentsInChildren<Transform>()) |
| | | // { |
| | | // if (t.name == "Cube") |
| | | // { |
| | | // t.GetComponent<MeshRenderer>().material = mat; |
| | | // //Vector3 scale = t.localScale; |
| | | |
| | | // // if (!this.bScaleForCombat) |
| | | // // { |
| | | // // scale.z *= 1.267f; |
| | | // // t.localScale = scale; |
| | | // // Vector3 pos = t.localPosition; |
| | | // // pos.z -= 0.2f; |
| | | // // t.localPosition = pos; |
| | | // // bScaleForCombat = true; |
| | | // // } |
| | | // } |
| | | // } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// </summary> |
| | | void Start() |
| | | { |
| | | |
| | | |
| | | } |
| | | |
| | | /// <summary> |