void LeaveWave(SingleWave nowWave) { //把事件清理掉 nowWave._enemyDefeated -= new SingleWave.WaveFinish(OnWaveFinish); nowWave._enemyFall -= new SingleWave.WaveFail(OnWaveFail); nowWave._enemyHitted -= new SingleWave.WaveDefeatEnemy(OnEnemyDefeat); }
//目前的wave,首先要處理一些事件等等 void SetWave(SingleWave nowWave) { //更新到目前難度 //UpdateCreatorDiffculty(); //增加事件 nowWave._enemyDefeated += new SingleWave.WaveFinish(OnWaveFinish); nowWave._enemyFall += new SingleWave.WaveFail(OnWaveFail); nowWave._enemyHitted += new SingleWave.WaveDefeatEnemy(OnEnemyDefeat); }
public void CastEvent(int portraitID, string msg, int specEvent, SingleWave thisWave) { PortraitDisplay(portraitID); UIText.GetComponent <Text>().text = msg; if (specEvent != 0) { CustomEvent(specEvent); } audioSource.Play(); timer = 3; wave = thisWave; }
public void CastEvent(int portraitID, string msg, int specEvent, SingleWave thisWave) { PortraitDisplay(portraitID); counter = 0; text1 = msg; if (specEvent != 0) { CustomEvent(specialEvents[specEvent]); } audioSource.Play(); timer = 2; wave = thisWave; }
public override IEnumerator Spawn(Level level) { float totalWait = 0f; for (int i = 0; i < this.waves.Count; i++) { SingleWave wave = this.waves[i]; float delay = this.delays[i]; Util.Coroutine(wave.SpawnDelayed(delay, level)); float wait = wave.period * wave.count + delay; totalWait = Mathf.Max(wait, totalWait); } yield return(new WaitForSeconds(totalWait)); }
void Start() { if (gameObject.tag == "Enemy") { myWave = GameObject.FindWithTag("Wave").GetComponent <SingleWave>(); } hp = maxHp; if (isPlayer) { shield = GetComponent <Shield>(); AdjustUI(); } else { hpbar = GameObject.Find("EnemyHp").GetComponent <HpBar>(); } }
public void setWaveConfig(SingleWave waveConfig) { this.waveConfig = waveConfig; }
void ExecuteWave(SingleWave nowWave) { //Debug.Log("Execute"); nowWave.Execute(); }