Как сделать спрайт сидеть на движущемся спрайте и путешествовать с ним. Я сделал прыжок с красным полем с импульсом, и когда он падает на черный блок, который движется, красная коробка остается, когда он упал, скользит движущийся объект, как нет трения. Условия тяжести, трение 1.0 в обоих даже пытались увеличить массу, но ничего не работало. Пожалуйста, дайте мне какие-либо подробности, как заставить его работать? благодаря переопределение функ didMoveToView (вид: SKView) { /* Настройка вашей сцены здесь */Как сделать спрайт сидеть на движущемся спрайте
self.physicsWorld.gravity = CGVectorMake(0.0, -9.8)
SquareOne.fillColor = UIColor.orangeColor()
SquareOne.position = CGPoint(x: self.frame.midX, y: self.frame.midY)
SquareOne.physicsBody = SKPhysicsBody(rectangleOfSize: SquareOne.frame.size)
SquareOne.physicsBody?.friction = 1.0
SquareOne.physicsBody?.restitution = 0.0
addChild(SquareOne)
SquareTwo.fillColor = UIColor.greenColor()
SquareTwo.position = CGPoint(x: self.frame.midX, y: self.frame.midY - 100)
SquareTwo.physicsBody = SKPhysicsBody(rectangleOfSize: SquareTwo.frame.size)
SquareTwo.physicsBody?.dynamic = false
SquareTwo.physicsBody?.affectedByGravity = false
SquareTwo.physicsBody?.friction = 1.0
SquareTwo.physicsBody?.restitution = 0.0
addChild(SquareTwo)
}
override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
/* Called when a touch begins */
for touch in (touches as! Set<UITouch>) {
let location = touch.locationInNode(self)
SquareTwo.runAction(SKAction.moveByX(-100, y: 0.0, duration: 3.0))
}
}
Чтобы сделать это более простым, если есть только два блок красные и черные. Красный страдает от тяжести, а черный не влияет на мою гравитацию. При нажатии кнопки «Бэган», когда я прикасаюсь, черные начинают двигаться в направлении х. Когда он перемещает красные блокировки блока. Как сделать это прикрепленным к черному блоку. –
У вас есть правильная идея. Вам просто нужно использовать физику для перемещения черных блоков. Вот как http://stackoverflow.com/questions/31590885/how-to-move-platform-with-velocity – 0x141E