我是 Cocos2d 的新手,正在寻求一些帮助。
我有一个精灵,我想向左旋转 45 度,再次居中,然后向右旋转大约 45 度。有点像摇摆动作。
我希望在触摸实际精灵时完成此操作,而不仅仅是屏幕上的任何位置。
就像现在一样,当我触摸屏幕上的任何位置时,它会旋转 360 度(360 度用于测试),但每次点击屏幕时,我都会得到一个新的精灵。
我的问题是一个,我该如何设置它,以便当我触摸精灵时它会执行我所追求的摇摆动作?每次点击屏幕时都不会弹出新的精灵。
我是 Cocos2d 的新手,正在寻求一些帮助。
我有一个精灵,我想向左旋转 45 度,再次居中,然后向右旋转大约 45 度。有点像摇摆动作。
我希望在触摸实际精灵时完成此操作,而不仅仅是屏幕上的任何位置。
就像现在一样,当我触摸屏幕上的任何位置时,它会旋转 360 度(360 度用于测试),但每次点击屏幕时,我都会得到一个新的精灵。
我的问题是一个,我该如何设置它,以便当我触摸精灵时它会执行我所追求的摇摆动作?每次点击屏幕时都不会弹出新的精灵。
您可以检查哪个精灵UITouch
打开(通过检查触摸点是否在每个精灵的矩形中)并根据您的要求启动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];