mover un elemento dentro de la matriz

Iniciado por agusfracca, 17 Octubre 2018, 01:39 AM

0 Miembros y 1 Visitante están viendo este tema.

agusfracca

Hola, necesito ayuda con tema matrices. Yo tengo una matriz que representa un escenario de un juego y tengo dentro el jugador, que necesito que se mueva para arriba cuando el usuario me ingrese la letra w, abajo cuadno ingrese s , derecha cuando ingrese d e izquierda cuando ingrese a.
Necesito hacerlo de forma general, o sea por ejemplo que cuando apriete w, suba una fila y se mantenga en esa columna. alguien me podría ayudar o dar una pista sobre como puedo hacerlo?? gracias.

Serapis

#1

char x  //carácter que ingresa el jugador
entero ancho //ancho del mapa
entero alto   // alto del mapa
entero fila  // la fila actual donde está
entero columna // la columna actual donde está.

funcion MoverJugador (char x)
   entero tmpFila, tmpColumna

   si x="d" //derecha
       Si (columna < (ancho-1))  // si no está en la última casilla de dicha fila.
           tmpColumna = (columna +1)
       fin si
   Osi x="a" // izquierda
       si (columna > 0)
           tmpColumna= (columna -1)
       fin si
   Osi x="w"   // arriba
       Si (fila > 0)
           tmpFila= (fila -1)
       fin si
   Osi x="s" // abajo
       Si (fila < (alto-1))  
           tmpFila= (fila +1)
       fin si
   YSino  // cualquier otro carácter sale... incluído los previos en mayúsculas.
       devolver
   fin si

   BorrarJugador(fila, columna)  // bora el jugador donde esta (redibuja esa casilla vacía)
   fila = tmpFila
   columna = tmpColumna
   DibujarJugador(fila, columna)   // dibuja el jugador 'encima' de la casilla
fin funcion


Hale, listo... te toca a tí pasar el pseudocódigo...