Assets/Prefabs/UI/Endless/BottomCanvas.prefab
@@ -3399,6 +3399,7 @@ beginDragStep: 0 guideThirdWaveStep: 0 darkGroundImg: {fileID: 4623057511338059854} GMBtn: {fileID: 0} --- !u!1 &4623057512730188692 GameObject: m_ObjectHideFlags: 0 Assets/Prefabs/UI/GMPanel.prefab
@@ -2051,6 +2051,85 @@ m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &2322950904165432749 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 390278849146172503} - component: {fileID: 6985707116480831674} - component: {fileID: 2278244430316628629} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &390278849146172503 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2322950904165432749} 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: [] m_Father: {fileID: 7138816553533510817} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 28.5, y: 3.9499903} m_SizeDelta: {x: -28, y: 44.099983} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6985707116480831674 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2322950904165432749} m_CullTransparentMesh: 0 --- !u!114 &2278244430316628629 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2322950904165432749} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, 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_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 35 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "\u65E0\u9650\u91CA\u653E\u6280\u80FD" --- !u!1 &2352833052201251510 GameObject: m_ObjectHideFlags: 0 @@ -3378,6 +3457,7 @@ - {fileID: 4154238555173318587} - {fileID: 4194420542261668727} - {fileID: 580281433} - {fileID: 7138816553533510817} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -6004,6 +6084,91 @@ m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &6156246034478813876 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7138816553533510817} - component: {fileID: 4090149269951173961} m_Layer: 5 m_Name: 0 (1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7138816553533510817 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6156246034478813876} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -0.00006103517} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3816649810714100738} - {fileID: 390278849146172503} m_Father: {fileID: 3349256846538989983} m_RootOrder: 11 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: -8.17, y: 82} m_SizeDelta: {x: 245.45972, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &4090149269951173961 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6156246034478813876} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 4865835282221787662} toggleTransition: 1 graphic: {fileID: 5368231734457722164} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: [] m_IsOn: 0 --- !u!1 &6315644736197012094 GameObject: m_ObjectHideFlags: 0 @@ -6313,6 +6478,82 @@ m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "5\u7EA7" --- !u!1 &6592600421902923509 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3816649810714100738} - component: {fileID: 3467252156456277279} - component: {fileID: 4865835282221787662} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &3816649810714100738 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6592600421902923509} 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: 1243345092286743546} m_Father: {fileID: 7138816553533510817} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 60, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &3467252156456277279 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6592600421902923509} m_CullTransparentMesh: 0 --- !u!114 &4865835282221787662 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6592600421902923509} 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: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 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!1 &7537806086408887646 GameObject: m_ObjectHideFlags: 0 @@ -6909,6 +7150,81 @@ m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &7890523607911646632 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1243345092286743546} - component: {fileID: 8447133158492106960} - component: {fileID: 5368231734457722164} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1243345092286743546 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7890523607911646632} 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: [] m_Father: {fileID: 3816649810714100738} 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: 60, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8447133158492106960 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7890523607911646632} m_CullTransparentMesh: 0 --- !u!114 &5368231734457722164 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7890523607911646632} 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: 10901, guid: 0000000000000000f000000000000000, type: 0} 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!1 &7940353752494966417 GameObject: m_ObjectHideFlags: 0 Assets/Scenes/Levels/Battle/Endless2D.unity
@@ -451,6 +451,12 @@ m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 49423732} m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &49762375 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1671498435182872930, guid: dcbcc0c51f9291c498c66e05663360e2, type: 3} m_PrefabInstance: {fileID: 1671498436155399979} m_PrefabAsset: {fileID: 0} --- !u!1 &96670465 GameObject: m_ObjectHideFlags: 0 @@ -4445,6 +4451,11 @@ propertyPath: NoBuffText value: objectReference: {fileID: 213376307} - target: {fileID: 7478702450202136628, guid: 29da21b318f42054db30c52123aa4dbf, type: 3} propertyPath: GMBtn value: objectReference: {fileID: 49762375} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 29da21b318f42054db30c52123aa4dbf, type: 3} --- !u!114 &877647586 stripped @@ -5921,7 +5932,7 @@ type: 3} m_PrefabInstance: {fileID: 1671498436155399979} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_GameObject: {fileID: 49762375} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b299ed121c24b1347a4c0dffb392051e, type: 3} @@ -10909,6 +10920,11 @@ propertyPath: WaterToggleGroup value: objectReference: {fileID: 1832175059} - target: {fileID: 1671498435182872928, guid: dcbcc0c51f9291c498c66e05663360e2, type: 3} propertyPath: InfiniteSkillToggle value: objectReference: {fileID: 3349256845298627642} - target: {fileID: 1671498435182872929, guid: dcbcc0c51f9291c498c66e05663360e2, type: 3} propertyPath: m_LocalPosition.x @@ -11097,6 +11113,11 @@ propertyPath: m_Name value: GMPanel objectReference: {fileID: 0} - target: {fileID: 3349256846538989978, guid: 956e8afbc5c59e6429b9cc31c627d660, type: 3} propertyPath: m_IsActive value: 0 objectReference: {fileID: 0} - target: {fileID: 3349256846538989983, guid: 956e8afbc5c59e6429b9cc31c627d660, type: 3} propertyPath: m_LocalPosition.x @@ -11274,3 +11295,15 @@ objectReference: {fileID: 1176213067} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 956e8afbc5c59e6429b9cc31c627d660, type: 3} --- !u!114 &3349256845298627642 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 4090149269951173961, guid: 956e8afbc5c59e6429b9cc31c627d660, type: 3} m_PrefabInstance: {fileID: 3349256845298627641} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: Assets/Scripts/Common/GameConfig.cs
@@ -94,6 +94,11 @@ /// </summary> public static bool IsNewbieStart; /// <summary> /// 无限释放技能 /// </summary> public static bool InfiniteSkill; #region 各个塔的偏移量 public static Vector3 fireScale = new Vector3(1.92f, 1.92f, 2.208f); public static Vector3 woodScale = new Vector3(1.5f, 1.5f, 2.82f); Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs
@@ -373,7 +373,7 @@ private void UpdateWoodAim() { // 离得最近的 Agent Agent agent = GetMinDistanceAgent(); Agent agent = AgentInsManager.instance.GetMinDisAgent(waveLineID, false); if (agent != null) { @@ -408,34 +408,6 @@ ++agent.WoodAimCount; } } } /// <summary> /// 获取距离终点最近的Agent /// </summary> /// <returns></returns> private Agent GetMinDistanceAgent() { Agent ret = null; float minDistance = -1f; WaveLineAgentInsMgr[] waveLineAgentIns = AgentInsManager.instance.GetWaveLineList(); WaveLineAgentInsMgr waveLineAgentInsMgr = waveLineAgentIns[waveLineID]; List<Agent> agents = waveLineAgentInsMgr.listAgent; Vector3 endPos = EndlessLevelManager.instance.GetHomeBasePosition(waveLineID + 1); for (int i = 0; i < agents.Count; ++i) { float distance = Mathf.Abs(agents[i].transform.position.z - endPos.z); if (minDistance < 0 || distance < minDistance) { minDistance = distance; ret = agents[i]; } } return ret; } /// <summary> Assets/Scripts/TowerDefense/Level/AgentInsManager.cs
@@ -78,44 +78,68 @@ /// </summary> public List<Agent> listAgent { get { return this.agentInsList; } } /// <summary> /// 获取距目标结点最近的Agent. /// </summary> /// <returns></returns> public Agent getMinDisAgent(bool _noPoison = false) { if (agentInsList.Count == 0) return null; // /// <summary> // /// 获取距目标结点最近的Agent. // /// </summary> // /// <returns></returns> // public Agent getMinDisAgent(bool _noPoison = false) // { // if (agentInsList.Count == 0) return null; // 排序,然后返回对应的数据 // 直接使用闭包函数来进行排序: agentInsList.Sort((left, right) => { if (left.distanceToDest > right.distanceToDest) { return 1; } else if (left.distanceToDest == right.distanceToDest) { return 0; } else { return -1; } }); // // 排序,然后返回对应的数据 // // 直接使用闭包函数来进行排序: // agentInsList.Sort((left, right) => // { // if (left.distanceToDest > right.distanceToDest) // { // return 1; // } // else if (left.distanceToDest == right.distanceToDest) // { // return 0; // } // else // { // return -1; // } // }); if (_noPoison) // if (_noPoison) // { // for (int ti = 0; ti < agentInsList.Count; ti++) // { // if (!agentInsList[ti].bInPoison) // return agentInsList[ti]; // } // return null; // } // else // return agentInsList[0]; // } public Agent GetMinDistanceAgent() { for (int ti = 0; ti < agentInsList.Count; ti++) Agent ret = null; float minDistance = -1f; WaveLineAgentInsMgr[] waveLineAgentIns = AgentInsManager.instance.GetWaveLineList(); WaveLineAgentInsMgr waveLineAgentInsMgr = waveLineAgentIns[waveLineID]; List<Agent> agents = waveLineAgentInsMgr.listAgent; Vector3 endPos = EndlessLevelManager.instance.GetHomeBasePosition(waveLineID + 1); for (int i = 0; i < agents.Count; ++i) { if (!agentInsList[ti].bInPoison) return agentInsList[ti]; float distance = Mathf.Abs(agents[i].transform.position.z - endPos.z); if (minDistance < 0 || distance < minDistance) { minDistance = distance; ret = agents[i]; } } return null; } else return agentInsList[0]; return ret; } } @@ -314,9 +338,11 @@ Agent ag; if (oppo) ag = oppoAgentWaveLineArray[lineid].getMinDisAgent(noPoison); // ag = oppoAgentWaveLineArray[lineid].getMinDisAgent(noPoison); ag = oppoAgentWaveLineArray[lineid].GetMinDistanceAgent(); else ag = agentWaveLineArray[lineid].getMinDisAgent(noPoison); // ag = agentWaveLineArray[lineid].getMinDisAgent(noPoison); ag = agentWaveLineArray[lineid].GetMinDistanceAgent(); // 这一行防止无限的循环下去。 if (forceGet) return ag; Assets/Scripts/TowerDefense/Targetting/Targetter.cs
Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs
@@ -1107,7 +1107,7 @@ { CloseCanPlace(); currentCanPlace = m_Tiles[x, y]; currentCanPlace.SetRender(true, isEmpty ? towerName : ""); currentCanPlace?.SetRender(true, isEmpty ? towerName : ""); // if (isEmpty) // { // currentCanPlace.SetTowerVirtualshadow(towerName); Assets/Scripts/TowerDefense/UI/EndlessBossSkill/BossSkillBubbleBomb.cs
@@ -290,7 +290,7 @@ if (config.IsAttackDeath || config.IsArrived) return; ++config.AttackCount; Debug.Log($"---- BubbleBombAgent Id: {id}, AttackCount: {config.AttackCount} ----"); // Debug.Log($"---- BubbleBombAgent Id: {id}, AttackCount: {config.AttackCount} ----"); if (config.AttackCount >= config.NeedAttackCount) AgentDead(config); @@ -437,5 +437,10 @@ } } } protected override List<int> GetTunelList() { return EndlessPortData.GetAllTunelByLevelWave(EndlessLevelManager.instance.CurrentLevel, EndlessLevelManager.instance.WaveManager.CurrentWaveIndex); } } } Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs
@@ -54,6 +54,8 @@ private CanvasGroup canvasGroup; public GameObject GMBtn; /// <summary> /// Awake is called when the script instance is being loaded. /// </summary> @@ -143,6 +145,7 @@ transform.Find("Panel/BuffPreviewButton").gameObject.SetActive(false); transform.Find("Panel/SwitchSpeed").gameObject.SetActive(false); GMBtn.SetActive(false); GameConfig.EnergyCount = 0; GameConfig.SkillLevel = 1; @@ -198,6 +201,7 @@ { transform.Find("Panel/BuffPreviewButton").gameObject.SetActive(true); transform.Find("Panel/SwitchSpeed").gameObject.SetActive(true); GMBtn.SetActive(true); } fireSkillCost = JsonDataCenter.GetSkillLevelInfo(fireSkillID, GameConfig.SkillLevel).cost; @@ -459,6 +463,14 @@ /// </summary> private void OnClickFireSkillBtn() { if (GameConfig.InfiniteSkill) { GuideEnergyUp(200); EndlessWaveLineManager.instance.PlayAllWaveLineEffect(); AgentInsManager.instance.ExecAllWavelineAttack(fireSkillID, GameConfig.SkillLevel, false); return; } //Debug.Log("释放了火技能:" + GameConfig.EnergyCount + " fireSkillCost:" + fireSkillCost); if (GameConfig.EnergyCount >= fireSkillCost) { Assets/Scripts/TowerDefense/UI/GM.cs
@@ -29,10 +29,20 @@ private int waterSelectedIndex; public Toggle InfiniteSkillToggle; // Start is called before the first frame update private void Start() { GMPanel.SetActive(false); InfiniteSkillToggle.onValueChanged.AddListener((bool select) => { GameConfig.InfiniteSkill = select; if (select) EndlessUIStart.instance.GuideEnergyUp(200); }); InfiniteSkillToggle.isOn = GameConfig.InfiniteSkill; } public void OnClickWood(int index)