import javax.swing.*; import java.awt.*; import java.util.*; /** * Panel grafico donde se desarrolla toda la accion del juego. (Incompleto aun) */ public class Panel extends JPanel { /** * Lista de personajes (Warriors). */ private ArrayList warrList; /** * Un reloj que muestra el tiempo del turno. */ private Clock clock; /** * Constructor. */ public Panel() { setBackground(Color.BLACK); warrList = new ArrayList(); clock = new Clock(this); } /** * Inicializa el escenario de juego. (Incompleto aun) * @param mapInfo Lista de comandos necesarios para crear el escenario de juego. */ public void createMap(ArrayList mapInfo) { return; } /** * Inicializa el estado inicial de los personajes. (Incompleto aun) * @param warrInfo Lista de comandos necesarios para crear los personajes (Warrriors). */ public void initWarriors(ArrayList warrInfo) { warrList.add(new Warrior(1, 200, 300)); warrList.add(new Warrior(2, 400, 350)); } /** * Realizar la accion correspondiente al comando. * @param cmd Comando. */ public void doCmd(String cmd) { if (cmd.equals("move 1 l")) { warrList.get(0).move_l(); } else if (cmd.equals("move 1 r")) { warrList.get(0).move_r(); } else if (cmd.equals("move 2 l")) { warrList.get(1).move_l(); } else if (cmd.equals("move 2 r")) { warrList.get(1).move_r(); } else { System.out.println("comando desconocido: " + cmd); } repaint(); } /** * Hace que el reloj empiece a contar el tiempo restante para que el jugador * haga sus movimientos. (incompleto aun) */ public void startClock() { //clock.start(); } /** * Redibujado de los componentes graficos. (uso interno) (incompleto aun) */ public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D)g; g2.setBackground(Color.BLACK); for (int i=0; i