草庐IT

SKAction

全部标签

swift - 随机生成一个 Spritekit 节点

我正在制作一个游戏,其中有一个节点从屏幕顶部生成并掉落。但是我想让节点在3秒的时间间隔内随机生成。所以一个在1秒内生成,下一个在2.4秒内生成,下一个在1.7秒内生成,等等。我正在为这个代码应该是什么而苦苦挣扎。我目前拥有的用于生成节点的代码:letwait=SKAction.waitForDuration(3,withRange:2)letspawn=SKAction.runBlock{addTears()}letsequence=SKAction.sequence([wait,spawn])self.runAction(SKAction.repeatActionForever(sp

ios - 如何防止在暂停场景(取消暂停后)上运行 SKAction,节点纹理在暂停/取消暂停场景后不会改变

我有两个关于暂停和取消暂停场景的问题。我有按钮:playPause=SKSpriteNode(imageNamed:"buttPause.png")playPause.name="pause"playPause.setScale(0.65)playPause.position=CGPoint(x:-self.frame.width/2.55,y:self.frame.height/2.27)playPause.zPosition=10self.addChild(playPause)我已经设置了暂停和取消暂停场景的功能+改变按钮的纹理:funcbuttonpauseplayTouched

ios - 从 SKNode 中删除特定的 SKAction 列表

在开发不同节点之间的一些交互过程中,我意识到我需要从节点中删除特定的操作列表。当前版本的Sprite-Kit框架提供了一些实例方法:removeAllActions()action(forKeykey:String)hasActions()显然,在我的节点中运行的每个操作都有一个String键用于标识。所以我想到了一个和removeAllAction很相似的东西,然后我做了一个SKNode扩展:publicextensionSKNode{funcremoveAllAction(inlist:[String]){list.forEach{ifself.action(forKey:$0)!

xcode - 在 Apple Watch 模拟器(xCode 8、Swift 3、iOS 10)上的 watchOS 中运行 SpriteKit 游戏 - libswiftSwiftOnoneSupport 错误

我下载了xCode8.0beta并打开了一个最近写在swift2中的项目然后我将其转换为swift3使用xCode。然后我添加了一个watchOS使用设置“游戏”定位到我的项目文件>新建>目标:我检查了WatchExtension中的GameScene.swift果然所有的代码都在那里并设置了一个场景:importSpriteKitclassGameScene:SKScene{privatevarspinnyNode:SKShapeNode?overridefuncsceneDidLoad(){ifletlabel=self.childNode(withName:"//helloLab

swift - 在 SKAction 动画之后无法禁用然后重新启用触摸

我正在制作交互式动画场景。我希望在进入时禁用场景中的所有触摸。然后,一旦场景中的对象(子类节点)完成旋转/移动,我想重新启用屏幕上的所有触摸以允许交互。我已使用此代码禁用用户交互:overridefuncdidMove(toview:SKView){setupNodes()view?.isUserInteractionEnabled=falsespinLocations()}这是场景文件中用于spinLocations的代码:funcspinLocations(){varallLocationArrays=[[String:CGPoint]]()varpreviousArray=hid

objective-c - SpriteKit 中的 CCBlinkTo

如何在Sprite-Kit中实现类似CCBlink的Action?我想要2次眨眼10次。idblink=[CCBlinkactionWithDuration:2.0fblinks:10];idcalBck=[CCCallBlockactionWithBlock:^{[enemyexpired];}];[HeroSpriterunAction:[CCSequenceactions:blink,calBck,nil]]; 最佳答案 此示例使用alpha属性来创建闪烁效果。您也可以使用hidden属性和runBlock操作,正如@Lear

ios - Swift SKAction 无法加载声音资源

我有一个应用程序,每次触摸屏幕时都会播放一个声音文件。出于某种原因,该应用程序每隔一段时间就会崩溃并出现以下错误:reason:'Resourcetick.mp3cannotbeloaded'如果您需要,这里是我每次点击屏幕时播放文件的方式:runAction(SKAction.playSoundFileNamed("tick.mp3",waitForCompletion:false))这种情况不会经常发生,大约每10次应用程序运行中就有1次发生。大多数时候一切都按预期工作。我希望我知道我在做什么导致崩溃,但我不知道!我只是轻敲一下,看起来与它没有崩溃的时候没有什么不同。然后突然间我得

Swift:SKAction.runBlock -> 调用中缺少参数 'completion' 的参数,但为什么?

我是Swift新手。我不明白为什么这段代码:classGameScene:SKScene,SKPhysicsContactDelegate{varstatements=Statements()overridefuncdidMoveToView(view:SKView){runAction(SKAction.repeatActionForever(SKAction.sequence([SKAction.runBlock(addLabel(statements)),SKAction.waitForDuration(2.0)])))}funcaddLabel(statements:State

ios - Xcode SpriteKit - 删除 Sprite 并停止 Action - repeatActionForever

我是Swift和SpritKit的新手,我的游戏有一些问题。在我的代码的didMoveToView(view:SKView){}部分,我调用了下面的语句来填充屏幕上的怪物。在我的funcaddMonster(){}然后怪物动画从右侧移动到屏幕的左侧。一旦他们离开屏幕的另一侧,Sprite就会被移除。代码ArunAction(SKAction.repeatActionForever(SKAction.sequence([SKAction.runBlock(addMonster),SKAction.waitForDuration(1.0),SKAction.])))在addMons†er函

xcode - 我如何在 Swift 中永远重复一个 Action ?

http://i.imgur.com/xkWTk9i.png我已经得到了这个从上到下的矩形。我遇到的问题是我希望它每2秒重复一次,以便另一个矩形跟随它。我希望我的代码每2秒生成一次矩形,并让它重复,就像flappybird对绿色管道所做的那样。谢谢你。(我之前让这个工作,但我错误地删除了我的项目并且无法弄清楚我首先是如何做到的。)我在Swift中使用Spritekit。.classGameScene:SKScene{letsprite=SKSpriteNode(imageNamed:"Rectangle12")overridefuncdidMoveToView(view:SKView)