0
ユーザーがdeckOfCards
に触れるたびに、2つのゲームカードの1つを繰り返し表示したいと思います。SpriteNodeでアクションを繰り返す
私はこれまでに一度動作しましたが、deckOfCards
を再びタップすると、カードは変更されません。これを10枚以上のカード名で試しても、どちらもうまくいかなかった。
class GameScene: SKScene {
let cardname = ["card2", "ace"]
let randomNumber = Int(arc4random_uniform(13))
var deckOfCards = SKSpriteNode()
var yourCard = SKSpriteNode()
override func didMove(to view: SKView) {
deckOfCards = self.childNode(withName: "deckOfCards") as! SKSpriteNode
yourCard = self.childNode(withName: "yourCard") as! SKSpriteNode
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
self.view?.endEditing(true)
for touch: AnyObject in touches {
let location = touch.location(in: self)
let node : SKNode = self.atPoint(location)
if node.name == "deckOfCards" {
yourCard.texture = SKTexture(imageNamed: "\(cardname[randomNumber])")
}
}
}
速い点で、問題を治しました。どうもありがとう – junxi