2017-01-11 2 views
1

Я разрабатываю небольшую игру в Swift 3. Я хочу, чтобы переместить мои враг в положение персонажа, я пытался использовать эту функцию:Как сгенерировать CGVector с двумя CGPoint в Swift 3

let actionTransaction6 = SKAction.move(to: CGPoint(x: 
personaje.position.x, y:personaje.position.y), duration: 6.0 - 
Double(nivel)) 

enemigo6.run(actionTransaction6) 

Но враг остановить, когда они прибывают в начальный момент моего характера. Я знаю, что есть функция двигаться в определенном направлении, но я не смог «найти» свой CGVector. Это может быть что-то вроде этого или что?

SKAction.move(by: enemigo6.position - personaje.position, duration: 10) 

Благодарим за внимание!

ответ

2

Оператор - не определен для CGPoint, и нет никакой функции для создания CGVector из двух пунктов.

Просто создайте вектор вручную из компонентов:

let movement = CGVector(
    x: enemigo6.x - personaje.position.x, 
    y: enemigo6.y - personaje.position.y 
) 
SKAction.move(by: movement, duration: 10) 
+0

The SKAction.move (по: ... продолжительность: ...) делать то же самое, как в SKAction.move (к: ... , продолжительность: ...), и я не знаю, почему ... @Sulthan – HessianMad