COCOS2D-X之精灵移动到所点击的位置Demo
2013-09-07 11:37
337 查看
这个Demo的效果就是当在电脑上用鼠标或在手机上不断用用手指点击屏幕的时候,对应的精灵会移动到最近一个点击的位置.
一、首先我们在初始化的时候添加好要移动的精灵和开启触屏响应.开启触屏响应只要调用一个函数既可:
三、补充说明:
①、CCSetIterator是一个迭代器,其定义如下:
②、CCSet类的结构如下:
本人郑重声明如下
一、本文来自CSDN博客,本文地址http://t.cn/z86WXvT
二、All Rights Reserved. 任何个人或网站转载本文时不得移除本声明.
三、不得对文章进行修改,除非明确说明.同时欢迎大家评论转载和分享.
一、首先我们在初始化的时候添加好要移动的精灵和开启触屏响应.开启触屏响应只要调用一个函数既可:
setTouchEnabled(true);//CCLayer默认是不响应触屏事件的我们可以简单看下这个函数的实现如下:
void CCLayer::setTouchEnabled(bool bEnabled) { if (m_bTouchEnabled != bEnabled) { m_bTouchEnabled = bEnabled; if (m_bRunning) { if (bEnabled)//如果响应触屏事件则进行注册 { this->registerWithTouchDispatcher(); } else { CCDirector::sharedDirector()->getTouchDispatcher()->removeDelegate(this); } } } }二、我们重写CCLayer的void ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent)函数如下:
void MainLayer::ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent) { CCSetIterator it= pTouches->begin(); //获取最近的一个点击的对象 CCTouch* pTouch = (CCTouch*)(*it); CCPoint ptLocation= pTouch->getLocation(); //获得点击的坐标值 CCNode* pSprNode = getChildByTag(kTagSprite);//获取要移动的精灵的指针 if(pSprNode != NULL) { pSprNode->stopAllActions();//停止之前的所有动作 pSprNode->runAction(CCMoveTo::create(1,CCPointMake(ptLocation.x, ptLocation.y)));//移动到点击的位置 } }
三、补充说明:
①、CCSetIterator是一个迭代器,其定义如下:
typedef std::set<CCObject *>::iterator CCSetIterator;
②、CCSet类的结构如下:
class CCSet : public CCObject { public: **************************** private: std::set<CCObject *> *m_pSet; }PS:因为是基础学习,故不作过多分析.后继会有更多精彩内容,敬请大家关注
本人郑重声明如下
一、本文来自CSDN博客,本文地址http://t.cn/z86WXvT
二、All Rights Reserved. 任何个人或网站转载本文时不得移除本声明.
三、不得对文章进行修改,除非明确说明.同时欢迎大家评论转载和分享.
相关文章推荐
- cocos2d 角度转换 (精灵图片如何指向点击位置)
- cocos2d-x触摸点使精灵移动到触摸点的位置
- cocos2d-x根据点击的位置来拖动精灵
- 微信小程序实现点击按钮移动view标签的位置功能示例【附demo源码下载】
- cocos2d-x 输入框升级版 通过鼠标点击事件和键盘左右键移动光标
- Cocos2d-x格斗小游戏(四) 移动玩家精灵
- cocos2d-x精灵自定义路径移动
- JQUERY实现点击INPUT使光标移动到最后或指定位置
- 【Ubuntu】Ubuntu16.04移动Unity位置和点击图片最小化
- Cocos2d-x中,如何通过触摸来移动一个精灵
- Cocos2d-x 《雷电大战》-精灵随手指移动,你点哪我走哪!
- 【Cocos2D-X 游戏引擎】初窥门径(4)Touch 事件:移动精灵
- cocos2d-x CCSprite 精灵监听点击事件
- JavaScript--点击按钮实现选中选项移动到指定位置(下拉框)或全部选项移动
- cocos2d-x学习二精灵定时移动
- Unity3D之实现点击地形使物体移动到指定位置
- cocos2d 2.x 实现精灵的会移动的遮罩
- 精灵点击移动
- 根据鼠标点击位置移动物体
- cocos2d-x 3.2 移动游戏背景和精灵