Ich bekomme beim Übersetzen der Klasse SPIELSTEUERUNG die Fehlermeldung "cannot find symbol - method MONSTER(LABYRINTH,int,int)" für die Zeile . Alle relevanten Quellvodes habe ich unten noch einmal aufgeschrieben. Kann mir jemand helfen?
Java:
import java.util.Random;
class SPIELSTEUERUNG
{
//Attribute
int punkteStand;
int leben;
int level;
int punktewertNormalerKruemel;
int punktewertPowerkruemel;
LABYRINTH labyrinth;
MAMPFI mampfi;
STEUERUNGSANZEIGE steuerung;
MONSTER[] monsterliste;
Random zufallszahlGenerator;
SPIELSTEUERUNG()
{
punkteStand = 0;
leben = 3;
level = 1;
labyrinth = new LABYRINTH();
mampfi = new MAMPFI(labyrinth, labyrinth.MampfiStartXGeben(), labyrinth.MampfiStartYGeben());
steuerung = new STEUERUNGSANZEIGE();
steuerung.Anmelden(this);
punktewertNormalerKruemel = 1;
punktewertPowerkruemel = 1;
monsterliste = new MONSTER[4];
zufallszahlGenerator = new Random();
for (int zaehler = 0; zaehler <= 3; zaehler = zaehler+1)
{
monsterliste[zaehler].MONSTER(labyrinth, labyrinth.MonsterPositionXGeben(zaehler), labyrinth.MonsterPositionYGeben(zaehler));
}
}
void AufTasteReagieren(int taste)
{
switch(taste)
{
case 37:
mampfi.NachWestenBlicken();
break;
case 38:
mampfi.NachNordenBlicken();
break;
case 39:
mampfi.NachOstenBlicken();
break;
case 40:
mampfi.NachSüdenBlicken();
break;
case 83:
steuerung.TickerStarten(500);
break;
}
}
void SpielzugAuswerten()
{
if (labyrinth.KruemelbelegungAnzeigen(mampfi.PositionXGeben(), mampfi.PositionYGeben()) == 'P')
{
mampfi.UnverwundbarMachen();
KruemelEntfernen();
punkteStand = punkteStand+punktewertPowerkruemel;
steuerung.PunkteStandSetzen(punkteStand);
}
else
{
if(labyrinth.KruemelbelegungAnzeigen(mampfi.PositionXGeben(), mampfi.PositionYGeben()) == 'N')
{
KruemelEntfernen();
punkteStand = punkteStand+punktewertNormalerKruemel;
steuerung.PunkteStandSetzen(punkteStand);
}
}
}
void KruemelEntfernen()
{
labyrinth.KruemelEntfernen(mampfi.PositionXGeben(), mampfi.PositionYGeben());
}
void Tick()
{
switch (mampfi.BlickRichtungGeben())
{
case 'N':
mampfi.NachNordenBewegen();
SpielzugAuswerten();
break;
case 'S':
mampfi.NachSüdenBewegen();
SpielzugAuswerten();
break;
case 'W':
mampfi.NachWestenBewegen();
SpielzugAuswerten();
break;
case 'O':
mampfi.NachOstenBewegen();
SpielzugAuswerten();
break;
for (int zaehler = 0; zaehler == 3; zaehler = zaehler +1)
{
switch(zufallszahlGenerator.nextInt(7))
{
case 0:
monsterliste[zaehler].NachNordenBewegen();
SpielzugAuswerten();
break;
case 1:
monsterliste[zaehler].NachWestenBewegenBewegen();
SpielzugAuswerten();
break;
case 2:
monsterliste[zaehler].NachSüdenBewegen();
SpielzugAuswerten();
break;
case 3:
monsterliste[zaehler].NachOstennBewegen();
SpielzugAuswerten();
break;
case 4:
monsterliste[zaehler].InBlickrichtungBewegen();
SpielzugAuswerten();
break;
case 5:
monsterliste[zaehler].InBlickrichtungBewegen();
SpielzugAuswerten();
break;
case 6:
monsterliste[zaehler].InBlickrichtungBewegen();
SpielzugAuswerten();
break;
}
}
}
}
}
Java:
class MONSTER extends SPIELFIGUR
{
int geschwindigkeit;
int intelligenz;
MONSTERSYMBOL monsterSymbol;
MONSTER(LABYRINTH labyrinthNeu, int StartX, int StartY)
{
super(labyrinthNeu, StartX, StartY);
verwundbar = false;
intelligenz = 0;
geschwindigkeit = 5;
monsterSymbol = new MONSTERSYMBOL(StartX, StartY);
monsterSymbol.FuellFarbeSetzen("rot");
monsterSymbol.BlickRichtungSetzen('N');
}
void SymbolAktualisieren()
{
if ( verwundbar == false)
{
monsterSymbol.FuellFarbeSetzen("rot");
}
else
{
monsterSymbol.FuellFarbeSetzen("gelb");
}
monsterSymbol.PositionXSetzen(positionX);
monsterSymbol.PositionYSetzen(positionY);
monsterSymbol.BlickRichtungSetzen(blickrichtung);
}
void InBlickrichtungBewegen()
{
switch (blickrichtung)
{
case 'N':
NachNordenBewegen();
break;
case 'S':
NachSüdenBewegen();
break;
case 'W':
NachWestenBewegen();
break;
case 'O':
NachOstenBewegen();
break;
}
}
}