ios - 围绕屏幕宽度循环字符?

标签 ios cocos2d-iphone accelerometer

我想做的是,假设我的角色从屏幕右侧移开,我希望它以相同的 Y 坐标从屏幕左侧返回。我也在用Cocos2D。我目前正在尝试在我的 UIAccelerometer 方法中执行此操作,但它似乎不起作用。 有人可以告诉我我应该做什么吗?

谢谢!

最佳答案

如果你的角色离开屏幕的左侧或右侧到另一侧,这将改变你的角色的位置,而不修改 y 坐标。

CGSize size = [CCDirector sharedDirector].winSize;
CGPoint pos = character.position;
if (pos.x >= size.width)
    pos.x -= size.width;
else if (pos.x < 0.0f)
    pos.x += size.width;
character.position = pos;

我添加或减去宽度而不是直接将 x 坐标设置为 0 或宽度的原因是角色每帧的移动速度可能超过 1 个像素。这意味着,如果他移动速度很快,并且在一帧中从 X 坐标 479 移动到 495,那么他应该在另一侧设置为 X 坐标 15,以确保角色的速度不受影响。

关于ios - 围绕屏幕宽度循环字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8363813/

相关文章:

ios - 校准加速度计?

Android 测试 onTouch、onDraw 和加速度计,但有些图形不工作

ios - Xcode Storyboard更改未在设备或模拟器上显示

java - Android GTFS 应用程序

iphone - Cocos2D iPhone - 对象发送自动释放次数太多?

ios - 如何将触摸分配给两个 CCColorLayer?

iPhone 检测到用户向上移动了他们的设备

iOS 7 照片应用程序,如自定义 UIViewController Transition

objective-c - 如何在 iOS 中进行 URL 解码 - Objective C

ios - 改变 CCSprite 的亮度来模拟时间