Hallo,
ich habe gerade ein Java-Projekt aus dem letzten Schuljahr wieder aufgenommen. Leider habe ich seitdem ein bisschen was vergessen, was ich eigentlich noch wissen sollte, kann mir das alleine aber nicht so wirklich erschließen.
Der Sinn des Spiels ist es, Spongebob durch ein "Labyrinth" zu Patric zu führen. Soweit klappt das schon ganz gut. Ich möchte jetzt allerdings noch, dass ein Bild/Label oder ähnliches erscheint, dass einen von mir bestimmten Text ausgibt, sobald Patric erreicht ist.
Wie gesagt, ich habe ein bisschen - um nicht zu sagen das Meiste - im letzten Jahr vergessen.
und
Vielen Dank an alle, die sich Geduld mit mir nehmen wollen
ich habe gerade ein Java-Projekt aus dem letzten Schuljahr wieder aufgenommen. Leider habe ich seitdem ein bisschen was vergessen, was ich eigentlich noch wissen sollte, kann mir das alleine aber nicht so wirklich erschließen.
Der Sinn des Spiels ist es, Spongebob durch ein "Labyrinth" zu Patric zu führen. Soweit klappt das schon ganz gut. Ich möchte jetzt allerdings noch, dass ein Bild/Label oder ähnliches erscheint, dass einen von mir bestimmten Text ausgibt, sobald Patric erreicht ist.
Wie gesagt, ich habe ein bisschen - um nicht zu sagen das Meiste - im letzten Jahr vergessen.
Code:
import java.awt.*;
import java.applet.*;
public class Labyrinth
{
int [][] feld = {
{0,0,0,0,1,2,1,1,1,1},
{0,1,1,0,1,0,1,5,1,0},
{0,1,1,0,1,0,0,0,0,0},
{4,1,3,0,1,1,1,0,1,0},
{1,0,0,6,0,0,1,1,1,7},
{1,1,1,0,1,3,1,1,1,0},
{1,1,1,0,1,1,0,0,0,0},
{0,8,0,0,0,0,0,1,0,0},
{0,1,0,1,1,1,1,0,1,0},
{3,0,0,1,1,1,3,0,0,0}
};
Image stein, spongebob, burger, patrick, qualle, sand, qualle2, qualle3, qualle4, happyend;
int hx,hy,qx,qy,q1x,q1y,q2x,q2y,q3x,q3y,q;
int punkte;
int h = 1;
public Labyrinth(Applet app)
{
// initialise instance variables
// feld = new int[10][10];
sand = app.getImage(app.getCodeBase(),"Sand.jpg");
spongebob = app.getImage(app.getCodeBase(),"Spongebob.jpg");
burger = app.getImage(app.getCodeBase(),"Burger.jpg");
patrick = app.getImage(app.getCodeBase(),"Patrick.jpg");
qualle = app.getImage(app.getCodeBase(),"Qualle.jpg");
qualle2 = app.getImage(app.getCodeBase(),"Qualle.jpg");
qualle3 = app.getImage(app.getCodeBase(),"Qualle.jpg");
qualle4 = app.getImage(app.getCodeBase(),"Qualle.jpg");
stein = app.getImage(app.getCodeBase(),"Stein.jpg");
hx=5;
hy=0;
qx=7;
qy=2;
q=-1;
//q1x=
//q1y=
//q2x=
//q2y=
//q3x=
//q3y=
}
public void anzeigen(Applet app, Graphics g){
g.setColor(Color.WHITE);
g.fillRect(0,0,500,500);
g.setColor(Color.BLACK);
qualleMove();
for (int y = 0; y < 10; y++)
for (int x = 0; x < 10; x++){
switch (feld[x][y]){
if (h = 1) {
case 0: g.drawImage(sand, x*50,y*50,50,50,app); break;
case 1: g.drawImage(stein, x*50,y*50,50,50,app); break;
case 2: g.drawImage(spongebob, x*50,y*50,50,50,app); break;
case 3: g.drawImage(burger, x*50,y*50,50,50,app); break;
case 4: g.drawImage(patrick, x*50,y*50,50,50,app); break;
case 5: g.drawImage(qualle, x*50,y*50,50,50,app); break;
case 6: g.drawImage(qualle2, x*50,y*50,50,50,app); break;
case 7: g.drawImage(qualle3, x*50,y*50,50,50,app); break;
case 8: g.drawImage(qualle4, x*50,y*50,50,50,app); break;
}
if (h = 2) {
g.drawImage(happyend, 0,0,500,500); break;
}
}
}
}
public void qualleMove(){
feld[qy][qx] = 0;
q++;
if (q<=3)
qy++;
if (q>2){
qy--;
}
if (q>4){
q=1;
qy=2;
}
feld[qy][qx] = 5;
}
public boolean links(Applet app, Graphics g)
{
boolean erg=true;
if (feld[hy][hx-1] != 1){//keine Wand
feld[hy][hx]=0;
hx--;
if (feld[hy][hx] == 3)
punkte= punkte + 100;
if (feld[hy][hx] == 4){
//g.drawImage(happyend, 0,0,500,500); break;
h++;
}
if (feld[hy][hx] == 5)
{hy= 0 ; hx= 5;}
feld[hy][hx]=2;
}
return erg;
}
public boolean oben(Applet app, Graphics g)
{
boolean erg=true;
if (feld[hy-1][hx] != 1){//keine Wand
feld[hy][hx]=0;
hy--;
if (feld[hy][hx] == 3)
punkte= punkte + 100;
if (feld[hy][hx] == 4){
//g.drawImage(happyend, 0,0,500,500); break;
h++
}
if (feld[hy][hx] == 5)
{hy= 0 ; hx= 5;}
feld[hy][hx]=2;
}
return erg;
}
public boolean rechts(Applet app, Graphics g)
{
boolean erg=true;
if (feld[hy][hx+1] != 1){//keine Wand
feld[hy][hx]=0;
hx++;
if (feld[hy][hx] == 3)
punkte= punkte + 100;
if (feld[hy][hx] == 4){
//g.drawImage(happyend, 0,0,500,500); break;
h++
}
if (feld[hy][hx] == 5)
{hy= 0 ; hx= 5;}
feld[hy][hx]=2;
}
return erg;
}
public boolean unten(Applet app, Graphics g)
{
boolean erg=true;
if (feld[hy+1][hx] != 1){//keine Wand
feld[hy][hx]=0;
hy++;
if (feld[hy][hx] == 3)
punkte= punkte + 100;
if (feld[hy][hx] == 4){
//g.drawImage(happyend, 0,0,500,500); break;
h++
}
if (feld[hy][hx] == 5)
{hy= 0 ; hx= 5;}
feld[hy][hx]=2;
}
return erg;
}
}
und
Code:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Territorium extends JApplet implements KeyListener
{
Labyrinth geh;
Label lb;
int punkte;
public void init()
{
geh = new Labyrinth(this);
getContentPane().setLayout(null);
lb = new Label (" Punkte " );
lb.setBounds(450,200,50,50);
getContentPane().add(lb);
lb.addKeyListener(this);
lb.requestFocus();
}
public void keyTyped(KeyEvent e) {}
public void keyPressed(KeyEvent e) {
int taste = e.getKeyCode();
String s = " " + geh.punkte ;
lb.setText(s);
switch(taste) {
case 37: geh.oben();break;
case 38: geh.links();break;
case 39: geh.unten();break;
case 40: geh.rechts();break;
}
repaint();
lb.requestFocus();
}
public void keyReleased(KeyEvent e) {}
public void paint (Graphics g){
geh.anzeigen(this,g);
}
}
Vielen Dank an alle, die sich Geduld mit mir nehmen wollen