【发布时间】:2014-05-03 18:40:46
【问题描述】:
我不确定我用“模态精灵套件场景”的措辞是否正确,但我想做的是在游戏完成时在场景上出现一个较小的场景。附上一张截图来说明我的意思:
截图来自 Flappy Bird,当玩家死亡时,游戏结束的小场景几乎像模态效果一样弹出,并显示用户的最终结果。我想知道如何去创建这个。
我试着在游戏结束后调用它:
[self.player runAction:death completion:^{
[self removeAllActions];
GameOverNode *gameOverNode = [[GameOverNode alloc] initWithScore:self.size];
gameOverNode.gameScene = self;
gameOverNode.position = CGPointMake(self.scene.size.width/2, -150);
[self addChild:gameOverNode];
[gameOverNode runAction:[SKAction moveToY:self.scene.size.height/2 duration:0.6]];
这是gameOverScene.m文件中gameOverNode的代码:
-(id)initWithSize:(CGSize)size {
if (self = [super initWithSize:size]) {
self.userInteractionEnabled = YES;
self.zPosition = 20;
SKSpriteNode *bg = [SKSpriteNode spriteNodeWithColor:[UIColor blackColor] size:CGSizeMake(280*DoubleIfIpad, 300*DoubleIfIpad)];
bg.alpha = 0.55;
但是节点只显示在屏幕的左下角,而不是像我想要的那样显示在中间。
我做错了什么?如何让小游戏结束节点弹出并坐在场景中间。
【问题讨论】:
-
你能显示你的错误模式窗口的截图吗?如果您在左下角看到它,那么您的 SKAction moveToY 没有工作,或者您没有向我们展示整个代码。
标签: ios iphone objective-c sprite-kit