Xcode SpriteKit – 删除Sprite并停止动作 – repeatActionForever
我是Swift和SpritKit的新手,并且在我的游戏中遇到了一些问题。
在我的didMoveToView(view: SKView) { }
部分中,我调用下面的语句来填充屏幕上的怪物。 在我的func addMonster() { }
怪物然后动画从右侧移动到屏幕的左侧。 一旦他们离开屏幕的另一侧,精灵就会被移除。
代码A.
runAction(SKAction.repeatActionForever( SKAction.sequence([ SKAction.runBlock(addMonster), SKAction.waitForDuration(1.0),SKAction. ]) ))
在添加Mons†erfunction中,我调用以下代码将Monster移动到屏幕上。
let actualDuration = random(min: CGFloat(6.0), max: CGFloat(10.0)) let actionMove = SKAction.moveTo(CGPoint(x: -monster.size.width/2, y: actualY), duration: NSTimeInterval(actualDuration)) let actionMoveDone = SKAction.removeFromParent() monster.runAction(SKAction.sequence([actionMove, actionMoveDone]))
上面的所有代码都运行正常。
当用户杀死了X量的怪物时,我希望屏幕上的所有其他怪物消失并停止产卵。
我的问题是,我如何a)停止生成怪物的代码A和b)如何获取视图中的任何怪物,被删除?
谢谢,
Ryann
运行操作时,请使用
monster.runAction(SKAction.sequence([actionMove, actionMoveDone]), withKey: "actionA")
然后取消它
monster.removeActionForKey("actionA")
- 最佳做法:创build免费和付费版本时如何处理iOS应用程序的代码差异?
- 如何让GPS应用程序在没有停顿的情况下在后台运行
- 如何在SWIFT 3中将HTTPS代理添加到NSURLSession
- 无法在使用iTunes 11和iOS 7的临时分发testing设备上安assembly置文件
- 如何将NSString从一个UIViewController传递给另一个UIViewController?
- AFNetworking 3.0 setImageWithURLRequest下载进度
- 如何使一个collectionViewCell自动resize只有身高?
- 委托方法删除应用程序时
- 如何在Firebase iOS上进行浅层查询?