private void updateFlyingFeather() { if (m_flyingFeather.Count == 0) { return; } LinkedListNode <Feather> node = m_flyingFeather.First; LinkedListNode <Feather> nextNode; do { Feather f = node.Value; nextNode = node.Next; if (!f.update(Time.deltaTime)) { m_flyingFeather.Remove(node); } node = nextNode; }while (node != null); }