作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我是 Cocos2d 的新手,正在寻求一些帮助。
我有一个 Sprite ,我想向左旋转 45 度,再次居中,然后向右旋转大约 45 度。有点像摇摆运动。
我希望在触摸实际 Sprite 时完成此操作,而不仅仅是屏幕上的任何地方。
就像现在一样,当我触摸屏幕上的任何地方时,它会旋转 360 度(测试时为 360 度),但每次我点击屏幕时,我都会得到一个新的 Sprite 。
我的问题是,如何设置它以便在我触摸 Sprite 时它会执行我想要的摇摆 Action ?每次我点击屏幕时都不会弹出一个新的 Sprite 。
最佳答案
您可以检查 UITouch
在哪个 Sprite 上(通过检查触摸点是否在每个 Sprite 的矩形中)并在 ccTouchesBegan
或 中启动动画ccTouchesEnded
根据您的要求。您可以查看 cocos2d 中包含的“TouchesTest”示例。
你可以这样实现动画:
CCAction *action = [CCSequence actions:
[CCRotateBy actionWithDuration:0.25 angle:-45],
[CCRotateBy actionWithDuration:0.5 angle:90],
[CCRotateBy actionWithDuration:0.25 angle:-45],
nil];
[theSprite runAction:action];
关于iphone - 使用 CCRotateBy 的 Cocos2d 摇摆动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10477898/
我是一名优秀的程序员,十分优秀!