作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个 SKSpriteNode (monsterNode) 的子类。它使用矢量自动在屏幕上运行以跟随玩家。我目前正在使用以下操作使其运行:
SKAction *actionMove = [SKAction moveTo:actualDistance duration:time];
[self runAction:actionMove completion:^ {
_currentState = SVGMonsterStateIdle;
}];
我想知道是否有可能使 monsterNode 在碰到 iOS 设备屏幕的边界时实际上停止运行该操作。我目前在屏幕边缘有 SKSpriteNode 边界,与接触委托(delegate)链接以通知怪物和墙壁是否接触。但是,如果我不能真正阻止怪物的 actionMove Action 完成,那将毫无意义。怪物需要停在屏幕的边界。如果无法在执行过程中停止 SKAction,是否有迂回的方式来做到这一点?
最佳答案
查看 SKNode.h
头文件 - 它列出了两个函数:
- (void)removeActionForKey:(NSString *)key;
- (void)removeAllActions;
后者将起作用:[monsterNode removeAllActions];
关于ios - 是否可以结束 SKAction Action 中途?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19041610/
我有一个 SKSpriteNode (monsterNode) 的子类。它使用矢量自动在屏幕上运行以跟随玩家。我目前正在使用以下操作使其运行: SKAction *actionMove = [SKAc
我是一名优秀的程序员,十分优秀!