2017-01-05 1 views
2

나는 게임을 만들고 그리고 난이이 오류 코드와 함께 충돌 왜 내 코드를 편집 할 사람을 찾고 :SpriteKit에서 오류가 발생했습니다. - 스레드 1 : EXC_BREAKPOINT (코드 = 1, 서브 코드 = 0x1007351fc)

스레드 1 : EXC_BREAKPOINT (코드 = 1, 서브 코드 = 0x1007351fc는)

여기 내 코드입니다 : 귀하의 질문에 몇 줄이 있습니다

import UIKit 

import SpriteKit 

class Winner: SKScene { 

override init(size: CGSize) { 
    super.init(size: size) 

    backgroundColor = SKColor (red: CGFloat(248), green: CGFloat(248), blue: CGFloat(248), alpha: CGFloat(255)) //UIColor 

    var message = "Great Job! " 
    let label = SKLabelNode(fontNamed: "AppleSDGothicNeo-Bold") 
    label.text = message 
    label.fontSize = 22 
    label.fontColor = SKColor.blue 
    self.backgroundColor = SKColor.black 
    label.position = CGPoint(x: size.width/2, y: size.height/2) 
    addChild(label) 

    run(SKAction.sequence([ 

     SKAction.wait(forDuration: 1.0), 
     SKAction.run() { 

      let reveal = SKTransition.flipHorizontal(withDuration: 1.0) 
      let scene = GameOver(size: self.size) 

      self.view?.presentScene(scene, transition:reveal) 


     } 
     ])) 


} 

required init?(coder aDecoder: NSCoder) { 
    fatalError("init(coder:) has not been implemented") 

} 
} 

답변

1

하지만 난 당신의 코드에서이 오류가 있어야한다고 생각합니다.

(EXC_BREAKPOINT원인) 첫 번째 문제 당신의 첫 번째 라인을 쓰기 수 :

override init(size: CGSize) { 
     super.init(size: size) 
     // here there is your code 
} 

이이 방법의 존재를 설명 할 것 : 장면 클래스의 required init?(coder aDecoder: NSCoder) {}, 을 현재의 장면은 편의 생성자로 초기화 할 수 있습니다.

public convenience init?(fileNamed filename: String) 

wh SKS 상대 파일 장면이라고 부를 까? 즉,에 당신의 GameViewController 당신이 했어야 :

if let scene = SKScene(fileNamed: "GameScene") {} 

대신 :

let scene = SKScene(size: self.view.frame.size) 

하기 때문에 컴파일러 충돌은 :

required init?(coder aDecoder: NSCoder) { 
     fatalError("init(coder:) has not been implemented") 
} 

때문에 클래스의 재정의 (다음 호출) 고전적인 init 메소드.

실제로
override func didMove(to view: SKView) { 
     print("GameScene") 
     // here there is your code 
} 

이 방법은 후 즉시 호출됩니다

두 번째 문제SKScene 객체가 이미 SKView 객체에 의해 제공됩니다 때 당신이 당신의 코드를 사용할 수 있도록 SKTransition가, 호출해야한다는 것입니다 장면이 뷰에 의해 표시됩니다.

+0

도움 주셔서 감사합니다. 장면으로 전환 할 때부터 내 오류가 발생하는 업데이트 된 질문을 확인할 수 있습니까? – Robert

+0

Congratulations 클래스를 어떻게 작성했는지에 따라 코드가 달라질 수 있습니다. –

+0

내 코드를 한 번 더 업데이트했습니다. 축하 수업을 볼 수 있습니다. – Robert

관련 문제