Witam!
Jestem bardzo zielony w programowaniu, ale postanowiłem zrobić prostą interakcje (bo to jeszcze nie gra). Ma ona polegac na tym że gdy wciśnie sie strzałkę w jakimś kierunku ,np. w prawo to obrazek który jest na środku zostanie przemalowany o 5 pikseli w prawo. Inaczej mówiąc, po prostu animacja ruchu w zalezności od wciśnietego klawisza. No i "coś" już stworzyłem tylko jest mały problem, bo gdy naciskam klawisze w lewo i go góry to obrazek porusza się tak jak powinien ale jak naciskam strzałki w prawo i w dół to jakoś ma opory... Pomóżcie proszę początkującemu. Z góry wielkie dzięki :-)
public class Main2 extends Applet implements KeyListener
{
public int x=100;
public int y=100;
public int stan = 0;
Image obrazek;
public void init ()
{
addKeyListener (this);
obrazek=getImage(getDocumentBase(), "Image2.jpg");
}
public void keyPressed(KeyEvent e) {
if(e.getKeyCode( ) == KeyEvent.VK_UP)
{
y=-5;
stan=1;
repaint();
}
if(e.getKeyCode( ) == KeyEvent.VK_DOWN)
{
y=+5;
stan=2;
repaint();
}
if(e.getKeyCode( ) == KeyEvent.VK_LEFT)
{
x=-5;
stan=3;
repaint();
}
if(e.getKeyCode( ) == KeyEvent.VK_RIGHT)
{
x=+5;
stan=4;
repaint();
}
}
public void keyReleased(KeyEvent e) {
getGraphics().drawImage(obrazek, x, y, this);
}
public void paint (Graphics g)
{
g.setColor(Color.blue);
switch(stan)
{
case 1:
g.drawString("Wcisnąłeś strzałkę do góry", 20, 20);
g.drawImage(obrazek, x, y, this);
break;
case 2:
g.drawString("Wcisnąłeś strzałkę na dół", 20, 20);
g.drawImage(obrazek, x, y, this);
break;
case 3:
g.drawString("Wcisnąłeś strzałkę w lewo", 20, 20);
g.drawImage(obrazek, x, y, this);
break;
case 4:
g.drawString("Wcisnąłeś strzałkę w prawo", 20, 20);
g.drawImage(obrazek, x, y, this);
break;
default:
g.drawString("Używaj strzałek do kierowania", 20, 20);
g.drawImage(obrazek, x, y, this);
break;
}
}
}