Hey Com,
Ich muss gerade für die Schule nen Spiel, PingPong, schreiben.
Dafür hab ich nun 2 Klassen, einmal das Menu mit den Buttons zum starten und einmal das Spiel allgemein.
Wenn ich das Spiel mit dem Menu aufrufe, startet das Spiel zwar, ich komm zur Namenseingabe etc., aber wenn ich dann mit der Tastatur den Schläger bewegen will, hängt sich das Spiel auf.
Wenn ich jetzt aber nur die Klasse PVP, also Player vs Player, starte, funktionieren die Schläger einwandfrei.
Hier mal ein Ausschnitt der Quelltexte:
Menu:
PVP:
Hoffe ihr könnt mir helfen,
Mfg. Pumbaaa
Ich muss gerade für die Schule nen Spiel, PingPong, schreiben.
Dafür hab ich nun 2 Klassen, einmal das Menu mit den Buttons zum starten und einmal das Spiel allgemein.
Wenn ich das Spiel mit dem Menu aufrufe, startet das Spiel zwar, ich komm zur Namenseingabe etc., aber wenn ich dann mit der Tastatur den Schläger bewegen will, hängt sich das Spiel auf.
Wenn ich jetzt aber nur die Klasse PVP, also Player vs Player, starte, funktionieren die Schläger einwandfrei.
Hier mal ein Ausschnitt der Quelltexte:
Menu:
Java:
public class Menu extends EBAnwendung
{
Knopf ButtPvp;
PVP PVP;
[...]
public Menu()
{
ButtPvp = new Knopf(100,200,200,50,"Player VS Player");
ButtPvp.setzeBearbeiterGeklickt("startPVP");
}
[...]
public void startPVP() throws IOException
{
PVP = new PVP();
}
[...]
}
PVP:
Java:
[...]
while(true){
if(dieTastatur.wurdeGedrueckt())
{
switch(dieTastatur.zeichen())
{
case'w': case'W':
{
if(yPosr1 != 60){
Pen.radiere();
Pen.bewegeBis(0, yPosr1);
Pen.zeichneRechteck(20,lenghP);
yPosr1 -= 10;
Pen.normal();
Pen.bewegeBis(0, yPosr1);
Pen.zeichneRechteck(20,lenghP);
}
break;
}
case's': case'S':
{
if(yPosr1 != 490 - lenghP){
Pen.radiere();
Pen.bewegeBis(0, yPosr1);
Pen.zeichneRechteck(20,lenghP);
yPosr1 += 10;
Pen.normal();
Pen.bewegeBis(0, yPosr1);
Pen.zeichneRechteck(20,lenghP);
}
break;
}
case Zeichen.PFEILOBEN :
{
if(yPosr2 != 60){
Pen.radiere();
Pen.bewegeBis(730, yPosr2);
Pen.zeichneRechteck(20,lenghP);
yPosr2 -= 10;
Pen.normal();
Pen.bewegeBis(730, yPosr2);
Pen.zeichneRechteck(20,lenghP);
}
break;
}
case Zeichen.PFEILUNTEN :
{
if(yPosr2 != 490 - lenghP){
Pen.radiere();
Pen.bewegeBis(730, yPosr2);
Pen.zeichneRechteck(20,lenghP);
yPosr2 += 10;
Pen.normal();
Pen.bewegeBis(730, yPosr2);
Pen.zeichneRechteck(20,lenghP);
}
break;
}
}
dieTastatur.weiter();
}
Clock.warte(10);
}
[...]
Hoffe ihr könnt mir helfen,
Mfg. Pumbaaa