我正在写一个游戏,其中用户必须使用一些盘子来防止掉落的物体(岩石)通过屏幕的按钮,每次点击在该位置打板时,他每次只能有5个盘子,然后单击第六点消失了第一块板,同时创造了一个新的。 这是关于我的游戏机制如何工作的简要介绍。从场景尺寸创建新场景,但每次都会变得越来越小。为什么?
下面是我的代码中使用物理计算落体(精灵)的部分,如果它们变得超过10个,游戏结束消息将显示,代码重新开始游戏,一个新游戏。有一个新的游戏,我需要
-(void)didSimulatePhysics
{
[self enumerateChildNodesWithName:@"rock" usingBlock:^(SKNode *node, BOOL *stop) {
if (node.position.y < 0)
{
ScoreNum++;
[node removeFromParent];
score.text = [NSString stringWithFormat:@"%@ %li",ScoreMSG,(long)ScoreNum];
if (ScoreNum > 10)
{
score.fontSize = 40;
score.position = CGPointMake(CGRectGetMidX(self.frame),CGRectGetMidY(self.frame));
score.text = @"Game Over!";
SKScene *spaceshipScene = [[GameScene alloc] initWithSize:CGRectMake(0, 0,CGRectGetMaxY(self.frame),CGRectGetMaxX(self.frame)).size];
printf("%f %f",CGRectGetMidX(self.frame),CGRectGetMidX(self.frame));
SKTransition *doors = [SKTransition doorsOpenVerticalWithDuration:0.25];
[self.view presentScene:spaceshipScene transition:doors];
ScoreNum = 0;
}
}
}];
}
GameScene从SKScene子类这样
#import <SpriteKit/SpriteKit.h>
@interface GameScene : SKScene
@end
代码工作找到,但板块(所有屏幕上的精灵)会从两侧
挤压下面的图片显示的结果,第一次,第二次和第三次,我需要10个声望,包括3张图片,所以我不得不将它们合并成一张图片,在这里。 https://www.imageupload.co.uk/images/2015/08/30/123.png 对不起,看起来我不能嵌入图像,因为我没有足够的声誉!
为什么我的场景会挤压?
可能是SpriteKit错误,请考虑将其转发给苹果SpriteKit社区。 – Rassam