Merge pull request #71 from HGE-IT-Course-2016/Felix-Debug

Player-Klasse verbessert
master
Felix Stupp 8 years ago committed by GitHub
commit 4cea289e70

@ -490,7 +490,7 @@ public abstract class GeneralMap extends World implements ButtonEvent
public int[] getProvinceOwners() public int[] getProvinceOwners()
{ {
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[i].getOwner(); prOwners[i] = provinces[i].getOwner();
} }
return prOwners; return prOwners;

@ -17,10 +17,7 @@ public class Player extends Actor
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 gotProv = false;
boolean lostProv = false;
String n; String n;
int color; int color;
int textsize; int textsize;
@ -45,14 +42,16 @@ public class Player extends Actor
return n; return n;
} }
//gibt die Sternenanzahl zurück //gibt die Sternenanzahl zurück
public int getStars () public int getStars()
{ {
return stars; return stars;
} }
// erhöht die Sternenzahl um eine random ausgewählte Anzahl von 1-3
public void addToStars () // Von Felix: Methode nicht architektur-konform
{
/* // erhöht die Sternenzahl um eine random ausgewählte Anzahl von 1-3
public void addToStars()
{
int rand; int rand;
int pre; int pre;
rand = (int)(1+6*Math.random()); rand = (int)(1+6*Math.random());
@ -80,56 +79,55 @@ public class Player extends Actor
System.out.println("Deine aktuelle Sternenanzahl beträgt " + stars + "."); System.out.println("Deine aktuelle Sternenanzahl beträgt " + stars + ".");
redrawPlayer(); redrawPlayer();
} }
} */
private void checkStars() {
if(stars < 0) {
stars = 0;
}
} }
//eine Methode um addToStars zu testen
public void add () // Von Felix: Architektur-konforme Funktion
{ public int addToStars(int s) {
addToStars(); stars += s;
checkStars();
redrawPlayer(); redrawPlayer();
return stars;
} }
//eine für das Testen gedachte Methode, die die Anzahl der Sterne auf ein gewünschtes Maß setzt //eine für das Testen gedachte Methode, die die Anzahl der Sterne auf ein gewünschtes Maß setzt
public int setStars (int set) public int setStars (int set)
{ {
stars = set; stars = set;
checkStars();
redrawPlayer(); redrawPlayer();
return stars; return stars;
} }
//eine Methode, die das Abziehen von Sternen testet und, wenn das Ergebnis >= 0 ist, die Sternenanzahl um eine gewählte Anzahl verringert //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) public int removeFromStars(int sub)
{ {
int s; stars -= sub;
checkStars();
s = stars - sub;
if (s>=0)
{
stars = s;
}
else
{
System.out.println ("Du hast nur " + stars + " Sterne, du kannst also nicht " + sub + " Sterne abziehen");
}
redrawPlayer(); redrawPlayer();
return stars; return stars;
}
public boolean canStarsRemoved(int s) {
return (stars - s) >= 0;
} }
public int getProvinceCount () public int getProvinceCount()
{ {
GeneralMap w= getWorld(); int p = 0;
// int[] provinces = w.getProvinceOwners(); int[] provinces = getWorld().getProvinceOwners();
for (int x=1; x<=42; x++ ) for (int x=1; x < provinces.length; x++)
{ {
c = w.provinces[x].getOwner(); if (provinces[x] == id)
if (c ==id+1)
{ {
provZahl++; p++;
stats[2] = provZahl;
redrawPlayer(); redrawPlayer();
} }
} }
return provZahl; return p;
} }
public void gotEntities(int gotEnt) public void gotEntities(int gotEnt)
@ -140,7 +138,6 @@ public class Player extends Actor
public void lostEntity() public void lostEntity()
{ {
stats[4]+=1; stats[4]+=1;
redrawPlayer(); redrawPlayer();
} }
@ -156,58 +153,22 @@ public class Player extends Actor
public boolean[] getMyProvinces() public boolean[] getMyProvinces()
{ {
GeneralMap w= getWorld(); int[] provinces = getWorld().getProvinceOwners();
int[] provinces = w.getProvinceOwners(); boolean[] myProvinces = new boolean[provinces.length];
for (int x=0; x<=42; x++) for (int x=0; x < provinces.length; x++)
{ {
if (provinces[x]== id) if (provinces[x]== id)
{ {
pBesitzer[x]=true; myProvinces[x]=true;
} }
else else
{ {
pBesitzer[x]=false; myProvinces[x]=false;
} }
} }
redrawPlayer(); redrawPlayer();
return pBesitzer; return myProvinces;
}
private void gotlostProvince()
{
if (provVgl== provZahl)
{
gotProv = false;
lostProv =false;
}
if(provVgl< provZahl)
{
gotProv = true;
lostProv = false;
stats[0]+=1;
}
if (provVgl > provZahl)
{
gotProv = false;
lostProv = true;
stats[1]+=1;
}
redrawPlayer();
provVgl = provZahl;
}
public boolean getGotProvince ()
{
redrawPlayer();
return gotProv;
}
public boolean getLostProvince()
{
redrawPlayer();
return lostProv;
} }
public int[] getStatistics() public int[] getStatistics()

Loading…
Cancel
Save