Ejemplo n.º 1
0
void PlayActionEffectComboInstance::tick()
{
	assert(m_pkOwnerEffect && m_pkOwnerEffect->getOwnerNode());
	CCNode* ccNode = m_pkOwnerEffect->getOwnerNode()->getCCNode();

	switch (m_kActionEffectVector->getPlayMode())
	{
	case E_CMBMODE_SEQ:
		for (int i = 0; i < m_kActionVector.size(); i++)
		{
			ActionList* actionList = m_kActionVector[i];
			if (!actionList->isDone())
			{
				actionList->tick( ccNode );
				break;
			}
		}
		break;

	case E_CMBMODE_ALL:	
		for (int i = 0; i < m_kActionVector.size(); i++)
		{
			m_kActionVector[i]->tick( ccNode );
		}
		break;
	}

	// looping
	if (isFinishedOnce())
	{
		m_nPlayedCount++;
		const LoopModify& loop = getLoopMode();
		if (loop.isModeLoopCount() || loop.isModeLoop())
		{
			restart();
		}
	}
}