Sprite kit 如何将爆炸添加到我的SKSpriteNode?

Sprite kit 如何将爆炸添加到我的SKSpriteNode?,sprite-kit,collision,skspritenode,skemitternode,Sprite Kit,Collision,Skspritenode,Skemitternode,正如标题所示,我正在尝试向我的精灵添加一个爆炸粒子发射器,这将在碰撞方法中发生。这是我的密码 if ([heroBullet intersectsNode:enemy]) { NSString *firePath2 = [[NSBundle mainBundle] pathForResource:@"MyParticle2" ofType:@"sks"]; SKEmitterNode *fireEmitter2 = [NSKeye

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

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;
            }

我对这个位置和Z位置做了一些调整,但看不到爆炸。NSLog说代码被执行了,但我看不到爆炸。有人能告诉我我做错了什么吗?也许,如何修复它呢?

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

尝试将发射器添加为场景的子对象。(您已将其位置设置为敌人的位置)


或者,在隐藏敌人之前试着等一会儿,你可以用sKAction waitForDuration来完成这项任务。

我正要回答我自己的问题。你说得对。发射器必须与self一起添加到场景中,而我正在将其添加到敌人中。尽管我意识到我的错误,你还是回答了。非常感谢。