Assets/Prefabs/Towers/Fire/GrowUpTower.prefab | ●●●●● patch | view | raw | blame | history | |
Assets/Prefabs/UI/EnergyUI.prefab | ●●●●● patch | view | raw | blame | history | |
Assets/Prefabs/UI/EnergyUI.prefab.meta | ●●●●● patch | view | raw | blame | history | |
Assets/Scenes/Levels/Battle/GemBattle.unity | ●●●●● patch | view | raw | blame | history | |
Assets/Scripts/ActionGameFramework/Health/Damager.cs | ●●●●● patch | view | raw | blame | history | |
Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGrid.cs | ●●●●● patch | view | raw | blame | history | |
Assets/Scripts/TowerDefense/Towers/Tower.cs | ●●●●● patch | view | raw | blame | history | |
Assets/Scripts/TowerDefense/UI/BulletUICtl.cs | ●●●●● patch | view | raw | blame | history | |
Assets/Scripts/TowerDefense/UI/EnergyUICtl.cs | ●●●●● patch | view | raw | blame | history | |
Assets/Scripts/TowerDefense/UI/EnergyUICtl.cs.meta | ●●●●● patch | view | raw | blame | history |
Assets/Prefabs/Towers/Fire/GrowUpTower.prefab
@@ -110,17 +110,19 @@ poisonTex: {fileID: 0} frozenTex: {fileID: 0} commonTex: {fileID: 0} PoisonParticle: {fileID: 0} PoisonEndParticle: {fileID: 0} towerName: GrowUpTower dimensions: x: 1 y: 1 towerFeature: 0 materialMonsterSelf: {fileID: 2100000, guid: 65706b9ab6be2dc45bde7720914dd662, type: 2} materialMonsterSelf: {fileID: 2100000, guid: e4a344b484251ce4e8b5f18e0618e647, type: 2} materialMonsterOppo: {fileID: 2100000, guid: 005b2213e521ef04a9f51bde68b9735f, type: 2} materialTowerAttackSelf: {fileID: 2100000, guid: 56734acd3a9832f458892e0ba6f1901b, type: 2} materialTowerWaitSelf: {fileID: 2100000, guid: 492ec3bf4cc3d7c4ca1649716bf69377, type: 2} materialTowerAttackSelf: {fileID: 0} materialTowerWaitSelf: {fileID: 0} materialTowerAttackOppo: {fileID: 0} materialTowerWaitOppo: {fileID: 0} eTowerFuntion: 0 bulletCtl: {fileID: 0} levels: Assets/Prefabs/UI/EnergyUI.prefab
New file @@ -0,0 +1,167 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &4636030447447409971 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4636030447447409970} - component: {fileID: 4636030447447409972} - component: {fileID: 4636030447447409973} - component: {fileID: -9145516343146749478} m_Layer: 5 m_Name: EnergyUI m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4636030447447409970 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447447409971} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4636030447972189692} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 21, y: 90} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &4636030447447409972 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447447409971} m_CullTransparentMesh: 0 --- !u!114 &4636030447447409973 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447447409971} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 257d2719341218740b740683c3aa8355, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &-9145516343146749478 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447447409971} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 739451dc4b5ded044ae7641fcb531e35, type: 3} m_Name: m_EditorClassIdentifier: energyScaleMask: {fileID: 4636030447972189695} --- !u!1 &4636030447972189693 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4636030447972189692} - component: {fileID: 4636030447972189694} - component: {fileID: 4636030447972189695} m_Layer: 5 m_Name: EnergyProgress m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4636030447972189692 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447972189693} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 0, z: 1} m_Children: [] m_Father: {fileID: 4636030447447409970} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 21, y: 90} m_Pivot: {x: 0.5, y: 0} --- !u!222 &4636030447972189694 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447972189693} m_CullTransparentMesh: 0 --- !u!114 &4636030447972189695 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4636030447972189693} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 747f83368dfba694c89bc6908324bb94, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 Assets/Prefabs/UI/EnergyUI.prefab.meta
New file @@ -0,0 +1,7 @@ fileFormatVersion: 2 guid: 0d97566feabc1d644862df3fb52071a3 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: Assets/Scenes/Levels/Battle/GemBattle.unity
@@ -5269,6 +5269,8 @@ type: 3} towerBulletUIPrefab: {fileID: 4636030447447409971, guid: f6edf4c41f0dac54d94e67945bca23f0, type: 3} towerEnergyUIPrefab: {fileID: 4636030447447409971, guid: 0d97566feabc1d644862df3fb52071a3, type: 3} waitBuyBtnPrefab: {fileID: 1470395276146401766, guid: c05f40848dbdf1a4da8b4e45d7b9f1e3, type: 3} TestParticle: {fileID: 0} @@ -13999,6 +14001,8 @@ type: 3} towerBulletUIPrefab: {fileID: 4636030447447409971, guid: f6edf4c41f0dac54d94e67945bca23f0, type: 3} towerEnergyUIPrefab: {fileID: 4636030447447409971, guid: 0d97566feabc1d644862df3fb52071a3, type: 3} waitBuyBtnPrefab: {fileID: 1470395276146401766, guid: c05f40848dbdf1a4da8b4e45d7b9f1e3, type: 3} TestParticle: {fileID: 312346380397794538, guid: bd7af3572d4954542a9b552ea0736ac6, Assets/Scripts/ActionGameFramework/Health/Damager.cs
@@ -115,9 +115,6 @@ get { float fd = damage * damageMulti; if (damageMulti > 1.0f) Debug.Log("hello,world:" + damageMulti.ToString() ); damageMulti = 1.0f; return fd + inSceneUpGradeDamage; } Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGrid.cs
@@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using Core.Utilities; using KTGMGemClient; using Microsoft.VisualBasic; @@ -43,6 +44,10 @@ /// 相应的界面指针传到塔防的数据结构内。 /// </summary> public GameObject towerBulletUIPrefab; /// <summary> /// 充能条对应的界面 /// </summary> public GameObject towerEnergyUIPrefab; /// <summary> /// 等待购买开启对应按钮. @@ -115,6 +120,7 @@ /// </summary> Vector2[] m_arrTowerBulletUIPos; BulletUICtl[] arrTowerBulletUi; EnergyUICtl[] arrTowerEnergyUi; /// <summary> @@ -402,6 +408,9 @@ if (arrTowerBulletUi[x] != null) arrTowerBulletUi[x].gameObject.SetActive(false); if (arrTowerEnergyUi[x] != null) arrTowerEnergyUi[x].gameObject.SetActive(false); m_Tiles[x, y].SetTileType(PlacementGridType.EGridDestroyed); @@ -711,15 +720,21 @@ // 处理攻击塔位对应的血条 m_arrTowerBulletUIPos = new Vector2[dimensions.x]; arrTowerBulletUi = new BulletUICtl[dimensions.x]; arrTowerEnergyUi = new EnergyUICtl[dimensions.x]; for (int x = 0; x < dimensions.x; x++) { m_arrTowerBulletUIPos[x].x = m_arrGridCentUIPos[x, dy].x + m_fGridUISize/2.0f - 10; m_arrTowerBulletUIPos[x].y = m_arrGridCentUIPos[x, dy].y; GameObject img = Instantiate(towerBulletUIPrefab); GameObject go = GameObject.Find("BattleMainUI"); if (!go) continue; Transform tp = go.GetComponent<Transform>(); GameObject img; img = Instantiate(towerBulletUIPrefab); img.GetComponent<Transform>().SetParent(tp, true); Vector3 tpos = img.transform.position; tpos.x = m_arrTowerBulletUIPos[x].x; @@ -731,6 +746,20 @@ BulletUICtl buc = img.GetComponent<BulletUICtl>(); arrTowerBulletUi[x] = buc; buc.gameObject.SetActive(false); // 把充能条也创建出来了. img = Instantiate(towerEnergyUIPrefab); img.GetComponent<Transform>().SetParent(tp, true); tpos = img.transform.position; tpos.x = m_arrTowerBulletUIPos[x].x; tpos.y = m_arrTowerBulletUIPos[x].y; img.transform.position = tpos; img.transform.SetAsFirstSibling(); EnergyUICtl euc = img.GetComponent<EnergyUICtl>(); arrTowerEnergyUi[x] = euc; euc.gameObject.SetActive(false); } return; Assets/Scripts/TowerDefense/Towers/Tower.cs
@@ -218,7 +218,6 @@ // // 根据是否是子弹塔防来决定是否显示相应的界面 BulletUICtl buc = this.placementArea.GetBulletUICtl(gridPosition.x); /* if ( (this.eTowerFuntion == ETowerFuntion.BULLET) && (buc != null ) ) { // 设置数据 @@ -231,7 +230,7 @@ // 清空数据 buc.gameObject.SetActive(false); this.bulletCtl = null; }*/ } } } Assets/Scripts/TowerDefense/UI/BulletUICtl.cs
@@ -59,7 +59,7 @@ { if (bulletScaleMask == null) return; float scaleY = 1.0f - curBNum / (float)totalBNum - fAdjValue; bulletScaleMask.rectTransform.DOScaleY( scaleY, 0.1f); bulletScaleMask.rectTransform.DOScaleY( scaleY, 0.0f); } // Update is called once per frame Assets/Scripts/TowerDefense/UI/EnergyUICtl.cs
New file @@ -0,0 +1,41 @@ using DG.Tweening; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class EnergyUICtl : MonoBehaviour { /// <summary> /// 用于显示能量条进度 /// </summary> public Image energyScaleMask; /// <summary> /// 当前的能量条进度. /// </summary> protected float currentProgress; // Start is called before the first frame update void Start() { currentProgress = 0; //this.SetEnergyProgress(0); } /// <summary> /// 显示并更新能量条进度. /// </summary> /// <param name="pro"></param> public void SetEnergyProgress(float pro) { energyScaleMask.rectTransform.DOScaleY( pro, 0.3f ); currentProgress = pro; } // Update is called once per frame void Update() { } } Assets/Scripts/TowerDefense/UI/EnergyUICtl.cs.meta
New file @@ -0,0 +1,11 @@ fileFormatVersion: 2 guid: 739451dc4b5ded044ae7641fcb531e35 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: