屏幕宽度周围的循环字符?

时间:2011-12-02 23:07:34

标签: ios cocos2d-iphone accelerometer

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

谢谢!

1 个答案:

答案 0 :(得分:1)

如果角色离开屏幕的左侧或右侧而没有修改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以确保角色的速度不受影响。