void CommandRestartParticleEffect::Execute() { BaseParticleEditorNode* selectedNode = ParticlesEditorController::Instance()->GetSelectedNode(); EffectParticleEditorNode* effectNode = dynamic_cast<EffectParticleEditorNode*>(selectedNode); if (!effectNode || !effectNode->GetRootNode() || !effectNode->GetRootNode()) { return; } ParticleEffectComponent * effectComponent = effectNode->GetParticleEffectComponent(); DVASSERT(effectComponent); effectComponent->Restart(); }
void CommandStartStopParticleEffect::Execute() { BaseParticleEditorNode* selectedNode = ParticlesEditorController::Instance()->GetSelectedNode(); EffectParticleEditorNode* effectNode = dynamic_cast<EffectParticleEditorNode*>(selectedNode); if (!effectNode || !effectNode->GetRootNode()) { return; } ParticleEffectComponent* effectComponent = effectNode->GetParticleEffectComponent(); if (this->isStart) { effectComponent->Start(); } else { effectComponent->Stop(); } }