-2
我在SpriteKit中製作遊戲,在這個遊戲中我有生成的平臺,我想使它成爲一個對象,例如寶石或硬幣具有當它催生SpriteKit,Swift 2.0 - 在遊戲地圖上生成一個對象產生
我需要它是隨機的,也可以選擇它產生什麼(無論是寶石或硬幣)
任何想法的平臺上產卵的機會呢?
我在SpriteKit中製作遊戲,在這個遊戲中我有生成的平臺,我想使它成爲一個對象,例如寶石或硬幣具有當它催生SpriteKit,Swift 2.0 - 在遊戲地圖上生成一個對象產生
我需要它是隨機的,也可以選擇它產生什麼(無論是寶石或硬幣)
任何想法的平臺上產卵的機會呢?
要正確使用堆棧溢出,您應該總是發佈一些代碼。如果你只是想讓他們爲你做這項工作,人們就不會有幫助。
最好的方法是繼承你的平臺,這裏是它的基本思想。
enum PlatformObject: Int {
case Gem = 0
case Coin
}
class Platform: SKSpriteNode {
init (size: CGSize, color: SKColor, objectType: PlatformObject, spawnObjectRandomly: Bool) { // create your own init for your needs
super.init (texture: nil, color: color, size: size)
// set up platform properties
// Than spawn object
if spawnObjectRandomly {
spawnRandomObject()
} else if objectType == .Coin {
spawnCoin()
} else if objectType == .Gem {
spawnGem()
}
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func spawnRandomObject() {
let randomNumber = Int(arc4random() % 2) // 0 and 1
if randomNumber == 0 {
// spawn gem
spawnGem()
} else {
// spawn coin
spawnCoin()
}
}
func spawnCoin() {
let coin = SKSpriteNode(...
}
func spawnGem() {
let gem = SKSpriteNode(...
}
}
比你的場景,你產卵平臺,像這樣
class GameScene: SKScene {
let size = // set your size
let color = // set color
let platform1 = Platform(size: size, color: color, objectType: .Gem, spawnObjectRandomly: false)
...
// if false will spawn selected objectType ("Gem" in this example)
let platform2 = Platform(size: size, color: color, objectType: .Gem, spawnObjectRandomly: true)
// if true will spawn random object regardless of objectType settings
...
}
希望這有助於
感謝標記,我只是調整了答案咯。你最近還好嗎? – crashoverride777
我相處得很好,我只需要得到這個我已經解決的scrollview問題,我應該沒問題。你對我非常感激,對我來說是非常大的幫助。 – Astrum
那麼你對scrollview問題有什麼看法? – Astrum