Player-Erstellung korrektur

Ist zwar nicht mein Job, aber hat genervt...
Jetzt tut es
master
SariusRu 8 years ago
parent a37da3c4c9
commit 1332d185f9

@ -8,118 +8,129 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
*/ */
public class Colours extends World implements ButtonEvent public class Colours extends World implements ButtonEvent
{ {
Button schwarz = new Button ("Schwarz", 16, this); Button schwarz = new Button ("Schwarz", 16, this);
Button blau = new Button ("Blau", 16, this); Button blau = new Button ("Blau", 16, this);
Button grün = new Button ("Grün", 16, this); Button grün = new Button ("Grün", 16, this);
Button rot = new Button ("Rot", 16, this); Button rot = new Button ("Rot", 16, this);
Button lila = new Button ("Lila", 16, this); Button lila = new Button ("Lila", 16, this);
Button gelb = new Button ("Gelb", 16, this); Button gelb = new Button ("Gelb", 16, this);
Button weiter = new Button ("Weiter", 16, this); Button weiter = new Button ("Weiter", 16, this);
int [] color = new int [6]; int [] color = new int [6];
String [] pn = new String [6]; String [] pn = new String [6];
int x = 0; int x = 0;
boolean possw = true; boolean possw = true;
boolean posbl = true; boolean posbl = true;
boolean posgr = true; boolean posgr = true;
boolean posrt = true; boolean posrt = true;
boolean posgb = true; boolean posgb = true;
boolean posli = true; boolean posli = true;
int sw = 1; int sw = 1;
int bl = 2; int bl = 2;
int gr = 3; int gr = 3;
int rt = 4; int rt = 4;
int gb = 5; int gb = 5;
int li = 6; int li = 6;
/** /**
* Constructor for objects of class Colors. * Constructor for objects of class Colors.
* *
*/ */
public Colours(int x, int y, int z) public Colours(int x, int y, int z)
{ {
super(x, y, z); super(x, y, z);
addObject(schwarz, 50, 30); addObject(schwarz, 50, 30);
addObject ( blau, 170, 30); addObject ( blau, 170, 30);
addObject ( grün, 280, 30); addObject ( grün, 280, 30);
addObject ( rot, 390, 30); addObject ( rot, 390, 30);
addObject(gelb, 500, 30); addObject(gelb, 500, 30);
addObject(lila, 610, 30); addObject(lila, 610, 30);
addObject (weiter, 335,90); addObject (weiter, 335,90);
schwarz.setSize(100, 50); schwarz.setSize(100, 50);
gelb.setSize(100, 50); gelb.setSize(100, 50);
blau.setSize(100, 50); blau.setSize(100, 50);
grün.setSize(100, 50); grün.setSize(100, 50);
rot.setSize(100, 50); rot.setSize(100, 50);
lila.setSize(100, 50); lila.setSize(100, 50);
weiter.setSize(100, 50); weiter.setSize(100, 50);
} }
// Überprüft, ob ein Farbbutton geklickt wurde // Überprüft, ob ein Farbbutton geklickt wurde
//Überprüft, ob die Farbe noch nicht ausgewählt wurde //Überprüft, ob die Farbe noch nicht ausgewählt wurde
// Wenn alle Bedingungen erfüllt wurden: // Wenn alle Bedingungen erfüllt wurden:
// Setzt die aktuelle Stelle des Farbarrays gleich der Zahl der aktuellen Farbe // Setzt die aktuelle Stelle des Farbarrays gleich der Zahl der aktuellen Farbe
// erhöht die Variable zum Durchzählen um eins // erhöht die Variable zum Durchzählen um eins
// verhindert durch falschsetzten einer Variable die Wiederauswahl einer Farbe // verhindert durch falschsetzten einer Variable die Wiederauswahl einer Farbe
// wenn Weiter geklickt wurde und x größer 1 ist wird eine neue Welt Map erzeugt, // wenn Weiter geklickt wurde und x größer 1 ist wird eine neue Welt Map erzeugt,
//der per Konstruktor die Daten der Colorklasse übertragen werden, dannach wird die Map die aktive Welt //der per Konstruktor die Daten der Colorklasse übertragen werden, dannach wird die Map die aktive Welt
public void buttonClicked (Button b) public void buttonClicked (Button b)
{ {
if ( b == schwarz && possw == true)
if ( b == schwarz && possw == true) {
{ color[x] = sw;
color [x] = sw; pn[x]="Schwarz";
pn[x]="Schwarz"; x+=1;
x+=1; possw = false;
possw = false; System.out.println("HI");
} }
if (b == blau && posbl == true) if (b == blau && posbl == true)
{ {
color[x] = bl; color[x] = bl;
pn[x] = "Blau"; pn[x] = "Blau";
x+=1; x+=1;
posbl = false; posbl = false;
} System.out.println("HI");
if (b == grün && posgr == true ) }
{ if (b == grün && posgr == true )
color[x] = gr; {
pn[x]="Grün"; color[x] = gr;
x+=1; pn[x]="Grün";
posgr = false; x+=1;
} posgr = false;
if ( b == rot && posrt == true) System.out.println("HI");
{ }
color[x] = rt; if ( b == rot && posrt == true)
pn[x]="Rot"; {
x+=1; color[x] = rt;
posrt = false; pn[x]="Rot";
} x+=1;
if ( b == gelb && posgb == true) posrt = false;
{ System.out.println("HI");
color [x] = gb; }
pn[x]="Gelb"; if ( b == gelb && posgb == true)
x+=1; {
posgb = false; color [x] = gb;
} pn[x]="Gelb";
if ( b == lila && posli == true) x+=1;
{ posgb = false;
color [x] = li; System.out.println("HI");
pn[x]="Lila"; }
x+=1; if ( b == lila && posli == true)
posli = false; {
} color [x] = li;
if ( b == weiter && x >=2 ) pn[x]="Lila";
{ x+=1;
String[] newpn = new String[x]; posli = false;
int[] newcolor = new int[x]; System.out.println("HI");
for (int i = 0; i< x; i++) }
{ if ( b == weiter && x >=2 )
newpn[i] = pn[i]; {
newcolor[i] = color[i]; String[] newpn = new String[x];
} int[] newcolor = new int[x];
World m = new Map(newcolor, x,newpn); for (int i = 0; i< x; i++)
Greenfoot.setWorld(m); {
} newpn[i] = pn[i];
} newcolor[i] = color[i];
}
World m = new Map(newcolor,x,newpn);
Greenfoot.setWorld(m);
System.out.println("HIFertig");
System.out.println(x);
}
}
} }

@ -11,8 +11,8 @@ public class Map extends World implements ButtonEvent
private Button map1 = new Button ("map1",16,this); private Button map1 = new Button ("map1",16,this);
private Button map2 = new Button ("map2",16,this); private Button map2 = new Button ("map2",16,this);
private Button fertigst = new Button (" Fertigstellen",16,this); private Button fertigst = new Button (" Fertigstellen",16,this);
int [] colour = new int[6]; int[] colour;
String [] pn = new String [6]; String[] pn;
int pnu; int pnu;
//private int x; //private int x;
//private int y; //private int y;
@ -20,11 +20,12 @@ public class Map extends World implements ButtonEvent
private Map_World MW ; private Map_World MW ;
// int [] newcolour = new int [pnu]; // int [] newcolour = new int [pnu];
// String [] newpn = new String [pnu]; // String [] newpn = new String [pnu];
public Map( int [] bunt, int zahl , String [] name) public Map( int[] bunt, int zahl , String [] name)
{ {
super (1600,900,1); super (1600,900,1);
for (int i=0; i<pnu; i++) colour = new int[zahl];
pn = new String[zahl];
for (int i=0; i<zahl; i++)
{ {
colour[i] = bunt[i]; colour[i] = bunt[i];
pn[i] = name[i]; pn[i] = name[i];
@ -38,14 +39,14 @@ public class Map extends World implements ButtonEvent
fertigst.setSize(100, 50); fertigst.setSize(100, 50);
// for ( int i=0; i<=pnu; i++) // for ( int i=0; i<=pnu; i++)
// { // {
// newpn[i] = pn[i]; // newpn[i] = pn[i];
// newcolour[i] = colour[i]; // newcolour[i] = colour[i];
// } // }
} }
// Die Map Buttons geben der Variable m einen Wert // Die Map Buttons geben der Variable m einen Wert
public void buttonClicked(Button b) public void buttonClicked(Button b)
{ {
if (b== map1) if (b== map1)
{ {
//x= ; //x= ;

@ -219,6 +219,10 @@ public class Player extends Actor
public void redrawPlayer() public void redrawPlayer()
{ {
int textSize = 20; int textSize = 20;
if(n == null)
{
n = "leererSpieler";
}
GreenfootImage statistics = new GreenfootImage(137,120); GreenfootImage statistics = new GreenfootImage(137,120);
GreenfootImage Name = new GreenfootImage(n,textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f)); GreenfootImage Name = new GreenfootImage(n,textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f));
statistics.drawImage(Name,0,0); statistics.drawImage(Name,0,0);

Loading…
Cancel
Save