弹出表情气泡仿魔兽的转技能CD实现

突然发现好久没有更新了,大冬天有点懈怠勒~~

以后陆续总结一些游戏中的好玩的小特效。

下面的代码中已经把两个特效的实现封装到了类里面,,有要的朋友可以参考一下。

1. 红毛被打飞的时候的弹出气泡表情

关键实现就是 ScaleTo 的应用

void BubbleLayer::show(){m_IsVisible = true;this->setScale(0);ScaleTo* scaleTo = ScaleTo::create(0.15, 1.25);ScaleTo* scaleTo2 = ScaleTo::create(0.1, 1);this->runAction(Sequence::createWithTwoActions(scaleTo,scaleTo2));}void BubbleLayer::hide(){m_IsVisible = false;ScaleTo* scaleTo = ScaleTo::create(0.15, 1.25);ScaleTo* scaleTo2 = ScaleTo::create(0.1, 0);this->runAction(Sequence::createWithTwoActions(scaleTo,scaleTo2));}调用接口是 refresh m_bubble->refresh(buffStr);if(m_bubble->getIsVisible()){m_bubble->setPosition(emotionPoint);}

2. 技能"转CD"

关键实现是对 ProgressTimer 的应用

void SkillBtn::startCooldown(){m_CurrentInterval = 0;schedule(schedule_selector(SkillBtn::cooldownUpdate));_pProgressCD->setVisible(true);m_IsTouchable = false;}void SkillBtn::cooldownUpdate(float dt){if(m_CurrentInterval <= m_CooldownTime){m_CurrentInterval += dt;_pProgressCD->setPercentage( 100 * (m_CooldownTime – m_CurrentInterval) / m_CooldownTime);}else{unschedule(schedule_selector(SkillBtn::cooldownUpdate));_pProgressCD->setVisible(false);m_IsTouchable = true;}}调用方法SkillBtn *btn = (SkillBtn *)getChildByTag(tag_skillbtn_1);btn->startCooldown();

cooldown期间屏蔽了点击操作

代码下载

不要害怕错过什么,因为在路上你就已经收获了自由自在的好心情。

弹出表情气泡仿魔兽的转技能CD实现

相关文章:

你感兴趣的文章:

标签云: