【发布时间】:2014-04-25 09:09:36
【问题描述】:
嘿,我正在尝试同时移动一些精灵,它们都是相同类型的精灵。所以我只是使用 for 循环在游戏中添加精灵,但是当我尝试仅移动所有精灵时一动。
我正在尝试模拟跑步,当用户点击石头时,石头会向下移动,另一块石头会出现在顶部,会有 4 块石头,所以当一个石头落下时,另一块石头会出现在顶部,剩下的石头会向下移动。我无法移动屏幕顶部出现的石头,该石头不像其他石头那样移动。
这里是一些代码:
self.Stone = [Stone spriteNodeWithColor:[SKColor blackColor] size:CGSizeMake(80, 142)];
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInNode:self];
self.node =[self nodeAtPoint:location];
if ([self.node.name isEqualToString:@"stone"]) {
SKAction *hey = [SKAction moveToY:self.Stone.position.y - 142 duration:1];
[self runAction:hey];
}
它们基本上是屏幕上的 4 块石头,每次点击石头都会向下移动。
【问题讨论】:
-
您好,欢迎来到 Stack Overflow,如果您提供代码示例,我们可以根据您的具体情况为您提供建议。
-
我还是不明白你在做什么。视图顶部有 4 个对象(石头)。如果您点击 1 个对象,假设所有 4 个对象都会向下移动并移出视图,然后顶部会出现 4 个新石头?
-
不在视图的顶部 可以这样想 屏幕上有一个 4 x 4 的网格 1 块石头位于每行的 1 个位置 第二列是您点击石头时的位置你点击石头所有的石头,包括你点击的石头向下移动一排,最后一行的石头被移除,一个新的石头被添加到顶行的场景中。这将一直持续到玩家点击背景而不是石头