
取得触摸位置
最有趣的部分是触摸的位置.接下来我们将使用触摸位置在玩家每次点击的屏幕位置上添加精灵.为了完成这项功能我们需要修改touchBegan的实现,替换旧的代码如下:
- (voID)touchBegan:(UItouch *)touch withEvent:(UIEvent *)event{ // we want to kNow the location of our touch in this scene CGPoint touchLocation = [touch locationInNode:self]; // create a 'hero' sprite CCSprite *hero = [CCSprite spriteWithImagenamed:@"hero.png"]; [self addChild:hero]; // place the sprite at the touch location hero.position = touchLocation;}
该实现相当直截了当.最有趣的部分是取得实际触摸的位置.locationInNode方法将触摸的OpenGL视图坐标转换为作为一个参数传递给该方法的Node内的坐标.(在这个例子中,因为我们需要知道屏幕触摸实际在MainScene中的位置).
一旦我们取得了触摸位置,我们简单创建一个新的CCSprite节点并且将它添加到MainScene中去.其中”hero.png”图片资源是你在一开始下载的starter project中的一部分.
一旦你运行项目,你应该能满屏幕放置MGWU英雄们.
现在你已经对基础非常熟悉了,我们将进一步观察触摸生命周期以及你如何在你的游戏中创建复杂的触摸处理.
总结以上是内存溢出为你收集整理的Touch Handling in Cocos2D 3.x(三)全部内容,希望文章能够帮你解决Touch Handling in Cocos2D 3.x(三)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)