Ejemplo n.º 1
0
void Gwen::Anim::Think()
{
	Gwen::Anim::Animation::List::iterator it = g_Animations.begin();

	if ( it != g_Animations.end() )
	{
		Gwen::Anim::Animation::ChildList::iterator itChild;
		Gwen::Anim::Animation* anim;

		do
		{
			if ( ( itChild = it->second.begin() ) != it->second.end() )
			{
				do
				{
					anim = *itChild;
					anim->Think();

					if ( anim->Finished() )
					{
						itChild = it->second.erase( itChild );
						delete anim;
					}
					else
					{
						++itChild;
					}
				}
				while ( itChild != it->second.end() );
			}
		}
		while ( ++it != g_Animations.end() );
	}
}