Desplazamiento en 360 grados por un mapa.

1 mensajes, 1 páginas:  1 ↖ Volver a la lista de temas

Resultado: +0

1. alfred,

Una pregunta para programadores. No importa mucho el lenguaje ya que pienso el asunto es más de algoritmos que de líneas de código.
Busco ayuda con un tema que me está rompiendo la cabeza, pero con gusto. Intento crear en Python y Pygame un mapa 2D donde poder desplazarse por él. Es todo lo que busco por el momento.
Todo debe ser simple por ahora, por lo que he creado ese mapa 2D con listas de la siguiente manera.
para un mapa de 8 por 8:
altura = 8
Anchura = 8
Mapa = []
for y in range(0, altura, 1):
mapa.append([])
for x in range(0, anchura, 1):
mapa[y].append(0)

Como ven fácil hasta aquí. la posición de arriba a la izquierda sería en coordenadas y = 0, x = 0, y la posición de abajo a la derecha sería y = 7, x = 7.
Creo ahora un personaje que se desplazará por el mapa y lo posiciono en la casilla y3, x3 del mapa, esto sería más o menos en el centro.
Jugador = Objeto()
Jugador.coordenadas = [3,3]
Con esto ya puedo mover de forma sencilla al jugador.
Para desplazarse al norte cambiará sus coordenadas de y3, x3 a y2, x3, al este sería y3, x4, al sur sería y4, x3, al este sería y3, x2 etcétera.
Lo mismo para movimientos diagonales. Al noreste se movería por ejemplo a y2, x4, o al sureste se movería hacia y4, x2.
Pero la duda que me surge es cuando quiero darle más que 8 posibles movimientos direccionales y tener un movimiento en 360 grados. Pongo el ejemplo de Swamp FPS de Aprone, o el más conocido Survive The Wild. De Sam Tupy.
Que creen que debo investigar, por dónde empezar a buscar?
He estado buscando en stackoverflow, pero no doy con las palabras exactas con las que guiar a Google hacia la respuesta. agradecería mucho a quien me brinde alguna idea o algoritmo que me pueda ayudar a resolver este pequeño problema.

Resultado: +0

1 mensajes, 1 páginas:  1 ↖ Volver a la lista de temas

Responder al tema

Usted debe estar conectado para poder postear.

¿Perdió su contraseña? Crear una cuenta