1 / 12
文档名称:

23. 瘸腿蛤蟆笔记23-cocos2d-x-3.2 实现血条掉血特效.docx

格式:docx   大小:62KB   页数:12页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

23. 瘸腿蛤蟆笔记23-cocos2d-x-3.2 实现血条掉血特效.docx

上传人:endfrs 2017/12/12 文件大小:62 KB

下载得到文件列表

23. 瘸腿蛤蟆笔记23-cocos2d-x-3.2 实现血条掉血特效.docx

文档介绍

文档介绍:瘸腿蛤蟆笔记23-cocos2d-x-
上篇回顾
本篇名言:医生知道的事如此的少,他们的收费却是如此的高。[马克吐温]
上篇中,蛤蟆学****如何实现Dota中技能冷却特效。这次我们还是用同一个东西,但是实现不一样的特效。我们不能小看任何一个小功能,小功能也会有大逼格的哦。
让我们开始吧。
理论介绍
本次的理论知识是上篇学****的是一致的,蛤蟆就不啰嗦了。
具体步骤

bool HelloWorld::init()函数,加入如下代码。
b=100;
auto s = Director::getInstance()->getWinSize();
auto to1 = Sequence::createWithTwoActions(ProgressTo::create(0, 100), ProgressTo::create(, 0));
auto to2 = Sequence::createWithTwoActions(ProgressTo::create(0, 100), ProgressTo::create(2, 0));
auto spriteOp = ProgressTimer::create(Sprite::create(""));
spriteOp->setType(ProgressTimer::Type::BAR);
spriteOp->setMidpoint(Vec2(0,0));
spriteOp->setBarChangeRate(Vec2(1, 0));
spriteOp->setOpacity(90);
spriteOp->setPosition(Vec2(, ));
auto xk = Sprite::create("");
xk->setPosition(Vec2(, ));
xk->setPosition(Vec2(, ));
auto sprite = ProgressTimer::create(Sprite::create(""));
sprite->setType(ProgressTimer::Type::BAR);
sprite->setMidpoint(Vec2(0,0));
sprite->setBarChangeRate(Vec2(1, 0));
sprite->setPosition(Vec2(, ));
addChild(xk);
addChild(sprite,2000,1);
addChild(spriteOp,1000,2);
sprite->runAction(to1);
spriteOp->runAction(to2);
schedule( schedule_selector(HelloWorld::xd),3);
接着定义函数:
void HelloWorld::xd(float dt)
{
auto c=b-10;
auto spriteOp=getChildByTag(2);
auto sprite=getChildByTag(1);
auto to1 = Sequence::createWithTwoActions(ProgressTo::create(0, b), ProgressTo::create(, c));
auto to2 = Sequence::createWithTwoActions(ProgressTo::create(0, b), ProgressTo::create(2, c));
if( c >= 10)
{
b=c;
}
else
b=100;
sprite->runAction(to1);
spriteOp->runAction( to2);
}

类定义中定义函数:
void HelloWorld::xd(float dt);
此外
在类class HelloWorld : public cocos2d::Layer 定义之外,定义变量b
static int b=100;
编译运行如下图1所示:
代码解释
下面我们来解释下代码的含义:
bool HelloWorld::init()函数中代码解释。
b=100; //设置常量b的值