J
Jonny0815
Gast
Hy
eigentlich sollte sich mein roter ball ja nach rechts bewegen (oder nach links ?)
tut er aber nicht X[
was mach ich falsch ?
[Java=42]
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Main extends Applet implements Runnable, KeyListener
{
//Variablen Ball
/**
*
*/
private static final long serialVersionUID = -484510456868672776L;
int x=20;
int y=20;
int radius=20;
KeyEvent ev;
// Spielthread
private Thread th;
// Variablen für die Doppelpufferung
private Image dbImage;
private Graphics dbg;
public void init()
{
setBackground(Color.blue);
addKeyListener(this);
}
public void start()
{
// Schaffen eines neuen Threads, in dem das Spiel läuft
th = new Thread(this);
// Starten des Threads
th.start ();
}
@SuppressWarnings("deprecation")
public void stop()
{
// Thread stoppen
th.stop();
// Thread auf null setzen
th = null;
}
public void keyPressed(KeyEvent e) {
if (ev.getKeyChar() == KeyEvent.VK_W)
x++;
{
}
}
public void keyReleased(KeyEvent e)
{
}
public void keyTyped(KeyEvent e)
{
}
public void run()
{
}
/** Update - Methode, Realisierung der Doppelpufferung zur Reduzierung des Bildschirmflackerns */
public void update (Graphics g)
{
// Initialisierung des DoubleBuffers
if (dbImage == null)
{
dbImage = createImage (this.getSize().width, this.getSize().height);
dbg = dbImage.getGraphics ();
}
// Bildschirm im Hintergrund löschen
dbg.setColor (getBackground ());
dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);
// Auf gelöschten Hintergrund Vordergrund zeichnen
dbg.setColor (getForeground());
paint (dbg);
// Nun fertig gezeichnetes Bild Offscreen auf dem richtigen Bildschirm anzeigen
g.drawImage (dbImage, 0, 0, this);
}
public void paint (Graphics g)
{
// Setzten der Zeichenfarbe auf Rot
g.setColor (Color.red);
// Zeichen eines gefüllten Kreises
g.fillOval (x - radius, y - radius, 2 * radius, 2 * radius);
}
}
[/Java]
thx
Jonny0815
eigentlich sollte sich mein roter ball ja nach rechts bewegen (oder nach links ?)
tut er aber nicht X[
was mach ich falsch ?
[Java=42]
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Main extends Applet implements Runnable, KeyListener
{
//Variablen Ball
/**
*
*/
private static final long serialVersionUID = -484510456868672776L;
int x=20;
int y=20;
int radius=20;
KeyEvent ev;
// Spielthread
private Thread th;
// Variablen für die Doppelpufferung
private Image dbImage;
private Graphics dbg;
public void init()
{
setBackground(Color.blue);
addKeyListener(this);
}
public void start()
{
// Schaffen eines neuen Threads, in dem das Spiel läuft
th = new Thread(this);
// Starten des Threads
th.start ();
}
@SuppressWarnings("deprecation")
public void stop()
{
// Thread stoppen
th.stop();
// Thread auf null setzen
th = null;
}
public void keyPressed(KeyEvent e) {
if (ev.getKeyChar() == KeyEvent.VK_W)
x++;
{
}
}
public void keyReleased(KeyEvent e)
{
}
public void keyTyped(KeyEvent e)
{
}
public void run()
{
}
/** Update - Methode, Realisierung der Doppelpufferung zur Reduzierung des Bildschirmflackerns */
public void update (Graphics g)
{
// Initialisierung des DoubleBuffers
if (dbImage == null)
{
dbImage = createImage (this.getSize().width, this.getSize().height);
dbg = dbImage.getGraphics ();
}
// Bildschirm im Hintergrund löschen
dbg.setColor (getBackground ());
dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);
// Auf gelöschten Hintergrund Vordergrund zeichnen
dbg.setColor (getForeground());
paint (dbg);
// Nun fertig gezeichnetes Bild Offscreen auf dem richtigen Bildschirm anzeigen
g.drawImage (dbImage, 0, 0, this);
}
public void paint (Graphics g)
{
// Setzten der Zeichenfarbe auf Rot
g.setColor (Color.red);
// Zeichen eines gefüllten Kreises
g.fillOval (x - radius, y - radius, 2 * radius, 2 * radius);
}
}
[/Java]
thx
Jonny0815