• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - SKScene 从今天开始在 spriteKit 中没有改变

[复制链接]
菜鸟教程小白 发表于 2022-12-12 21:20:14 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我从今天开始在我的游戏中遇到问题,当时我试图改变场景。这有点好笑,当我与敌人发生碰撞时我没有问题。我调用我的 resetScene 函数来创建 gameOver 场景并显示它。但是当我掉进洞里,打了同样的电话,我的比赛并没有改变场景。我在 resetScene 函数中添加了一个新标签,因此当编译器进入此代码时,将添加一个层。现在,当我进入一个洞时,我得到了图层,但场景没有改变。这有点令人困惑。我将显示代码和屏幕截图:

这是唯一有效的地方:

            /**********
        if hero collide with enemy
                              *******/
-(void)didBeginContact

{
        if(bodyB.physicsBody.categoryBitMask == enemy)
        {
            if(!YES == _deadAnimation)
            {
                if(_stars > _bestScore )
                {
                    _bestScore = _stars;

            }
            if(_bestScore> [self.prefs integerForKey"bestScore"])
            {
                [self.prefs setInteger:_bestScore forKey"bestScore"];
            }
            _deadAnimation = [self runDeadAnimation]; // (only return BOOL YES for the moment)


            [self resetScene];
        }
    }
}

现在这是行不通的地方:

-(void)didSimulatePhysics
{


/* reset scene if fall*/
if(self.hero.position.y < 100)
{
    _deadAnimation = [self runDeadAnimation]; // (only return BOOL YES for the moment)
    [self resetScene];

}
/* reset scene if stay behind */
if(self.hero.position.x<10 ){
    [self resetScene];
}

}

这是我的重置功能:

{
[_hero removeFromParent];
[self addDebugLayer"dead" xPosition:200 yPosition:200 childPos:_hero.position.y infinite:YES]; // <<-----(add a new SKLabel)

SKScene *mundo1  = [[XYZGameOver alloc] initWithSize:self.size];
SKTransition *doors = [SKTransition fadeWithDuration:0.2];
[self.view presentScene:mundo1 transition:doors];


}

如您所见,图层“muerto”(死亡)添加了 y 位置,但场景没有改变



Best Answer-推荐答案


在 didSimulatePhysics 的情况下,以 0 持续时间进行过渡。您可以使用一些 BOOL 来检查它是哪种 Game Over。它对我有用。虽然不知道这背后的原因。

关于ios - SKScene 从今天开始在 spriteKit 中没有改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22942849/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap