cocos2dx-3.x 精灵设置颜色以及动作速度调整

来源:互联网 发布:什么是脚本的软件 编辑:程序博客网 时间:2024/05/21 06:44

在游戏开发,有些常用操作,本文介绍两种较为简单,易用的操作

1.给精灵设置颜色

给sprite设置颜色可以使用setColor函数,例如将一个sprite设置为红色:

sprite->setColor(Color3B::RED);

如果在设置后需要恢复原来的颜色,可以进行如下设置:

sprite->setColor(Color3B(255,255,255));

2.动作速度调整

游戏开发中,经常会遇见需要调整sprite的速度,因为cocos中action的概念,实际上我们是是给sprite所拥有的action设置速度。能够设置速度的action在创建的时候需要使用如下方式:

以一个例子说明,我们先让sprite从屏幕左边移动到屏幕右边:

先创建一个精灵:

sprite->setPosition(Vec2(origin.x, visibleSize.height + origin.y));
将精灵放到屏幕左上角
再创建一个动作从左上角到由上角:

auto a1 = MoveTo::create(2, Vec2(origin.x + visibleSize.width,visibleSize.height + origin.y));
此时创建一个speed动作:

auto action = Speed::create(a1, 1.0f);
给这个动作设置一个tag,方便后面获取:

action->setTag(111);
此时一个speed动作已经创建好了,当我们需要进行动作设置时,比如加快这个sprite的速度:

auto action1 = static_cast<Speed*>(sprite->getActionByTag(111));action1->setSpeed( 3 );
先根据tag获取到这个sprite拥有的动作,然后使用setSpeed设置速度。

ps.有个很好玩的地方,如果将setSpeed里面的值设置为负数,则动作会reverse。




0 0
原创粉丝点击