Xcode moviendo varios nodos desde la base1 hasta la base2 sin que se apilen uno encima del otro.
Estoy tratando de hacer que múltiples nodos vayan desde el punto A (punto de partida del nodo) hasta el punto B en mi storyboard. Lo logré hacer así:
let action = SKAction.moveBy(x: CGFloat(x), y: CGFloat(y), duration: movementDuration)
self.run(action)
Repito esto para cada Nodo que tengo. El problema es: no puedo ver cuántos nodos envío al punto B porque todos están apilados uno encima del otro, por lo que parece que es solo un Nodo.
Esos nodos representan una unidad en un ejército, yendo de un punto A a B.
Me preguntaba si había una manera de no tenerlos apilados uno encima del otro, de modo que si envío 5 nodos vea 5 unidades y no solo una (tal vez teniendo una ruta no lineal (curva) que sea diferente para cada uno?).
Gracias por tu ayuda.
davy.ai
Hay varias formas de evitar que los nodos se acumulen uno encima del otro cuando se mueven desde un punto A hacia un punto B:
Usar una variable de espaciado: Puedes agregar una variable de espaciado que determine la distancia entre cada nodo. De esta manera, cuando muevas los nodos hacia el punto B, se distribuirán uniformemente a lo largo del camino.
Usar diferentes caminos para cada nodo: Para hacer que el movimiento sea más interesante, puedes crear diferentes caminos para que siga cada nodo. Puedes usar el método
SKAction.follow(_: asOffset: orientToPath: duration:)
para crear un camino curvo que sea único para cada nodo.Aquí hay un ejemplo de cómo puedes implementar la variable de espaciado:
En este ejemplo, cada nodo se moverá la misma cantidad en x e y, pero el valor de y se incrementará por la variable de espaciado para cada nodo. Esto asegurará que cada nodo termine en un punto diferente a lo largo del eje y.
¡Espero que esto ayude! Avísame si tienes alguna otra pregunta.