2015-07-21 3 views
0

Я делаю очень простую космическую игру; Кажется, я не могу заставить последнюю работу работать. В идеале, я хочу, чтобы космос переместился вверх, когда экран коснулся. Вот мой код:Как применить базовый вектор к физическому телу в Swift 2.0

func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
    /* Called when a touch begins */ 

    for touch: AnyObject in touches { 

     touch.locationInNode(self) 

     spacey.physicsBody!.velocity = (CGVectorMake(0, 0)) 

     spacey.physicsBody!.applyImpulse(0, atPoint: 25) 

Кто-нибудь есть идеи, как это сделать?

+0

Если ваша точка быть целым? 'spacey.physicsBody! .applyImpulse (0, atPoint: 25)' – milo526

+0

Я пробовал двойной, и он не работает –

ответ

0
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
    /* Called when a touch begins */ 

    for touch in touches { 
     _ = touch.locationInNode(self) 

     spacey.physicsBody!.velocity = CGVectorMake(0, 0) 
     spacey.physicsBody!.applyImpulse(CGVectorMake(0, 25)) 

Решение было изменить контакт в касаний использовать _ в стремительной 2.0

+1

В этом случае '_ =' ничего не делает. Вы изменили 'applyImpulse (0, atPoint: 25)' на 'applyImpulse (CGVectorMake (0, 25)), который исправил вашу проблему;) – milo526

Смежные вопросы