/
/
/
/
/
/
/
import SpriteKit
import GameplayKit
import CoreMotion
import UIKit
class GameScene: SKScene, SKPhysicsContactDelegate {
let manager = CMMotionManager()
var player = SKSpriteNode()
var hole = SKSpriteNode()
var timer = Timer()
var timerint = 0
var time = SKLabelNode()
var minint = 0
var min = SKLabelNode()
var pos = SKNode()
var screenSize:CGSize!
override func didMove(to view: SKView) {
self.physicsWorld.contactDelegate = self
screenSize = self.frame.size
time = self.childNode(withName: "time")as! SKLabelNode // here is where i get the error
min = self.childNode(withName: "min")as! SKLabelNode
time.text = String(timerint)
min.text = String(minint)
manager.startAccelerometerUpdates()
manager.accelerometerUpdateInterval = 0.1
manager.startAccelerometerUpdates(to: OperationQueue.main){
(Data, error) in
self.physicsWorld.gravity = CGVector(dx: CGFloat((Data?.acceleration.x)!) * 10, dy: CGFloat((Data?.acceleration.y)!) * 10)
}
if timerint == 0 && minint == 0 {
timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(GameScene.time1), userInfo: nil, repeats: true)
}
}
func didBegin(_ contact: SKPhysicsContact) {
let bodyA = contact.bodyA
let bodyB = contact.bodyB
if bodyA.categoryBitMask == 1 && bodyB.categoryBitMask == 2 || bodyA.categoryBitMask == 2 && bodyB.categoryBitMask == 1 {
let gamescene = GameScene(fileNamed: "endscene")
self.scene?.view?.presentScene(gamescene)
gamescene?.size = self.size
timer.invalidate()
}
if bodyA.categoryBitMask == 2 && bodyB.categoryBitMask == 3 || bodyA.categoryBitMask == 3 && bodyB.categoryBitMask == 2 {
let gamescene = GameScene(fileNamed: "GameScene")
self.scene?.view?.presentScene(gamescene)
gamescene?.size = self.size
}
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
}
@objc func time1(){
timerint += 1
time.text = String(timerint)
if timerint == 60 {
timerint = 0
minint += 1
min.text = String(minint)
time.text = String(timerint)
}
}
override func update(_ currentTime: TimeInterval) {
}
}
please help me