GreenfootImageGameStates=newGreenfootImage("KAMPF!!! Wähle die Provinz aus, die du angreifen möchtest!",textSize,newColor(255,255,255),newColor(0,0,0));
GreenfootImageGameStates=newGreenfootImage("KAMPF!!! Wähle die Provinzen aus, die kämpfen sollen, " +getPlayerName()+".",textSize,newColor(255,255,255),newColor(0,0,0));
GreenfootImageGameStates=newGreenfootImage("VERSCHIEBEN! Wähle die Provinz aus!",textSize,newColor(255,255,255),newColor(0,0,0));
GreenfootImageGameStates=newGreenfootImage("VERSCHIEBEN! Wähle die Provinzen aus, bei denen du schubsen möchtest, " +getPlayerName()+".",textSize,newColor(255,255,255),newColor(0,0,0));
GreenfootImageGameStates=newGreenfootImage("Setzten! Wähle die Provinz aus!",textSize,newColor(255,255,255),newColor(0,0,0));
GreenfootImageGameStates=newGreenfootImage("SETZEN! Wähle die Provinz aus, der du schenken möchtest, " +getPlayerName()+".",textSize,newColor(255,255,255),newColor(0,0,0));// "Setzten" Lern Deutsch, Samuel
@ -286,16 +244,14 @@ public abstract class GeneralMap extends World implements ButtonEvent
returnc;
}
privatevoidresetClicked(){
for(inti=1;i<=(provinces.length-1);i++){
provinces[i].hasClicked();
}
}
publicvoidbuttonClicked(Buttonb){
if(status==GameStates.KAMPF){
status=GameStates.VERSCHIEBEN;
}elseif(status==GameStates.VERSCHIEBEN){
status=GameStates.KAMPF;
currentPlayer++;
if(currentPlayer>=players.length){
currentPlayer=0;
}
}elseif(modus==b){
if(modus==b){
if(status==GameStates.SETZEN&&freeArmies==0){
status=GameStates.KAMPF;
offenderProvince=null;
@ -305,12 +261,10 @@ public abstract class GeneralMap extends World implements ButtonEvent
modus.setBackColor(Color.white);
modus.setForeColor(Color.black);
modus.setText("Kampf\nbeenden");
System.out.println("KAMPF");
}elseif(status==GameStates.KAMPF){
status=GameStates.VERSCHIEBEN;
savedProvince=null;
modus.setText("Nächster\nSpieler");
System.out.println("VERSCHIEBEN");
}elseif(status==GameStates.VERSCHIEBEN){
freeArmies=-1;
if(currentPlayer>=players.length-1)
@ -323,7 +277,6 @@ public abstract class GeneralMap extends World implements ButtonEvent
}
status=GameStates.SETZEN;
modus.setText("Kampf\nbeginnen");
System.out.println("SETZEN");
}
}
}
@ -336,46 +289,55 @@ public abstract class GeneralMap extends World implements ButtonEvent
StringmaxDiceDefender="";
privatevoidactFight(){
if(offenderProvince==null){
OffenderProvince();
}else{
defenderProvince();
for(inti=1;i<=(provinces.length-1);i++){
if(provinces[i].hasClicked()==true){
if(provinces[i].getOwner()==currentPlayer){
OffenderProvince(provinces[i]);
}else{
DefenderProvince(provinces[i]);
}
}
}
}
privatevoidOffenderProvince()
privatevoidOffenderProvince(Provincep)
{
for(inti=1;i<=(provinces.length-1);i++)
{
if(provinces[i].hasClicked()==true)
{
offenderProvince=provinces[i];
provinces[i].redrawProvince(2);
// System.out.println("Die Provinz " + provinces[i].getDisplayName() + " wurde als angreifende Provinz ausgewählt! Sie gehört Spieler" + provinces[i].getOwner());
if(p.getEntityCount()>1){
if(offenderProvince!=null){
offenderProvince.redrawProvince();
}
offenderProvince=p;
p.redrawProvince(2);
// System.out.println("Die Provinz " + provinces[i].getDisplayName() + " wurde als angreifende Provinz ausgewählt! Sie gehört Spieler" + provinces[i].getOwner());
// System.out.println("Die Provinz " + provinces[i].getDisplayName() + " wurde als verteidigende Provinz ausgewählt! Sie gehört Spieler" + provinces[i].getOwner());
chooser();
break;
}
}
if(defenderProvince!=null){
defenderProvince.redrawProvince();
}
defenderProvince=p;
p.redrawProvince(3);
// System.out.println("Die Provinz " + provinces[i].getDisplayName() + " wurde als verteidigende Provinz ausgewählt! Sie gehört Spieler" + provinces[i].getOwner());
JOptionPane.showMessageDialog(null,"Es wurde gewürfelt. Der Angreifer erreichte folgende Würfelzahlen: "+maxDiceOffender+"\nDer Verteidiger erreichte diese Würfelzahlen: " +maxDiceDefender);
JOptionPane.showMessageDialog(null,"Es wurde gewürfelt. Der Angreifer erreichte folgende Würfelzahlen: "+maxDiceOffender+"\nDer Verteidiger erreichte diese Würfelzahlen: " +maxDiceDefender);
JOptionPane.showMessageDialog(null,"Somit gewinnt der Angreifer (Spieler "+offenderProvince.getOwner()+").Dem Verteidiger (Spieler "+defenderProvince.getOwner()+") wird eine Einheit abgezogen. Er hat nun noch "+defenderProvince.getEntityCount()+" Einheiten");
JOptionPane.showMessageDialog(null,"Somit gewinnt der Angreifer ("+getPlayerName(offenderProvince.getOwner())+"). Die Provinz gehört fortan dem Angreifer ("+getPlayerName(offenderProvince.getOwner())+").");
}else{
JOptionPane.showMessageDialog(null,"Somit gewinnt der Angreifer ("+getPlayerName(offenderProvince.getOwner())+"). Dem Verteidiger ("+getPlayerName(defenderProvince.getOwner())+") wird eine Einheit abgezogen. Er hat nun noch "+defenderProvince.getEntityCount()+" Einheiten.");
JOptionPane.showMessageDialog(null,"Somit gewinnt der Verteidiger (Spieler "+defenderProvince.getOwner()+").Dem Angreifer (Spieler "+defenderProvince.getOwner()+") wird eine Einheit abgezogen. Er hat nun noch "+offenderProvince.getEntityCount()+" Einheiten");
offenderProvince.removeFromEntities(1);
JOptionPane.showMessageDialog(null,"Somit gewinnt der Verteidiger ("+getPlayerName(defenderProvince.getOwner())+"). Dem Angreifer ("+getPlayerName(offenderProvince.getOwner())+") wird eine Einheit abgezogen. Er hat nun noch "+offenderProvince.getEntityCount()+" Einheiten.");
JOptionPane.showMessageDialog(null,"Da es unentschieden ist, gewinnt der Verteidiger (Spieler "+defenderProvince.getOwner()+").Dem Angreifer (Spieler "+defenderProvince.getOwner()+") wird eine Einheit abgezogen. Er hat nun noch "+offenderProvince.getEntityCount()+" Einheiten");
offenderProvince.removeFromEntities(1);
JOptionPane.showMessageDialog(null,"Da es unentschieden ist, gewinnt der Verteidiger ("+getPlayerName(defenderProvince.getOwner())+"). Dem Angreifer ("+getPlayerName(offenderProvince.getOwner())+") wird eine Einheit abgezogen. Er hat nun noch "+offenderProvince.getEntityCount()+" Einheiten.");
JOptionPane.showMessageDialog(null,"Somit gewinnt der Angreifer (Spieler "+offenderProvince.getOwner()+"). Die Provinz gehört fortan dem Angreifer ("+offenderProvince.getOwner()+")");
}
offenderProvince.redrawProvince();
defenderProvince.redrawProvince();
offenderProvince=null;
defenderProvince=null;
}
// Einheiten verschieben
@ -460,11 +422,9 @@ public abstract class GeneralMap extends World implements ButtonEvent
ProvincesavedProvince=null;
privatevoidactMove(){
ProvinceclickedProvince;
for(inti=1;i<=(provinces.length-1);i++){
if(provinces[i].hasClicked()==true){
clickedProvince=provinces[i];
useProvincesToMove(clickedProvince);
useProvincesToMove(provinces[i]);
break;
}
}
@ -504,18 +464,21 @@ public abstract class GeneralMap extends World implements ButtonEvent