/// <summary> /// Invoked when any of this waves entities is disposed /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void EntityDisposed(object sender, DisposeEventArgs e) { this.dispose_bag.Add(e.Sprite); if (this.dispose_bag.Count == this.num_entities) { this.WaveFinished.Invoke(this, new WaveFinishedEventArgs(this, this.waveID)); } }
/// <summary> /// Enqueues an item to the Concurrent DisposeQueue /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Dispose(object sender, DisposeEventArgs e) { // PlayerOne being disposed.. game over. if (e.Sprite == objectManager.PlayerOne) { this.updateQueue.Enqueue(new GameOverEventArgs(false)); } disposeQueue.Enqueue(e); }
public void ParentDisposed(object sender, DisposeEventArgs e) { this.Dispose.Invoke(this, new DisposeEventArgs(this.bar)); }