我创建了一个子类:
class EnemySprite: SKSpriteNode
并使用以下代码在我的游戏场景中添加了一个敌人:
let enemy = EnemySprite(imageNamed:"enemy.png")
self.addChild(enemy)
现在,当我向敌人射击时,我有代码:
enemy.removeFromParent()
屏幕上没有看到敌人,但_enemiesSpritesArray.count
保持不变。此外,当我向敌人射击区域时,子弹停在那里,好像精灵仍然在同一个地方。我试过添加:
override func removeFromParent() {
super.removeFromParent()
}
但仍然是一样的。
如何完全删除精灵?
您也应该从数组中删除实例。
if let index = enemiesSpritesArray.index(of: enemy) {
enemiesSpritesArray.remove(at: index)
}