Vistas de página la semana pasada

sábado, 18 de mayo de 2013

MOVIMIENTO DE MARIO

Para darle movimiento usé un KeyPressed sobre el panel que contiene a Mario, luego por medio de dos 'if'  le di el movimiento, sin embargo no logro que Mario se mueva estando encima del otro panel que contiene la imágen de fondo (el primer nivel)
éste es el código que usé para el movimiento:

@SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {

        LabelMario = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                formKeyPressed(evt);
            }
        });

        LabelMario.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imag/Mario1.png"))); // NOI18N

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(154, Short.MAX_VALUE)
                .addComponent(LabelMario)
                .addGap(126, 126, 126))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(58, 58, 58)
                .addComponent(LabelMario)
                .addContainerGap(81, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>                       

    private void formKeyPressed(java.awt.event.KeyEvent evt) {                               
        // TODO add your handling code here:
        int x= LabelMario.getX();
        int y= LabelMario.getY();

        if (evt.getKeyChar()==  'l'){
            x=x+4;
            LabelMario.setLocation(x,7);
        }
        if(evt.getKeyChar()=='p'){
            x=x-4;
            LabelMario.setLocation(x, y);
        }
    }

Así se ve: http://www.youtube.com/watch?v=zOCjJUngziM

No hay comentarios:

Publicar un comentario