You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			53 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C#
		
	
		
		
			
		
	
	
			53 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C#
		
	
| 
											2 years ago
										 | using System.Collections.Generic; | ||
|  | using UnityEngine; | ||
|  | using UnityEngine.Serialization; | ||
|  | 
 | ||
|  | namespace Game | ||
|  | { | ||
|  |     [System.Serializable] | ||
|  |     public class NumAttacker | ||
|  |     { | ||
|  |         public EAIModuleType type; | ||
|  |         public int num; | ||
|  |     } | ||
|  |     public class LevelNodeMonsterWave : LevelNode | ||
|  |     { | ||
|  |         [FormerlySerializedAs("AttackRound")] [Header("攻击周期(秒)")] public float attackRound; | ||
|  |         [FormerlySerializedAs("AttackFrequency")] [Header("攻击频率(秒/次)")] public float attackFrequency; | ||
|  |         [FormerlySerializedAs("AttackTimes")] [Header("攻击次数")] public int attackTimes; | ||
|  |         [FormerlySerializedAs("NumAttackers")] [Header("同时攻击人数")] public NumAttacker[] numAttackers; | ||
|  |         private int _mWaveIndex; | ||
|  |         private LevelNodeMonster[] _mMonsterList; | ||
|  |         private Dictionary<EAIModuleType, int> _mNumAttackerDict = new Dictionary<EAIModuleType, int>(); | ||
|  | 
 | ||
|  |         public override void OnInit() | ||
|  |         { | ||
|  |             _mMonsterList = GetComponentsInChildren<LevelNodeMonster>(); | ||
|  |             for (EAIModuleType i = 0; i < EAIModuleType.Max; i++) | ||
|  |             { | ||
|  |                 _mNumAttackerDict[i] = 0; | ||
|  |             } | ||
|  |             for (int i = 0; i < numAttackers.Length; i++) | ||
|  |             { | ||
|  |                 var item = numAttackers[i]; | ||
|  |                 _mNumAttackerDict[item.type] += item.num; | ||
|  |             } | ||
|  |         } | ||
|  |         public LevelNodeMonster[] GetMonsters() | ||
|  |         { | ||
|  |             return _mMonsterList; | ||
|  |         } | ||
|  |         public int GetModuleNum(EAIModuleType type) | ||
|  |         { | ||
|  |             return _mNumAttackerDict[type]; | ||
|  |         } | ||
|  |         public void SetWaveIndex(int index) | ||
|  |         { | ||
|  |             _mWaveIndex = index; | ||
|  |         } | ||
|  |         public int GetWaveIndex() | ||
|  |         { | ||
|  |             return _mWaveIndex; | ||
|  |         } | ||
|  |     } | ||
|  | } |