Debug Session Fehlerbehebungen

GeneralMap
30: Konstruktor erweitert
38: playerList zu players
89: provinces[i]
91: pw zu pr
107: return Statement hinzugefügt
Map_World
25: Konstruktorparamter hinzugefügt und weitergeleitet
26: Konstruktor Aufruf entfernen
27: Internes Array nach außen verlagert
29: Kommentartyp angepasst
32: Kommentar verkürzt
Dice
64 & 65: Round zu round
72: Konstruktoraufruf von java.awt.geom.RoundRectangle2D.Double
73 & 76 & 79 & 82: else entfernt
Player
25: color-Eigenschaft als private Variable und als Konstruktorparameter eingeführt
42 & 49 & 123 & 127 & 138 & 189: Methoden von private zu public
ArmySchubser
18: Konstruktorparamter hinzugefügt und weitergeleitet
28 & 37: For-Anfang auf 1 erhöht
GUI_Interface
15 & 18: Standardgröße erhöht
pull/30/head
Zocker1999NET 8 years ago
parent a761c77552
commit 4f09f512ef

@ -15,8 +15,9 @@ public class ArmySchubser extends Map_World
* Constructor for objects of class ArmySchubser. * Constructor for objects of class ArmySchubser.
* *
*/ */
public ArmySchubser() public ArmySchubser(String[] playerList, int[] colorList)
{ {
super(playerList,colorList);
// Hi. // Hi.
} }
@ -25,7 +26,7 @@ public class ArmySchubser extends Map_World
Province firstProvince = null; Province firstProvince = null;
Province secondProvince = null; Province secondProvince = null;
for ( int i = 0; i <= provinceCount; i++) for ( int i = 1; i <= provinceCount; i++)
{ {
if (provinces[i].hasClicked() == true) if (provinces[i].hasClicked() == true)
{ {
@ -34,7 +35,7 @@ public class ArmySchubser extends Map_World
} }
} }
for ( int i = 0; i <= provinceCount; i++) for ( int i = 1; i <= provinceCount; i++)
{ {
if (provinces[i].hasClicked() == true && provinces[i] != firstProvince) if (provinces[i].hasClicked() == true && provinces[i] != firstProvince)
{ {

@ -61,25 +61,26 @@ public class Dice extends GUI_Interface {
*/ */
public void redraw() { public void redraw() {
// einheitliche Größe X und Y (ein Vierzehntel der gesamten Breite und Höhe) // einheitliche Größe X und Y (ein Vierzehntel der gesamten Breite und Höhe)
int eX = (int) Math.Round(sx/8); int eX = (int) Math.round(sx/8);
int eY = (int) Math.Round(sy/8); int eY = (int) Math.round(sy/8);
// Vereinfachung für die Augenzahl // Vereinfachung für die Augenzahl
int a = number; int a = number;
GreenfootImage i = new GreenfootImage(sx,sy); GreenfootImage i = new GreenfootImage(sx,sy);
i.setColor(new java.awt.Color(0,0,0,0)); i.setColor(new java.awt.Color(0,0,0,0));
i.clear(); i.clear();
i.setColor(backC); i.setColor(backC);
i.fillShape(0,0,sx,sy,eX/2,eY/2); i.fillShape(new java.awt.geom.RoundRectangle2D.Double(0,0,sx,sy,eX/2,eY/2));
i.setColor(foreC); i.setColor(foreC);
// das "else" fehlt absichtlich
if(a==1||a==3||a==5) { //Mittlerer Punkt if(a==1||a==3||a==5) { //Mittlerer Punkt
fO(i,eX,eY,3,3); fO(i,eX,eY,3,3);
} else if(a>1) { //Punkte links-oben und rechts-unten } if(a>1) { //Punkte links-oben und rechts-unten
fO(i,eX,eY,1,1); fO(i,eX,eY,1,1);
fO(i,eX,eY,5,5); fO(i,eX,eY,5,5);
} else if(a>3) { //Punkte links-unten und rechts-oben } if(a>3) { //Punkte links-unten und rechts-oben
fO(i,eX,eY,1,5); fO(i,eX,eY,1,5);
fO(i,eX,eY,5,1); fO(i,eX,eY,5,1);
} else if(a>5) { //Punkte links-mitte und rechts-mitte } if(a>5) { //Punkte links-mitte und rechts-mitte
fO(i,eX,eY,1,3); fO(i,eX,eY,1,3);
fO(i,eX,eY,5,3); fO(i,eX,eY,5,3);
} }

@ -12,11 +12,11 @@ public abstract class GUI_Interface extends Actor
/** /**
Die Breite des Objektes Die Breite des Objektes
*/ */
protected int sx = 1; protected int sx = 20;
/** /**
Die Höhe des Objektes Die Höhe des Objektes
*/ */
protected int sy = 1; protected int sy = 20;
/** /**
Die Hintergrundfarbe des Objektes Die Hintergrundfarbe des Objektes
*/ */

@ -27,7 +27,11 @@ public abstract class GeneralMap extends World
*/ */
public GeneralMap(String backImage, String[] playerList, int[] colorList) public GeneralMap(String backImage, String[] playerList, int[] colorList)
{ {
super(1600,900,1);
players = new Player[playerList.length];
for (int i = 0; i < playerList.length; i++) {
players[i] = new Player(i,playerList[i],colorList[i]);
}
} }
/** /**
@ -35,7 +39,7 @@ public abstract class GeneralMap extends World
*/ */
public int getPlayerCount() public int getPlayerCount()
{ {
return playerList.length; return players.length;
} }
/** /**
@ -86,9 +90,9 @@ public abstract class GeneralMap extends World
{ {
int[] prOwners = new int[provinces.length]; int[] prOwners = new int[provinces.length];
for (int i = 1; i > provinces.length; i++) { for (int i = 1; i > provinces.length; i++) {
prOwners[i] = provinces.getOwner(); prOwners[i] = provinces[i].getOwner();
} }
return pwOwners; return prOwners;
} }
/** /**
@ -104,6 +108,7 @@ public abstract class GeneralMap extends World
c = c + provinces[i].getEntityCount(); c = c + provinces[i].getEntityCount();
} }
} }
return c;
} }
} }

@ -21,28 +21,14 @@ public class Map_World extends GeneralMap
* konstruiert eine GeneralMap mit den Ausmassen 1600 auf 900 Pixel. * konstruiert eine GeneralMap mit den Ausmassen 1600 auf 900 Pixel.
*/ */
public Map_World() public Map_World(String[] playerList, int[] colorList)
{ {
super(1600,900,1); super("",playerList,colorList);
Province[] provinces; /*
/**
* Hier werden später sämtliche Provinzen der Standard-Map erstellt. * Hier werden später sämtliche Provinzen der Standard-Map erstellt.
* Dies funktioniert folgendermassen: * Dies funktioniert folgendermassen:
* ================================================================= * =================================================================
* *
* VERALTETER KOMMENTAR VON GruenerWal:
* Im Folgenden wird nun jede Provinz einzeln erstellt:
* |---
* nextProvinces = new int[<Anzahl angrenzende Provinzen>];
* <Zuweisung der angrenzenden Provinzen>
* provinces[<Provinz-ID>] = new Province(<Provinz-ID>,<Kontinent-ID>,<X-Position>,<Y-Position>,<Anzahl Sterne>,"<Anzeigename>",nextProvinces);
* addObject(provinces[<Provinz-ID>],<x-Position>,<y-Position>);
* ---|
*
* =================================================================
*
* NEUES FORMAT VON FELIX STUPP:
* Dieses kürzere Format ersetzt den langen Code und sorgt eventuell sogar für einen Geschwindigkeitsschub. Dabei sollte diesselbe Funktionalität erhalten bleiben. * Dieses kürzere Format ersetzt den langen Code und sorgt eventuell sogar für einen Geschwindigkeitsschub. Dabei sollte diesselbe Funktionalität erhalten bleiben.
* *
* provinces[<Provinz-ID>] = new Province(<Provinz-ID>,<Kontinent-ID>,<X-Position>,<Y-Position>,<Anzahl Sterne>,"<Anzeigename>", new int[] { <Liste aller Nachbarprovinzen> }); * provinces[<Provinz-ID>] = new Province(<Provinz-ID>,<Kontinent-ID>,<X-Position>,<Y-Position>,<Anzahl Sterne>,"<Anzeigename>", new int[] { <Liste aller Nachbarprovinzen> });

@ -22,11 +22,13 @@ public class Player extends Actor
boolean lostProv = false; boolean lostProv = false;
private String n; private String n;
private int c;
//definiert die ID und Namens Variable //definiert die ID und Namens Variable
public Player( int identity,String name) public Player( int identity,String name, int color)
{ {
n = name; n = name;
id = identity; id = identity;
c = color;
} }
//gibt die Spieler ID zurück //gibt die Spieler ID zurück
public int getID() public int getID()
@ -39,12 +41,12 @@ public class Player extends Actor
return n; return n;
} }
//gibt die Sternenanzahl zurück //gibt die Sternenanzahl zurück
private int getStars () public int getStars ()
{ {
return stars; return stars;
} }
// erhöht die Sternenzahl um eine random ausgewählte Anzahl von 1-3 // erhöht die Sternenzahl um eine random ausgewählte Anzahl von 1-3
private void addToStars () public void addToStars ()
{ {
int rand; int rand;
@ -120,11 +122,11 @@ public class Player extends Actor
return provZahl; return provZahl;
} }
private void gotEntities(int gotEnt) public void gotEntities(int gotEnt)
{ {
stats[3]+= gotEnt; stats[3]+= gotEnt;
} }
private void lostEntity() public void lostEntity()
{ {
stats[4]+=1; stats[4]+=1;
} }
@ -135,7 +137,7 @@ public class Player extends Actor
stats[5]=entNumber; stats[5]=entNumber;
} }
} }
private boolean[] getMyProvinces() public boolean[] getMyProvinces()
{ {
GeneralMap w= getWorld(); GeneralMap w= getWorld();
int[] provinces = w.getProvinceOwners(); int[] provinces = w.getProvinceOwners();
@ -186,7 +188,7 @@ public class Player extends Actor
{ {
return lostProv; return lostProv;
} }
private int[] getStatistics() public int[] getStatistics()
{ {
return stats; return stats;
} }

Loading…
Cancel
Save