Merge pull request #109 from HGE-IT-Course-2016/currentPlayerBugFix

Hevorhebung des aktuellen Spielers
master
Felix Stupp 8 years ago committed by GitHub
commit 0b2ea206a3

@ -63,6 +63,7 @@ public abstract class GeneralMap extends World implements ButtonEvent
addObject( modus, 1500, 808); addObject( modus, 1500, 808);
for (int i = 0; i < playerList.length; i++) { for (int i = 0; i < playerList.length; i++) {
players[i] = new Player(i,playerList[i],colorList[i]); players[i] = new Player(i,playerList[i],colorList[i]);
addObject(players[i],0,0);
players[i].redrawPlayer(); players[i].redrawPlayer();
} }
@ -118,17 +119,17 @@ public abstract class GeneralMap extends World implements ButtonEvent
} }
switch (playerCount) { switch (playerCount) {
case 6: case 6:
addObject(players[5],1512,350); players[5].setLocation(1512,350);
case 5: case 5:
addObject(players[4],1512,230); players[4].setLocation(1512,230);
case 4: case 4:
addObject(players[3],1512,110); players[3].setLocation(1512,110);
case 3: case 3:
addObject(players[2],82,350); players[2].setLocation(82,350);
case 2: case 2:
addObject(players[1],82,230); players[1].setLocation(82,230);
} }
addObject(players[0],82,110); players[0].setLocation(82,110);
} }
/** /**
@ -190,6 +191,14 @@ public abstract class GeneralMap extends World implements ButtonEvent
return players[pID].getColor(); return players[pID].getColor();
} }
/**
Gibt die PlayerID des aktuellen Spielers an.
@return PlayerID des aktuellen Spielers
*/
public int getCurrentPlayerID() {
return currentPlayer;
}
/** /**
Gibt den Namen des aktuellen Spielers aus. Gibt den Namen des aktuellen Spielers aus.
@return Der Name des aktuellen Spielers @return Der Name des aktuellen Spielers

@ -223,6 +223,14 @@ public class Player extends Actor
} }
private Color getTextCol() {
return (getWorld().getCurrentPlayerID() == id) ? new Color(0,0,0) : new Color(255,255,255);
}
private Color getTransBackCol() {
return (getWorld().getCurrentPlayerID() == id) ? new Color(255,255,255) : new Color(0,0,0);
}
public void redrawPlayer() public void redrawPlayer()
{ {
int textSize = 20; int textSize = 20;
@ -231,8 +239,8 @@ public class Player extends Actor
n = "leererSpieler"; 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,getTextCol(),getTransBackCol());
statistics.drawImage(Name,0,0); statistics.drawImage(name,0,0);
setImage(statistics); setImage(statistics);
oDecide(statistics,textSize); oDecide(statistics,textSize);
@ -241,45 +249,27 @@ public class Player extends Actor
private void oDecide(GreenfootImage statistics,int textSize) private void oDecide(GreenfootImage statistics,int textSize)
{ {
GreenfootImage flag = new GreenfootImage("images\\BlaueArmee.jpg"); GreenfootImage flag = new GreenfootImage("images\\BlaueArmee.jpg");
redraw(statistics,flag,textSize);
switch(color) switch(color)
{ {
case 2: case 2:
flag = new GreenfootImage("images\\BlaueArmee.jpg"); flag = new GreenfootImage("images\\BlaueArmee.jpg");
redraw(statistics,flag,textSize);
break; break;
case 5: case 5:
flag = new GreenfootImage("images\\GelbeArmee.jpg"); flag = new GreenfootImage("images\\GelbeArmee.jpg");
redraw(statistics,flag,textSize);
break; break;
case 6: case 6:
flag = new GreenfootImage("images\\LilaArmee.jpg"); flag = new GreenfootImage("images\\LilaArmee.jpg");
redraw(statistics,flag,textSize);
break; break;
case 4: case 4:
flag = new GreenfootImage("images\\RoteArmee.jpg"); flag = new GreenfootImage("images\\RoteArmee.jpg");
redraw(statistics,flag,textSize);
break; break;
case 1: case 1:
flag = new GreenfootImage("images\\SchwarzeArmee.jpg"); flag = new GreenfootImage("images\\SchwarzeArmee.jpg");
redraw(statistics,flag,textSize);
break; break;
case 3: case 3:
flag = new GreenfootImage("images\\GrueneArmee.jpg"); flag = new GreenfootImage("images\\GrueneArmee.jpg");
redrawArrow(statistics,flag,textSize);
break; break;
} }
}
private void redrawArrow(GreenfootImage statistics,GreenfootImage flag, int textSize)
{
// redraw(statistics,flag,textSize);
redraw(statistics,flag,textSize); redraw(statistics,flag,textSize);
} }
@ -287,7 +277,7 @@ public class Player extends Actor
{ {
flag.scale(137,83); flag.scale(137,83);
statistics.drawImage(flag,0,textSize); statistics.drawImage(flag,0,textSize);
GreenfootImage playerStatistics = new GreenfootImage(stats[0] + "||" + stats[1] + "||" + stats[2] + "||" +stats[3] + "||" + stats[4] + "||" + stats[5],textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f)); GreenfootImage playerStatistics = new GreenfootImage(stats[0] + "||" + stats[1] + "||" + stats[2] + "||" +stats[3] + "||" + stats[4] + "||" + stats[5],textSize,getTextCol(),getTransBackCol());
statistics.drawImage(playerStatistics, 0, 103); statistics.drawImage(playerStatistics, 0, 103);
setImage(statistics); setImage(statistics);

Loading…
Cancel
Save