swift - Sprite 的随机移动

标签 swift random sprite-kit skspritenode skaction

我是新来的,如果我输入的问题有误,我深表歉意。也就是说,我在让我的 Sprite 移动到屏幕周围的随机位置时遇到了问题。这是我的代码

func random() ->CGFloat{
    return CGFloat(Float(arc4random()) / 0xFFFFFFFF)
}
func random(#min: CGFloat, max:CGFloat) ->CGFloat{
    return random()*(max-min)+min
}

dino.position = CGPoint(x: size.width + dino.size.width/2, y: actualY)
    // Add the monster to the scene
    addChild(dino)
    // Determine speed of the monster
    let actualDuration = random(min: CGFloat(3.0), max: CGFloat(4.0))
    let randomNum = CGPoint(x:Int (arc4random()%1000), y:Int (arc4random()%1000))
    // Create the actions
    var actionMove = SKAction:CGPoint(CGPoint(x:randomNum, y:randomNum)), duration:NSTimeInterval;(actualDuration)
    let actionMoveDone = SKAction.removeFromParent()
    dino.runAction(SKAction.sequence([actionMove, actionMoveDone]))

谢谢你的帮助,目前有任何帮助

最佳答案

您使用的功能无效。请改用 SKAction.moveTo

dino.position = CGPoint(x: size.width + dino.size.width/2, y: 10)
// Add the monster to the scene
addChild(dino)
// Determine speed of the monster
let actualDuration = NSTimeInterval(random(min: CGFloat(3.0), max: CGFloat(4.0)))
let randomNum = CGPoint(x:Int (arc4random() % 1000), y:Int (arc4random() % 1000))

var actionMove =  SKAction.moveTo(randomNum, duration: actualDuration) // Changed line

let actionMoveDone = SKAction.removeFromParent()
dino.runAction(SKAction.sequence([actionMove, actionMoveDone]))

关于swift - Sprite 的随机移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28531052/

相关文章:

go - golang 中无需替换的示例

ios - 将 iOS 更新到 7.1 后,Sprite-kit 游戏崩溃

ios - SKTexture 返回错误的大小?

swift - CloudKit - 每次运行相同的查询时,CKQueryOperation 结果都不同

python - 如何在字符串中随机大写字符?

ios - 如果 TableViewCell 有大量数据要显示,则在 UITableViewCell 中添加自定义按钮的最佳方式。使用 swift

android - 具有种子作用的随机数生成非确定性

ios - Swift - 以编程方式定位 UIButton 的问题(通用)

ios - 更多选项卡、行图像色调 (Xcode 9 + Swift 4)

ios - Firebase runTransactionBlock 在 swift 3 中不起作用