我觉得掌握一门新的编程语言最好的方法就是制作简单的游戏。
所以对于我的第一个游戏设置,只有 4 个按钮(上、下、左和右)。这些按钮将更改单个图像视图对象的位置。因此,例如,如果我想按向上,则对象将通过更改其 XY 坐标而向上移动。这就是我卡住的地方,我该怎么做?
这是我的伪代码:
_imgShip.frame.position.x += 1;
那行代码在按钮按下事件处理程序中,所以如果我按下 Right 则当前 X 坐标的值将自身加 1。我该怎么做?
我觉得掌握一门新的编程语言最好的方法就是制作简单的游戏。
所以对于我的第一个游戏设置,只有 4 个按钮(上、下、左和右)。这些按钮将更改单个图像视图对象的位置。因此,例如,如果我想按向上,则对象将通过更改其 XY 坐标而向上移动。这就是我卡住的地方,我该怎么做?
这是我的伪代码:
_imgShip.frame.position.x += 1;
那行代码在按钮按下事件处理程序中,所以如果我按下 Right 则当前 X 坐标的值将自身加 1。我该怎么做?
你很接近。不过,您最好还是移动中心。
_imgShip.center = CGPointMake(_imgShip.center.x + 1.0, _imgShip.center.y);
更新: 我还应该注意您可以翻译视图。这有点不同,但也为旋转和缩放打开了大门,这对游戏很有用:)
_imgShip.transform = CGAffineTransformMakeTranslation(1.0, 0.0);
对于开始转换,请使用Make
变体。但也有一些是相互建立的,所以如果你想旋转和翻译,你可以这样做:
_imgShip.transform = CGAffineTransformMakeTranslation(1.0, 0.0);
_imgShip.transform = CGAffineTransformRotate(_imgShip.transform, 0.785); // in radians