thr.java
[HIGHLIGHT="Java"]import java.io.*;
public class thr extends Thread
{
main ref;
public thr(main r)
{
ref = r;
}
public void jump()
{
for (int i = 0; i < 10; i++) {
try {
Thread.sleep(20);
}
catch (InterruptedException e) {e.printStackTrace();}
ref.bmario_rj = true;
ref.mposy = ref.mposy-2;
ref.repaint();
}
}
}[/HIGHLIGHT]
main.java
[HIGHLIGHT="Java"]import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class main
extends JFrame
implements KeyListener
{
// Anfang Variablen
double vergleich = -1300;
int mposx=10;
int mposy=157;
int gposx=60;
int cposx=120;
int bposx=1;
int geschwindigkeit=2;
boolean bmario_rw;
boolean bmario_rj;
boolean bmario_lw;
boolean bmario_ls;
boolean bmario_rs = true;
int x=1;
JPanel panel = new JPanel();
thr eins = new thr(this);
// Ende Variablen
public main(final String title) {
// Frame-Initialisierung
super(title);
addKeyListener(this);
addWindowListener(new WindowAdapter() {
public void windowClosing(final WindowEvent evt) { System.exit(0); } });
final int frameWidth = 200;
final int frameHeight = 200;
setSize(frameWidth, frameHeight);
setResizable(false);
Container cp = getContentPane(); cp.setLayout( null ); //JFrame
//setLayout( null );
// Anfang Komponenten
// Ende Komponenten
setVisible(true);
}
public void keyPressed(KeyEvent event)
{
if (event.getKeyChar() == KeyEvent.CHAR_UNDEFINED)
{
bmario_ls = false; // Wenn Mario sich bewegt nicht mehr links oder recht stehen
bmario_rs = false;
int key = event.getKeyCode();
//Funktionstaste abfragen
if(key == KeyEvent.VK_RIGHT) //Mario rechts laufen
{
if(mposx<140)
{
bmario_rj = false;
bmario_rw = true;
mposx=mposx+geschwindigkeit;
}
else
{
bmario_rj = false;
bmario_rw = true;
mposx=mposx;
gposx = gposx-geschwindigkeit; //Objekte beim laufen verschieben
cposx = cposx-1;
bposx = bposx-geschwindigkeit;
if(bposx < vergleich)
{
mposx=mposx+geschwindigkeit;
bposx = bposx+geschwindigkeit;
gposx = gposx+geschwindigkeit;
}
}
if(mposx>200)
{
}
}
else bmario_rw = false;
if(key == KeyEvent.VK_LEFT) // Mario links laufen
{
if(mposx>2)
{
bmario_rj = false;
bmario_lw = true;
mposx=mposx-geschwindigkeit;
}
else
{
bmario_lw = true;
mposx=mposx;
}
}
else bmario_lw = false;
if(key == KeyEvent.VK_UP) //Mario hoch laufen
{
eins.jump();
}
if(key == KeyEvent.VK_DOWN) //Mario runter laufen
{
}
repaint();
}
}
public void keyTyped(KeyEvent event)
{
}
public void keyReleased(KeyEvent event) // Key losgelassen wieder stehen?!?!?
{
bmario_rw = false;
bmario_lw = false;
int key = event.getKeyCode();
if(key == KeyEvent.VK_RIGHT) //Mario rechts laufen
{
bmario_rs = true;
}
if(key == KeyEvent.VK_LEFT) //Mario links laufen
{
bmario_ls = true;
}
// Bis hier
}
// Anfang Ereignisprozeduren
public void paint(Graphics g)
{
Image mario_lj;
Image mario_rs;
Image mario_rw;
Image mario_ls;
Image mario_lw;
Image mario_rj;
Image goomba;
Image background;
//Image cloud;
background = getToolkit().getImage("background.gif");
mario_lj = getToolkit().getImage("MarioJumpingLeft.gif");
mario_rs = getToolkit().getImage("MarioStandingRight.gif");
mario_rw = getToolkit().getImage("MarioRight.gif");
mario_ls = getToolkit().getImage("MarioStandingLeft.gif");
mario_rj = getToolkit().getImage("MarioJumpingRight.gif");
mario_lw = getToolkit().getImage("MarioLeft.gif");
//cloud = getToolkit().getImage("cloud.jpg");
goomba = getToolkit().getImage("goomba.gif");
g.drawImage(background,bposx,-7,this);
//g.setColor(new Color(63,191,255));
//g.fillRect(1,1,200,200);
if (bmario_rw == true)
{
g.drawImage(mario_rw,mposx,mposy,this);
}
if (bmario_lw == true)
{
g.drawImage(mario_lw,mposx,mposy,this);
}
if (bmario_rj == true)
{
g.drawImage(mario_rj,mposx,mposy,this);
}
if (bmario_rs == true)
{
g.drawImage(mario_rs,mposx,mposy,this);
}
if (bmario_ls == true)
{
g.drawImage(mario_ls,mposx,mposy,this);
}
g.drawImage(goomba,gposx,169,this); //Goomba
//g.drawImage(cloud,cposx,50,this); //Wolke
//g.setColor(new Color(139,90,43));
//g.fillRect(1,185,200,11);
}
// Ende Ereignisprozeduren
public static void main(final String[] args) {
new main("main");
}
}[/HIGHLIGHT]