Merge pull request #61 from HGE-IT-Course-2016/Fehlerkorrekturen-by-SR

Fehlerkorrekturen Teil 1 von so manchen
pull/63/head
Felix Stupp 8 years ago committed by GitHub
commit 95bfea01be

File diff suppressed because it is too large Load Diff

@ -21,10 +21,11 @@ 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(String[] playerList, int[] colourList) public Map_World(String[] playerList, int[] colorList)
{ {
super("",playerList,colorList); super("",playerList,colorList);
setBackground("Risiko Karte.png"); setBackground("MapWorld.png");
/* /*
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:

@ -9,265 +9,277 @@ import java.awt.Color;
*/ */
public class Player extends Actor public class Player extends Actor
{ {
@Override public GeneralMap getWorld(){ @Override public GeneralMap getWorld(){
return (GeneralMap) super.getWorld(); return (GeneralMap) super.getWorld();
} }
int stars=0; int stars=0;
int add=0; int add=0;
int id=0; int id=0;
int provZahl=0; int provZahl=0;
int provVgl=0; int provVgl=0;
int [] stats = new int [6]; int [] stats = new int [6];
boolean [] pBesitzer = new boolean [42]; boolean [] pBesitzer = new boolean [42];
boolean gotProv = false; boolean gotProv = false;
boolean lostProv = false; boolean lostProv = false;
int identity; int identity;
String name; String name;
int color; int color;
int textsize; int textsize;
private String n; private String n;
private int c; private int c;
//definiert die ID und Namens Variable //definiert die ID und Namens Variable
public Player( int identity,String name, int color) public Player(int identity,String name, int color)
{ {
n = name; n = name;
id = identity; id = identity;
c = color; c = color;
} // redrawPlayer();
//gibt die Spieler ID zurück }
public int getID() //gibt die Spieler ID zurück
{ public int getID()
return id; {
} return id;
// gibt den Spielernamen zurück }
public String getDisplayName () // gibt den Spielernamen zurück
{ public String getDisplayName ()
return n; {
} return n;
//gibt die Sternenanzahl zurück }
public int getStars () //gibt die Sternenanzahl zurück
{ public int getStars ()
return stars; {
} return stars;
// erhöht die Sternenzahl um eine random ausgewählte Anzahl von 1-3 }
public void addToStars () // erhöht die Sternenzahl um eine random ausgewählte Anzahl von 1-3
{ public void addToStars ()
{
int rand;
int pre; int rand;
rand = (int)(1+6*Math.random()); int pre;
if (rand == 1 || rand == 2|| rand == 3) rand = (int)(1+6*Math.random());
{ if (rand == 1 || rand == 2|| rand == 3)
add = 1; {
} add = 1;
if (rand == 4|| rand == 5) redrawPlayer();
{ }
add = 2; if (rand == 4|| rand == 5)
} {
if (rand == 6) add = 2;
{ redrawPlayer();
add = 3; }
} if (rand == 6)
if (gotProv== true) {
{ add = 3;
pre = stars; redrawPlayer();
stars+=add; }
System.out.println("Deine vorherige Sternenanzahl betrug " + pre + "."); if (gotProv== true)
System.out.println("Du hast " + add + " Sterne erhalten."); {
System.out.println("Deine aktuelle Sternenanzahl beträgt " + stars + "."); pre = stars;
stars+=add;
} System.out.println("Deine vorherige Sternenanzahl betrug " + pre + ".");
} System.out.println("Du hast " + add + " Sterne erhalten.");
//eine Methode um addToStars zu testen System.out.println("Deine aktuelle Sternenanzahl beträgt " + stars + ".");
public void add () redrawPlayer();
{ }
addToStars();
} }
//eine für das Testen gedachte Methode, die die Anzahl der Sterne auf ein gewünschtes Maß setzt //eine Methode um addToStars zu testen
public int setStars (int set) public void add ()
{ {
stars = set; addToStars();
return stars; redrawPlayer();
} }
//eine Methode, die das Abziehen von Sternen testet und, wenn das Ergebnis >= 0 ist, die Sternenanzahl um eine gewählte Anzahl verringert //eine für das Testen gedachte Methode, die die Anzahl der Sterne auf ein gewünschtes Maß setzt
public int removeFromStars(int sub) public int setStars (int set)
{ {
int s; stars = set;
redrawPlayer();
s = stars - sub; return stars;
if (s>=0)
{ }
stars = s; //eine Methode, die das Abziehen von Sternen testet und, wenn das Ergebnis >= 0 ist, die Sternenanzahl um eine gewählte Anzahl verringert
} public int removeFromStars(int sub)
else {
{ int s;
System.out.println ("Du hast nur " + stars + " Sterne, du kannst also nicht " + sub + " Sterne abziehen");
} s = stars - sub;
return stars; if (s>=0)
} {
stars = s;
public int getProvinceCount () }
{ else
GeneralMap w= getWorld(); {
int[] provinces = w.getProvinceOwners(); System.out.println ("Du hast nur " + stars + " Sterne, du kannst also nicht " + sub + " Sterne abziehen");
for (int x=0; x<=42; x++ ) }
{ redrawPlayer();
if ( provinces [x] ==id) return stars;
{
provZahl++; }
} public int getProvinceCount ()
} {
if(stats[2] < provZahl) GeneralMap w= getWorld();
{ int[] provinces = w.getProvinceOwners();
stats[2]=provZahl; for (int x=0; x<=42; x++ )
{
} if ( provinces [x] ==id)
return provZahl; {
} provZahl++;
public void gotEntities(int gotEnt) }
{ }
stats[3]+= gotEnt; if(stats[2] < provZahl)
} {
stats[2]=provZahl;
public void lostEntity()
{ }
stats[4]+=1; return provZahl;
} }
private void maxEntities(int entNumber) public void gotEntities(int gotEnt)
{ {
if (stats[5]< entNumber) stats[3]+= gotEnt;
{ }
stats[5]=entNumber;
} public void lostEntity()
} {
stats[4]+=1;
public boolean[] getMyProvinces() }
{
GeneralMap w= getWorld(); private void maxEntities(int entNumber)
int[] provinces = w.getProvinceOwners(); {
for (int x=0; x<=42; x++) if (stats[5]< entNumber)
{ {
if (provinces[x]== id) stats[5]=entNumber;
{ }
pBesitzer[x]=true; }
}
else public boolean[] getMyProvinces()
{ {
pBesitzer[x]=false; GeneralMap w= getWorld();
} int[] provinces = w.getProvinceOwners();
for (int x=0; x<=42; x++)
} {
return pBesitzer; if (provinces[x]== id)
} {
pBesitzer[x]=true;
private void gotlostProvince() }
{ else
if (provVgl== provZahl) {
{ pBesitzer[x]=false;
gotProv = false; }
lostProv =false;
}
} return pBesitzer;
if(provVgl< provZahl) }
{
gotProv = true; private void gotlostProvince()
lostProv = false; {
stats[0]+=1; if (provVgl== provZahl)
} {
if (provVgl > provZahl) gotProv = false;
{ lostProv =false;
gotProv = false;
lostProv = true; }
stats[1]+=1; if(provVgl< provZahl)
} {
provVgl = provZahl; gotProv = true;
} lostProv = false;
stats[0]+=1;
public boolean getGotProvince () }
{ if (provVgl > provZahl)
return gotProv; {
} gotProv = false;
lostProv = true;
public boolean getLostProvince() stats[1]+=1;
{ }
return lostProv; provVgl = provZahl;
} }
public int[] getStatistics() public boolean getGotProvince ()
{ {
return stats; return gotProv;
} }
public int setColor(int c)
{ public boolean getLostProvince()
color = c; {
return color; return lostProv;
} }
public void redrawPlayer() public int[] getStatistics()
{ {
int textSize = 20; return stats;
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)); public int setColor(int c)
statistics.drawImage(Name,0,0); {
color = c;
setImage(statistics); redrawPlayer();
oDecide(statistics,textSize); return color;
}
}
private void oDecide(GreenfootImage statistics,int textSize)
{ public void redrawPlayer()
GreenfootImage flag = new GreenfootImage("images\\BlaueArmee.jpg"); {
redraw(statistics,flag,textSize); int textSize = 20;
switch(color) 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));
case 2: statistics.drawImage(Name,0,0);
flag = new GreenfootImage("images\\BlaueArmee.jpg");
setImage(statistics);
redraw(statistics,flag,textSize); oDecide(statistics,textSize);
break; }
case 5:
flag = new GreenfootImage("images\\GelbeArmee.jpg"); private void oDecide(GreenfootImage statistics,int textSize)
{
redraw(statistics,flag,textSize); GreenfootImage flag = new GreenfootImage("images\\BlaueArmee.jpg");
break; redraw(statistics,flag,textSize);
case 6: switch(color)
flag = new GreenfootImage("images\\LilaArmee.jpg"); {
case 2:
redraw(statistics,flag,textSize); flag = new GreenfootImage("images\\BlaueArmee.jpg");
break;
case 4: redraw(statistics,flag,textSize);
flag = new GreenfootImage("images\\RoteArmee.jpg"); break;
case 5:
redraw(statistics,flag,textSize); flag = new GreenfootImage("images\\GelbeArmee.jpg");
break;
case 1: redraw(statistics,flag,textSize);
flag = new GreenfootImage("images\\SchwarzeArmee.jpg"); break;
case 6:
redraw(statistics,flag,textSize); flag = new GreenfootImage("images\\LilaArmee.jpg");
break;
case 3: redraw(statistics,flag,textSize);
flag = new GreenfootImage("images\\Gr++neArmee.jpg"); break;
case 4:
redraw(statistics,flag,textSize); flag = new GreenfootImage("images\\RoteArmee.jpg");
break;
} redraw(statistics,flag,textSize);
break;
} case 1:
flag = new GreenfootImage("images\\SchwarzeArmee.jpg");
private void redraw(GreenfootImage statistics,GreenfootImage flag, int textSize)
{ redraw(statistics,flag,textSize);
break;
flag.scale(137,83); case 3:
statistics.drawImage(flag,0,textSize); flag = new GreenfootImage("images\\GrüneArmee.jpg");
GreenfootImage playerStatistics = new GreenfootImage(stats[0] + "||" + stats[1] + "||" + stats[2],textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f));
GreenfootImage playerStatistics2 = new GreenfootImage(stats[3] + "||" + stats[4] + "||" + stats[5],textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f)); redraw(statistics,flag,textSize);
statistics.drawImage(playerStatistics, 0, 123); break;
statistics.drawImage(playerStatistics2, 0, 123 + textSize); }
setImage(statistics); }
}
private void redraw(GreenfootImage statistics,GreenfootImage flag, int textSize)
{
flag.scale(137,83);
statistics.drawImage(flag,0,textSize);
GreenfootImage playerStatistics = new GreenfootImage(stats[0] + "||" + stats[1] + "||" + stats[2],textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f));
GreenfootImage playerStatistics2 = new GreenfootImage(stats[3] + "||" + stats[4] + "||" + stats[5],textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f));
statistics.drawImage(playerStatistics, 0, 123);
statistics.drawImage(playerStatistics2, 0, 123 + textSize);
setImage(statistics);
}
} }

@ -25,7 +25,7 @@ public class Province extends Actor
private boolean clicked = false; private boolean clicked = false;
/** /**
* Überprüft, ob die Provinz angeklickt wurde. * Überprüft, ob die Provinz angeklickt wurde.
*/ */
public void act() public void act()
{ {
@ -45,7 +45,7 @@ public class Province extends Actor
stars = st; stars = st;
} }
displayName = s1; displayName = s1;
// Der Teil, der sich um die Konvertierung des int-Array in ein boolean-Array kümmert. // Der Teil, der sich um die Konvertierung des int-Array in ein boolean-Array k<EFBFBD>mmert.
int maxNum = 0; int maxNum = 0;
for(int i = 0; i < ia1.length; i++) { for(int i = 0; i < ia1.length; i++) {
if(maxNum < ia1[i]) { if(maxNum < ia1[i]) {
@ -60,7 +60,7 @@ public class Province extends Actor
} }
} }
// Zweiter Konstruktor, um auch das boolean-Array gegebenenfalls verwenden zu könnnen. // Zweiter Konstruktor, um auch das boolean-Array gegebenenfalls verwenden zu k<EFBFBD>nnnen.
public Province(int pID, int cID, int x, int y, int st, String s1, boolean[] ba1) public Province(int pID, int cID, int x, int y, int st, String s1, boolean[] ba1)
{ {
provinceID = pID; provinceID = pID;
@ -98,7 +98,7 @@ public class Province extends Actor
return continentID; return continentID;
} }
// Fragt ab, ob die angegebene Provinz in der Nähe von dieser liegt. // Fragt ab, ob die angegebene Provinz in der N<EFBFBD>he von dieser liegt.
public boolean isProvinceNear(int i) { public boolean isProvinceNear(int i) {
if(i >= nextProvinces.length) { if(i >= nextProvinces.length) {
return false; return false;
@ -124,7 +124,7 @@ public class Province extends Actor
return owner; return owner;
} }
// Setzt den Owner, benötigt String // Setzt den Owner, ben<EFBFBD>tigt String
public void setOwner(int o) public void setOwner(int o)
{ {
if(o < -1) { if(o < -1) {
@ -146,36 +146,58 @@ public class Province extends Actor
public int addToEntities(int a) { public int addToEntities(int a) {
eCount = eCount + a; eCount = eCount + a;
checkEntityCount(); checkEntityCount();
redrawProvince(); redrawProvince(1);
return eCount; return eCount;
} }
public int removeFromEntities(int a) { public int removeFromEntities(int a) {
eCount = eCount - a; eCount = eCount - a;
checkEntityCount(); checkEntityCount();
redrawProvince(); redrawProvince(1);
return eCount; return eCount;
} }
public int setEntityCount(int a) { public int setEntityCount(int a) {
eCount = a; eCount = a;
checkEntityCount(); checkEntityCount();
redrawProvince(); redrawProvince(1);
return eCount; return eCount;
} }
public void redrawProvince() public void redrawProvince()
{
redrawProvince(1);
}
public void redrawProvince(int ColorInt)
{ {
int textSize; int textSize;
textSize = 20; textSize = 20;
GreenfootImage province = new GreenfootImage(120,100); GreenfootImage province = new GreenfootImage(120,100);
GreenfootImage provinceName = new GreenfootImage(displayName,textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f));
province.drawImage(provinceName,0,0);
setImage(province);
oDecide(province,textSize,owner,eCount);
} if(ColorInt ==1)
{
GreenfootImage provinceName = new GreenfootImage(displayName,textSize,new Color(0,0,0),new Color(1.0f,1.0f,1.0f,0.5f));
province.drawImage(provinceName,0,0);
setImage(province);
oDecide(province,textSize,owner,eCount);
}
if(ColorInt ==2)
{
GreenfootImage provinceName = new GreenfootImage(displayName,textSize,new Color(0,0,0),Color.GREEN);
province.drawImage(provinceName,0,0);
setImage(province);
oDecide(province,textSize,owner,eCount);
}
if(ColorInt == 3)
{
GreenfootImage provinceName = new GreenfootImage(displayName,textSize,new Color(0,0,0),Color.RED);
province.drawImage(provinceName,0,0);
setImage(province);
oDecide(province,textSize,owner,eCount);
}
}
public void oDecide(GreenfootImage province,int textSize, int owner, int eCount) public void oDecide(GreenfootImage province,int textSize, int owner, int eCount)
{ {
String ownerString; String ownerString;
@ -205,7 +227,7 @@ public class Province extends Actor
eCalculate(province,ownerString,textSize); eCalculate(province,ownerString,textSize);
break; break;
case 5: case 5:
ownerString = "gr++n"; ownerString = "grün";
eCalculate(province,ownerString,textSize); eCalculate(province,ownerString,textSize);
break; break;
case 6: case 6:
@ -516,7 +538,6 @@ public class Province extends Actor
setImage(province); setImage(province);
} }
public boolean hasClicked() public boolean hasClicked()
{ {
boolean b = clicked; boolean b = clicked;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Loading…
Cancel
Save