0
同じシーンを再度ロードしてゲームが終了したら、シーン全体をリセットしようとしています。しかし、ロードされた後、画面はタッチを登録しません。さらにtouchesBegan
の作業はありません。他のすべてはロードされ、スプライト、アニメーションなどがロードされますが、タッチは登録されません。スプライトキット:新しいシーンを読み込んだ後にタッチレスポンスが表示されない
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
player.physicsBody?.dynamic = true
player.physicsBody?.velocity.dy = CGFloat(500)
createLeftButton()
createRightButton()
createRightButtonFirst()
createLeftButtonFirst()
}
func endGame() {
gameOver = true
scoreboardSetup()
playButton()
highscoreButton()
label!.hidden = true
timer2.invalidate()
timer1.invalidate()
player.physicsBody?.dynamic = false
}
func playButton() {
let image = UIImage(named: "playButton") as UIImage?
playbtn = UIButton();
playbtn.setImage(image, forState: .Normal)
playbtn.frame = CGRectMake(CGRectGetMidX(self.frame) - 152, CGRectGetMidY(self.frame) + 65, 133, 76) // X, Y, width, height
playbtn.addTarget(self, action: #selector(GameScene.playBtn), forControlEvents: .TouchUpInside)
self.view!.addSubview(playbtn)
}
func playBtn() {
playbtn.removeFromSuperview()
highscorebutton.removeFromSuperview()
self.removeAllChildren()
self.removeAllActions()
self.scene?.removeFromParent()
let gameScene:GameScene = GameScene(size: self.size) // create your new scene
let transition = SKTransition.fadeWithDuration(1.0) // create type of transition (you can check in documentation for more transtions)
self.view!.presentScene(gameScene, transition: transition)
}
番目のステートメントが必要であり、それは便利ではない配列を返すされていないことを行うための最も簡単な方法は、このようなものでした。 – 0x141E