gpt4 book ai didi

ios - 触摸开始错误;我触摸屏幕的任何地方游戏都会崩溃

转载 作者:行者123 更新时间:2023-11-30 14:19:01 25 4
gpt4 key购买 nike

所以,我正在为 iOS 制作一款游戏,实际上一切都已完成,只是现在我的 TouchBegan 函数导致了错误。这就是我现在的功能布局:

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
var doo = SKAction.removeFromParent()
/* Called when a touch begins */
for touch: AnyObject in touches {
let location = touch.locationInNode(self)

if GameOver{
var gameScene = EasyScene(size: self.size)
gameScene.scaleMode = SKSceneScaleMode.AspectFill
self.scene!.view?.presentScene(gameScene)
}
else{
if red.containsPoint(location){ // This is Line A
//takeOut(red)
red.removeFromParent()
score++
scoreNode.text = String(score)
print("-hi")
}
if red1.containsPoint(location){
red1.removeFromParent()
score++
scoreNode.text = String(score)
//takeOut(red1)
print("-hel")
}
if red2.containsPoint(location){
red2.removeFromParent()
score++
scoreNode.text = String(score)
//takeOut(red2)
print("-hell")
}
if red3.containsPoint(location){
red3.removeFromParent()
score++
scoreNode.text = String(score)
//takeOut(red3)
print("-hello")
}
if red4.containsPoint(location){
red4.removeFromParent()
//takeOut(red4)
score++
scoreNode.text = String(score)
print("-hellow")
}
if red5.containsPoint(location){
red5.removeFromParent()
score++
scoreNode.text = String(score)
// takeOut(red5)
print("-hellowor")
}
if blue.containsPoint(location){
GameOver = true
}
if blue1.containsPoint(location){
GameOver = true
}
if blue2.containsPoint(location){
GameOver = true
}
}
}
}

问题是,当GameOver为假时:我在屏幕上触摸的任何内容都会导致崩溃。如果我触摸屏幕(特别是没有 spriteNode),它会指向标有“这是 A 行”的线,但是如果我点击实际在屏幕上的节点,游戏将崩溃并指向我按下的 spriteNode同样的事情:

fatal error: unexpected nil while unwrapping optional value

GameOver == true touchesBegan 工作正常

最佳答案

我的游戏崩溃的原因是因为我在一个函数中声明了我的 Sprite ,该函数已编程为在应用程序首次启动后 5 秒执行。但是我发现现在我的红色 Sprite 已在 didMoveToView 中声明,游戏可以正常运行

关于ios - 触摸开始错误;我触摸屏幕的任何地方游戏都会崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30721687/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com