내 GameplayScene에서 다른 클래스를 사용하는 것에 대한 질문이 있습니다. 내가하려고하는 것은 휴대 전화의 X 축의 동작을 좌우로 움직이는 것입니다. 여기에 내가 이 클래스를 다른 클래스로 활성화하는 방법
import SpriteKit
import CoreMotion
class MotionClass: SKScene {
var player: Player?
var motionManager = CMMotionManager()
var destX: CGFloat = 0.0
override func sceneDidLoad() {
motionManager.accelerometerUpdateInterval = 0.2
motionManager.startAccelerometerUpdates(to: OperationQueue.current!) { (data, error) in
if let myData = data {
let currentX = self.player?.position.x
if myData.acceleration.x > 0.2 {
self.destX = currentX! + CGFloat(myData.acceleration.x * 100)
print("Tilted Right")
} else {
if myData.acceleration.x < -0.2 {
self.destX = currentX! + CGFloat(myData.acceleration.x * 100)
print("Tilted Left")
}
}
}
}
}
override func update(_ currentTime: TimeInterval) {
let action = SKAction.moveTo(x: destX, duration: 1)
self.player?.run(action)
}
}
지금 나는 motionBegan 기능 내 GameplayScene.swift이 클래스를 호출하기 위해 노력하고있어 내 MotionClass.swift에있는,하지만 난 그 일에 대해 이동하는 방법을 모르는 것입니다. MotionClass에 변수 'grapple'이 있습니까? 그러나 나는 거기에서 어디로 가야할지 모른다. 누구든지이 일을 잘 수행 할 수 있습니까?
나는 이미 scene = GameplayScene을 가지고있다. 나는 그것을 바꿔야 만한다. –
그럴 수 없습니다 .. 만약 motionclass에'.presentScene'이 없다면 GamePlayScene의 _inside_를 인스턴스화 할 수 있습니다 ... 장면 사이를 앞뒤로 바꾸지 않는 한 전역 적 필요 없음 – Fluidity
그냥하고 싶습니다. 초기 var motionManager : MotionClass? 이후에 내 GameplayScene에이를 구현하는 방법을 알고 싶습니다. –