Esempio n. 1
0
        public bool moverUnidad(String nombre, int x, int y, String nickname)
        {
            Matriz     m = encontrarMatriz(nombre);
            NodoMatriz n = null;

            if (m != null)
            {
                n = m.getNodo(nombre);
            }

            if (n != null)
            {
                int mx = x - n.Columna;
                int my = y - n.Fila;
                int r  = Math.Abs(mx) + Math.Abs(my);
                if (n.Nave.Movimiento >= r && m.getNodo(y, x) == null && n.Nave.Mover == 0 && n.Nave.Nickname.Equals(nickname))
                {
                    m.Eliminar(nombre);
                    matriz.Insertar(y, x, nombre, n.Nave.Nickname);
                    n.Nave.Mover = 1;
                    consola      = consola + nickname + ":  movio a la unidad " + nombre + ". \n ";
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Esempio n. 2
0
        private Matriz generarNuevaMatriz(String nick)
        {
            Matriz m = new Matriz(1);

            if (matriz.Anterior != null)
            {
                Encabezado fila = matriz.Anterior.Filas.Cabeza;
                while (fila != null)
                {
                    NodoMatriz n = fila.Acceso;
                    while (n != null)
                    {
                        if (n.Nave.Nickname.Equals(nick))
                        {
                            m.Insertar(n.Fila, n.Columna, n.Nave.Nombre, nick);
                        }
                        n = n.Derecha;
                    }
                    fila = fila.Siguiente;
                }
            }

            return(m);
        }
Esempio n. 3
0
 public void InsertarMatriz(int fila, int columna, String nombre, String nickname)
 {
     matriz.Insertar(fila, columna, nombre, nickname);
 }