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(); } } }