Foros del Web » Programación para mayores de 30 ;) » Java »

PingPong Duda

Estas en el tema de PingPong Duda en el foro de Java en Foros del Web. Hola que tal. Ando viendo un curso de graficacion. un ejemplo simple del ping pong cambiar el sentido del golpe. la raqueta originalmente estaba a ...
  #1 (permalink)  
Antiguo 19/02/2014, 17:31
Avatar de Tyreal  
Fecha de Ingreso: noviembre-2011
Ubicación: ke-li
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 0
PingPong Duda

Hola que tal.
Ando viendo un curso de graficacion.

un ejemplo simple del ping pong

cambiar el sentido del golpe. la raqueta originalmente estaba a la derecha y mandaba el golpe al sentido contrario y la pelota va a pegar en las paredes. Cambie la raqueta hacia el otro extremo. pero no tengo ni idea como cambiar el golpe de sentido contrario


No se si haga falta que le pongo el código completo de las 3 clases que uso
Código:

parte que cambie para poner la raqueta del otro lado

        raque.setLocation(getHeight()-raque.getHeight()-220,getHeight()/2);

parte original

       //raque.setLocation(getWidth()-raque.getWidth()+4,getHeight()/2);
        add(raque);
        
        }
como pdran ver en este codigo es donde se ejerce el movimiento de la pelota. en la parte que dice fue golpe. Ahi la raqueta tiene dar el golpe a la pelota. al sentido contrario de como le efectúa este código

Código:
int increX=5;
   int increY=5;
    @Override
    public void run() {
       while (true)
       {
            transladar(increX,increY);
            if((getX()+getWidth())>getParent().getWidth() ||
                    getX()<0)
                    increX=-increX;
            if((getY()+getHeight())>getParent().getHeight()||
                    getY()<0)
                    increY=-increY;
            int xc=getX()+getWidth();
            int yc=getY()+getHeight()/2;
            if(getRaqueta()!=null && 
               getRaqueta().dentro(xc, yc))
            {    
               
                 //       "Fue golpe!!!");
                incrementaGolpe();
                setLocation(getRaqueta().getX()-getWidth()-2,getY());
                if (increX>0)
                    increX=-5;
                else
                    increY=-increY;
            }
           try {
               Thread.sleep(10);
           } catch (InterruptedException ex) {
               Logger.getLogger(Pelota.class.getName()).log(Level.SEVERE, null, ex);
           }
       }
    }
La clase raqueta no se las pongo. Debido que es el manejo de la raqueta con el ratón

Conque me digan como orientar el golpe con eso tengo.

Si requieren que le pase el proyecto completo me dicen

Etiquetas: clase
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:42.