In addition to what Kevin said
public void run()
while(true){
shoot_class.PLAYER_SHOOT_MOVE(this, player_class, shoot_class); //player shoot bullet moves
}
}
if this is the loop that keeps the game in motion then, this method gets called, (over and over at as fast as the computer can, which is a bad idea):
public void PLAYER_SHOOT_MOVE(Main m, Player p, Shoot s){
x = p.getX();
y = p.getY();
if(hitSPACE == true)
{
x += dx;
}
}
I think am following what you are trying to show in these unorganized snippets. But it is difficult to follow. Next time just post the entire thing in order so it is much easier to follow.
public void PLAYER_SHOOT_MOVE(Main m, Player p, Shoot s){
x = p.getX();
y = p.getY();
Is x and y some global variable? What do they mean? Things like this make it hard, if not impossible, to help you, but with the whole code posted we can look at what we need to see. This is the reason why you should post a working example.