public void i_update(Object context) { for (int i = 0; i < _to_add.Count; i++) { _particles.Add(_to_add[i]); } _to_add.Clear(); for (int i = 0; i < _particles.Count; i++) { SPParticle itr = _particles[i]; itr.i_update(context); if (itr.should_remove(context)) { itr.do_remove(context); _to_remove.Add(itr); } } for (int i = 0; i < _to_remove.Count; i++) { _particles.Remove(_to_remove[i]); } _to_remove.Clear(); }
public void clear() { for (int i = 0; i < _particles.Count; i++) { SPParticle itr = _particles[i]; itr.do_remove(null); } _particles.Clear(); }