【Cocos2D-X 游戏引擎】初窥门径(4)Touch 事件:移动精灵
2014-02-13 16:38
483 查看
在.h中声明:
[cpp] view
plaincopy
virtual void registerWithTouchDispatcher(void);
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);
并在.cpp的init()中设置:
[cpp] view
plaincopy
this->setTouchEnabled(true);
下面就是Touch函数的实现:
[cpp] view
plaincopy
void DragScene::registerWithTouchDispatcher(void){
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);
}
bool DragScene::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
{
mBullet->setPosition(ccp(pTouch->getLocation().x , pTouch->getLocation().y));
return true;
}
void DragScene::ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent)
{
mBullet->setPosition(ccp(pTouch->getLocation().x , pTouch->getLocation().y));
}
void DragScene::ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent)
{
}
void DragScene::ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent)
{
}
在触摸的时候让精灵跟随触摸移动,也就是在ccTouchMoved中更新精灵的位置。
效果图:
![](http://img.my.csdn.net/uploads/201304/10/1365583756_4857.png)
转载请注明出处:http://blog.csdn.net/Vestigge
[cpp] view
plaincopy
virtual void registerWithTouchDispatcher(void);
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);
并在.cpp的init()中设置:
[cpp] view
plaincopy
this->setTouchEnabled(true);
下面就是Touch函数的实现:
[cpp] view
plaincopy
void DragScene::registerWithTouchDispatcher(void){
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);
}
bool DragScene::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
{
mBullet->setPosition(ccp(pTouch->getLocation().x , pTouch->getLocation().y));
return true;
}
void DragScene::ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent)
{
mBullet->setPosition(ccp(pTouch->getLocation().x , pTouch->getLocation().y));
}
void DragScene::ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent)
{
}
void DragScene::ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent)
{
}
在触摸的时候让精灵跟随触摸移动,也就是在ccTouchMoved中更新精灵的位置。
效果图:
![](http://img.my.csdn.net/uploads/201304/10/1365583756_4857.png)
转载请注明出处:http://blog.csdn.net/Vestigge
相关文章推荐
- 【Cocos2D-X 游戏引擎】初窥门径(4)Touch 事件:移动精灵
- 【Cocos2D-X 游戏引擎】初窥门径(1) 制作一个动态的精灵
- 【Cocos2D-X 游戏引擎】初窥门径(1) 制作一个动态的精灵
- 【Cocos2D-X 游戏引擎】初窥门径(1) 制作一个动态的精灵
- 【Cocos2D-X 游戏引擎】初窥门径(8)判断精灵点击
- 【Cocos2D-X 游戏引擎】初窥门径(5)CCAction:动作
- 【Cocos2D-X 游戏引擎】初窥门径(15)实现拖尾效果
- 【Cocos2D-X 游戏引擎】初窥门径(3)图片文字显示
- 【Cocos2D-X 游戏引擎】初窥门径(17)CCLayerMultiplex 多层布景层
- 【Cocos2D-X 游戏引擎】初窥门径(6)粒子系统
- 【Cocos2D-X 游戏引擎】初窥门径(3)图片文字显示
- 【Cocos2D-X 游戏引擎】初窥门径(7)无限地图滚动
- Cocos2D-X笔记(3)Touch事件:移动精灵
- 【Cocos2D-X 游戏引擎】初窥门径(18)自定义字体 -- 使用字体文件
- 【Cocos2D-X 游戏引擎】初窥门径(5)CCAction:动作
- 【iphone游戏开发】iphone-Cocos2d游戏开发之四:精灵实现缩放,旋转,跳动,移动等动画
- 【Cocos2d-html5游戏引擎学习笔记(10)】自定义精灵动画
- COCOS2D-X 2.0笔记---2:精灵类,动画类,精灵缓存,shcedule,touch事件
- 判断、转载-【Cocos2D-X 】初窥门径(8)判断精灵点击-by小雨
- ios-cocos2d游戏开发基础-CCLayer和Touch事件-开发笔记