如何向我的 SKSpriteNode 添加爆炸?

Posted

技术标签:

【中文标题】如何向我的 SKSpriteNode 添加爆炸?【英文标题】:how to add an explosion to my SKSpriteNode? 【发布时间】:2015-04-06 15:18:53 【问题描述】:

正如标题所示,我正在尝试向我的精灵添加一个爆炸粒子发射器,该发射器将在碰撞方法中发生。这是我的代码。

if ([heroBullet intersectsNode:enemy]) 

                NSString *firePath2 = [[NSBundle mainBundle] pathForResource:@"MyParticle2" ofType:@"sks"];
                SKEmitterNode *fireEmitter2 = [NSKeyedUnarchiver unarchiveObjectWithFile:firePath2];
                fireEmitter2.position = enemy.position;
                [enemy addChild:fireEmitter2];
                NSLog(@"fire emitter works");

                heroBullet.hidden = YES;
                enemy.hidden = YES;
                continue;
            

我玩过位置和 zPosition 一点,但看不到爆炸。 NSLog 说代码被执行但我看不到爆炸。有人可以指导我做错什么吗?也许,如何解决?

【问题讨论】:

【参考方案1】:

我认为你在隐藏敌人,而你的发射器是它的一个孩子。所以它也可能被隐藏起来。

尝试将发射器添加为场景的子项。 (你已经将它的位置设置为敌人的位置)

或者,尝试在隐藏敌人之前稍等片刻,您可以使用 sKAction waitForDuration..

【讨论】:

我正要回答我自己的问题。你是对的。发射器必须使用 self 添加到场景中,我将其添加到敌人中。好吧,即使我意识到我的错误,你还是确实回答了。谢谢

以上是关于如何向我的 SKSpriteNode 添加爆炸?的主要内容,如果未能解决你的问题,请参考以下文章

如何使我的爆炸召唤代码工作

按下时向 SKSpriteNode 添加视觉效果

SKScene - 如何从 SKSpriteNode 获取类

无法将孩子添加到 GameScene,只能添加到 SKSpriteNode

如何在循环中添加 SKSpriteNode [关闭]

为 SKSpriteNode 添加发光效果