cocos2d-x 3.x学习之MoveAction
2016-06-15 14:42
369 查看
创建MoveTo和MoveBy的实例时,第一个参数是动作时间间隔,第二个参数是位置坐标。两者的区别在于,前者是移动到位置坐标所指的位置,而后者是在当前位置的基础上移动位置坐标所代表的像素值.
MoveActionScene.cpp文件
MoveActionScene.cpp文件
#include"MoveActionScene.h" Scene* MoveAction::createScene(){ auto scene = Scene::create(); auto layer = MoveAction::create(); scene->addChild(layer); return scene; } bool MoveAction::init(){ if (!Layer::init()){ return false; } //获得屏幕尺寸大小 Size visibleSize = Director::getInstance()->getVisibleSize(); //创建一个精灵 auto plane = Sprite::create("plane.png"); //设置精灵位置,精灵在屏幕的最左边,精灵的高度为屏幕的一半。 //getContentSize是父类Node的属性,返回节点的大小 //无论节点如何缩放或旋转,contentSize属性值始终不变,此处设置精灵坐标,Node的position属性是相对于锚点的 //而锚点位于纹理图像的几何中心 plane->setPosition(Point(plane->getContentSize().width / 2, visibleSize.height / 2)); //将精灵添加为当前层的子节点 this->addChild(plane); //创建一个moveTo动作 auto moveTo = MoveTo::create(5, Point(860, 320)); //精灵执行moveto动作,将在5秒内从当前位置移动到像素(860,320)的位置 plane->runAction(moveTo); auto plane1 = Sprite::create("plane.png"); //设置飞机精灵位置,精灵在屏幕的最左边,精灵的高度为屏幕的一半 plane1->setPosition(Point(plane1->getContentSize().width / 2, visibleSize.height / 2)); //将精灵添加为当前层的子节点 this->addChild(plane1); //定义一个moveBy动作 auto moveBy = MoveBy::create(5, Point(860, 320)); //精灵执行moveBy动作,将在5秒内从原位置向右移动860像素,向上移动320像素 plane1->runAction(moveBy); return true; }
相关文章推荐
- Cocos2d-Lua之类型及类型转换
- cocos2d-x 3.x学习之TintAction
- cocos2D-X源码分析之从cocos2D-X学习OpenGL(18)----实例化
- Cocos2d-x开发系列 iOS平台中音频播放的一个坑
- 记录一下Quick-Cocos2dx-Community lua绑定C++自定义类遇到的问题
- cocos2d-x 3.x学习之FadeAction
- Cocos code1.2下载地址
- cocos2d-x 3.x学习之ShowAction
- cocos2d-Lua之局部变量与全局变量
- 解决Cygwin编译cocos2dx 遇到的 error: 'UINT64_C' was not declared in this scope 问题
- cocos2d理解--SpriteBatchNode和TextureAtlas
- Cocos2d-x v3.0物理系统 利用PhysicsEditor创建多边形
- cocos2d-x 3.x学习之Vector常用函数
- cocos2D-X源码分析之从cocos2D-X学习OpenGL(17)----发光体
- cocos2d-x 3.x学习之SpriteFrameCache
- cocos creator shader用法
- cocos2dx图片精灵裁剪圆角矩形方法
- Cocos2dx 3.x C++人员过渡Lua的常用代码总结
- cocos2d-x-3.0从零到2048游戏开发
- cocos接入广点通sdk注意事项