func colorBall() {
let colorize1 = SKAction.colorizeWithColor(UIColor.redColor(), colorBlendFactor: 1.0, duration: 0.1)
let colorize2 = SKAction.colorizeWithColor(UIColor.greenColor(), colorBlendFactor: 1.0, duration: 0.1)
let colorize3 = SKAction.colorizeWithColor(UIColor.blueColor(), colorBlendFactor: 1.0, duration: 0.1)
let actions = [colorize1, colorize2, colorize3]
let randomIndex = Int(arc4random_uniform(3))
self.Ball.runAction(actions[randomIndex])
}
var colorBucket = [UIColor]()
func randomColor() -> UIColor {
if colorBucket.isEmpty {
fillBucket()
}
let randomIndex = Int(arc4random_uniform(UInt32(colorBucket.count)))
let randomColor = colorBucket[randomIndex]
colorBucket.removeAtIndex(randomIndex)
return randomColor
}
func fillBucket() {
colorBucket = [UIColor.redColor(), UIColor.greenColor(), UIColor.blueColor()]
}
、それは時々、このような数字をプリントアウト:RGB色付けするときに奇妙なことをする値はありますか? - 私は私のゲームでこのコードを実行すると、私のボールの色の値をプリントアウトするとスウィフト
UIDeviceRGBColorSpace 1 2.98023e-08 2.98023e-08 1
なぜそれがこれを行うのですか?私はちょうどそれが言いたい:UIDeviceRGBColorSpace青、IDeviceRGBColorSpace 1 0 0 1それが赤い場合など1
私はそれらの数値が1より大きくなる、または1よりもずっと低くならないようにする方法はありますか?彼らは私のコードでそれを何にするのでしょうか?
新しい.swiftファイルを作成し、UIKitをインポートしてこのコードを貼り付けたら、GameScene.swiftファイルに何かを置く必要がありますか? –
さて、色のインスタンスで 'isEqual:'を呼んでいるところ、 'someSprite.color.isEqual(anotherSprite.color)'と言うと、 'isVisuallyEqual:'で呼出しを置き換えるべきです。 –