Compare commits

...

6 Commits

Author SHA1 Message Date
Zocker1999NET 2bd7a6104d Fehler beim Verschieben korrigiert 8 years ago
Zocker1999NET cc1c370590 Verschieben der Greenfoot Projektdatei
Unser altes Greenfoot Projekt wird nun zu einem Teil des neuen JavaFX-Projektes.
8 years ago
Zocker1999NET a35d7e1eaa BlueJ Projektdateien hinzugefügt
- Git ignoriert diese Dateien nun nicht mehr
- VS-Code blendet sie aus
8 years ago
Zocker1999NET 7027ff806f Zuweisung zu Packages
Um eine bessere Sortierung zu erhalten und um identisch benannte Klassen
von unserem Projekt und von JavaFX unterscheiden zu können.
8 years ago
Zocker1999NET 4097b17320 BlueJ-Integration 8 years ago
Zocker1999NET 7958cc1009 Alle Sonderzeichen ersetzt
Alle Umlaute aus dem Deutschen wurden nun in die Buchstabenfolgen ae,oe
und ue geändert.
8 years ago

3
.gitignore vendored

@ -13,7 +13,6 @@ hs_err_pid*
# Greenfoot
*.ctxt
*.greenfoot
.vscode/
*~$*
doc/
doc/

@ -7,6 +7,7 @@
"**/.vscode": true,
// Greenfoot Dateien
"project.greenfoot": true,
"package.bluej": true,
"*.class": true,
"*.ctxt": true,
"doc": true,

@ -0,0 +1,20 @@
/**
* Write a description of class main here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Main
{
// instance variables - replace the example below with your own
private int x;
/**
* Constructor for objects of class main
*/
public static void main(String[] args)
{
System.out.println("Start zweiundvierzig as JavaFX ...");
}
}

@ -0,0 +1,11 @@
#BlueJ package file
objectbench.height=100
objectbench.width=353
package.editor.height=400
package.editor.width=560
package.editor.x=12
package.editor.y=12
package.numDependencies=0
package.numTargets=0
package.showExtends=true
package.showUses=true

@ -0,0 +1,32 @@
#BlueJ package file
objectbench.height=100
objectbench.width=1595
package.editor.height=859
package.editor.width=1802
package.editor.x=-8
package.editor.y=-8
package.numDependencies=0
package.numTargets=3
package.showExtends=true
package.showUses=true
project.charset=windows-1252
target1.height=62
target1.name=zweiundvierzig
target1.type=PackageTarget
target1.width=110
target1.x=10
target1.y=90
target2.height=62
target2.name=greenfoot
target2.type=PackageTarget
target2.width=80
target2.x=120
target2.y=10
target3.height=50
target3.name=Main
target3.showInterface=false
target3.type=ClassTarget
target3.typeParameters=
target3.width=80
target3.x=130
target3.y=90

@ -1,142 +1,144 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
import java.awt.Graphics2D;
/**
Diese Klasse stellt einen Button dar.
Als funktionelles Vorbild dafür hält der Button aus dem .NET-Framework für UWP-Apps dar.
@author Felix Stupp
@version 20.05.2016
*/
public class Bildbutton extends GUI_Interface {
private boolean autoSize = false;
protected GreenfootImage picture = new GreenfootImage(1,1);
private ButtonEvent handler;
/**
Erstellt einen Button mit dem gegebenen Text und der zugehörigen Textgröße.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgröße, in der der Button den Text darstellen soll.
*/
public Bildbutton(GreenfootImage pict) {
picture = pict;
redrawInternal();
}
/**
Erstellt einen Button mit dem gegebenen Objekt als Event-Handler.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Bildbutton(ButtonEvent h) {
handler = h;
redrawInternal();
}
/**
Erstellt einen Button mit dem gegebenen Text, der zugehörigen Textgröße und dem gegebenen Objekt als Event-Handler.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgröße, in der der Button den Text darstellen soll.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Bildbutton(GreenfootImage pict, ButtonEvent h) {
picture = pict;
handler = h;
redrawInternal();
}
/**
Fragt ab, ob ein Klick auf den Button gekommen ist.
Wird intern von Greenfoot benötigt.
*/
public void act() {
if(Greenfoot.mouseClicked(this) && handler != this) {
handler.buttonClicked(this);
}
}
/**
Gibt zurück, ob die Größe des Buttons von dem Text bestimmt werden soll.
@return Wert der AutoSize-Eigenschaft
*/
public boolean getAutoSize() {
return autoSize;
}
/**
Legt fest, ob die Größe des Buttons von dem Text bestimmt werden soll.
Wird der Wert auf TRUE geändert, erfolgt automatisch ein Redraw des Objekts.
@param b Der neue Wert der AutoSize-Eigenschaft.
*/
public void setAutoSize(boolean b) {
autoSize = b;
if(autoSize) {
redraw();
}
}
/**
Gibt den aktuellen Text zurück.
@return Der aktuelle Text
*/
public GreenfootImage getPicture() {
return picture;
}
/**
Setzt den darzustellenden Text auf den neuen Wert.
@param s Der neue Text
@return Gibt an, ob sich der Text geändert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setPicture(GreenfootImage s) {
if(picture != s) {
picture = s;
redraw();
return true;
}
return false;
}
/**
Gibt den aktuellen EventHandler des Buttons zurück.
@return Der Handler als ButtonEvent
*/
public ButtonEvent getHandler() {
return handler;
}
/**
Setzt den EventHandler auf ein neues Objekt.
@param h Der Handler mit implementiertem ButtonEvent-Interface
*/
public void setHandler(ButtonEvent h) {
handler = h;
}
/**
Entfernt den aktuellen EventHandler, um die Ausführung zukünftiger Events zu verhindern.
*/
public void removeHandler() {
handler = null;
}
protected void redrawInternal() {
GreenfootImage tI = picture;
if(autoSize) {
sx = tI.getWidth() + (6 * 2) + 4;
sy = tI.getHeight() + (6 * 2) + 4;
}
GreenfootImage all = new GreenfootImage(sx,sy);
Color trans = new Color(0,0,0,0);
all.setColor(trans);
all.fill();
Graphics2D g = all.getAwtImage().createGraphics();
g.setColor(backC);
g.fillRoundRect(0,0,sx,sy,24,24);
all.drawImage(tI,(sx-tI.getWidth())/2,(sy-tI.getHeight())/2);
setImage(all);
}
/**
Zeichnet das GreenfootImage des Buttons erneut und zeigt es an.
*/
public void redraw() {
redrawInternal();
}
}
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
import java.awt.Graphics2D;
/**
Diese Klasse stellt einen Button dar.
Als funktionelles Vorbild dafuer haelt der Button aus dem .NET-Framework fuer UWP-Apps dar.
@author Felix Stupp
@version 20.05.2016
*/
public class Bildbutton extends GUI_Interface {
private boolean autoSize = false;
protected GreenfootImage picture = new GreenfootImage(1,1);
private ButtonEvent handler;
/**
Erstellt einen Button mit dem gegebenen Text und der zugehoerigen Textgroeße.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgroeße, in der der Button den Text darstellen soll.
*/
public Bildbutton(GreenfootImage pict) {
picture = pict;
redrawInternal();
}
/**
Erstellt einen Button mit dem gegebenen Objekt als Event-Handler.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Bildbutton(ButtonEvent h) {
handler = h;
redrawInternal();
}
/**
Erstellt einen Button mit dem gegebenen Text, der zugehoerigen Textgroeße und dem gegebenen Objekt als Event-Handler.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgroeße, in der der Button den Text darstellen soll.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Bildbutton(GreenfootImage pict, ButtonEvent h) {
picture = pict;
handler = h;
redrawInternal();
}
/**
Fragt ab, ob ein Klick auf den Button gekommen ist.
Wird intern von Greenfoot benoetigt.
*/
public void act() {
if(Greenfoot.mouseClicked(this) && handler != this) {
handler.buttonClicked(this);
}
}
/**
Gibt zurueck, ob die Groeße des Buttons von dem Text bestimmt werden soll.
@return Wert der AutoSize-Eigenschaft
*/
public boolean getAutoSize() {
return autoSize;
}
/**
Legt fest, ob die Groeße des Buttons von dem Text bestimmt werden soll.
Wird der Wert auf TRUE geaendert, erfolgt automatisch ein Redraw des Objekts.
@param b Der neue Wert der AutoSize-Eigenschaft.
*/
public void setAutoSize(boolean b) {
autoSize = b;
if(autoSize) {
redraw();
}
}
/**
Gibt den aktuellen Text zurueck.
@return Der aktuelle Text
*/
public GreenfootImage getPicture() {
return picture;
}
/**
Setzt den darzustellenden Text auf den neuen Wert.
@param s Der neue Text
@return Gibt an, ob sich der Text geaendert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setPicture(GreenfootImage s) {
if(picture != s) {
picture = s;
redraw();
return true;
}
return false;
}
/**
Gibt den aktuellen EventHandler des Buttons zurueck.
@return Der Handler als ButtonEvent
*/
public ButtonEvent getHandler() {
return handler;
}
/**
Setzt den EventHandler auf ein neues Objekt.
@param h Der Handler mit implementiertem ButtonEvent-Interface
*/
public void setHandler(ButtonEvent h) {
handler = h;
}
/**
Entfernt den aktuellen EventHandler, um die Ausfuehrung zukuenftiger Events zu verhindern.
*/
public void removeHandler() {
handler = null;
}
protected void redrawInternal() {
GreenfootImage tI = picture;
if(autoSize) {
sx = tI.getWidth() + (6 * 2) + 4;
sy = tI.getHeight() + (6 * 2) + 4;
}
GreenfootImage all = new GreenfootImage(sx,sy);
Color trans = new Color(0,0,0,0);
all.setColor(trans);
all.fill();
Graphics2D g = all.getAwtImage().createGraphics();
g.setColor(backC);
g.fillRoundRect(0,0,sx,sy,24,24);
all.drawImage(tI,(sx-tI.getWidth())/2,(sy-tI.getHeight())/2);
setImage(all);
}
/**
Zeichnet das GreenfootImage des Buttons erneut und zeigt es an.
*/
public void redraw() {
redrawInternal();
}
}

@ -1,107 +1,111 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
import java.awt.Graphics2D;
/**
Diese Klasse stellt einen Button dar.
Als funktionelles Vorbild dafür hält der Button aus dem .NET-Framework für UWP-Apps dar.
@author Felix Stupp
@version 20.05.2016
*/
public class Button extends Bildbutton {
private int textSize = 32; // as default text size
private String text = "";
/**
Erstellt einen Button mit dem gegebenen Text und der zugehörigen Textgröße.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgröße, in der der Button den Text darstellen soll.
*/
public Button(String txt, int size) {
super(new GreenfootImage(txt,size,Color.WHITE,Color.BLACK));
text = txt;
textSize = size;
redraw();
}
/**
Erstellt einen Button mit dem gegebenen Objekt als Event-Handler.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Button(ButtonEvent h) {
super(h);
redraw();
}
/**
Erstellt einen Button mit dem gegebenen Text, der zugehörigen Textgröße und dem gegebenen Objekt als Event-Handler.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgröße, in der der Button den Text darstellen soll.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Button(String txt, int size, ButtonEvent h) {
super(new GreenfootImage(txt,size,Color.WHITE,Color.BLACK),h);
text = txt;
textSize = size;
redraw();
}
/**
Gibt die aktelle Textgröße zurück.
@return Aktuelle Textgröße
*/
public int getTextSize() {
return textSize;
}
/**
Legt eine neue Textgröße fest.
@param s Neue Textgröße
@return Gibt an, ob sich die Textgröße geändert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setTextSize(int s) {
if(textSize != s && s > 0) {
textSize = s;
redraw();
return true;
}
return false;
}
/**
Gibt den aktuellen Text zurück.
@return Der aktuelle Text
*/
public String getText() {
return text;
}
/**
Setzt den darzustellenden Text auf den neuen Wert.
@param s Der neue Text
@return Gibt an, ob sich der Text geändert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setText(String s) {
if(text != s) {
text = s;
redraw();
return true;
}
return false;
}
public GreenfootImage getPicture() {
return null;
}
public boolean setPicture(GreenfootImage i) {
return false;
}
/**
Zeichnet das GreenfootImage des Buttons erneut und zeigt es an.
*/
public void redraw() {
//picture = new GreenfootImage(text,textSize,Color.BLACK,Color.WHITE);
picture = new GreenfootImage(text,textSize,foreC,backC);
super.redraw();
}
}
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
import java.awt.Graphics2D;
/**
Diese Klasse stellt einen Button dar.
Als funktionelles Vorbild dafuer haelt der Button aus dem .NET-Framework fuer UWP-Apps dar.
@author Felix Stupp
@version 20.05.2016
*/
public class Button extends Bildbutton {
private int textSize = 32; // as default text size
private String text = "";
/**
Erstellt einen Button mit dem gegebenen Text und der zugehoerigen Textgroeße.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgroeße, in der der Button den Text darstellen soll.
*/
public Button(String txt, int size) {
super(new GreenfootImage(txt,size,Color.WHITE,Color.BLACK));
text = txt;
textSize = size;
redraw();
}
/**
Erstellt einen Button mit dem gegebenen Objekt als Event-Handler.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Button(ButtonEvent h) {
super(h);
redraw();
}
/**
Erstellt einen Button mit dem gegebenen Text, der zugehoerigen Textgroeße und dem gegebenen Objekt als Event-Handler.
@param txt Der Text, den der Button darstellen soll.
@param size Die Textgroeße, in der der Button den Text darstellen soll.
@param h Der Handler mit dem Interface ButtonEvent implementiert.
*/
public Button(String txt, int size, ButtonEvent h) {
super(new GreenfootImage(txt,size,Color.WHITE,Color.BLACK),h);
text = txt;
textSize = size;
redraw();
}
/**
Gibt die aktelle Textgroeße zurueck.
@return Aktuelle Textgroeße
*/
public int getTextSize() {
return textSize;
}
/**
Legt eine neue Textgroeße fest.
@param s Neue Textgroeße
@return Gibt an, ob sich die Textgroeße geaendert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setTextSize(int s) {
if(textSize != s && s > 0) {
textSize = s;
redraw();
return true;
}
return false;
}
/**
Gibt den aktuellen Text zurueck.
@return Der aktuelle Text
*/
public String getText() {
return text;
}
/**
Setzt den darzustellenden Text auf den neuen Wert.
@param s Der neue Text
@return Gibt an, ob sich der Text geaendert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setText(String s) {
if(text != s) {
text = s;
redraw();
return true;
}
return false;
}
public GreenfootImage getPicture() {
return null;
}
public boolean setPicture(GreenfootImage i) {
return false;
}
/**
Zeichnet das GreenfootImage des Buttons erneut und zeigt es an.
*/
public void redraw() {
//picture = new GreenfootImage(text,textSize,Color.BLACK,Color.WHITE);
picture = new GreenfootImage(text,textSize,foreC,backC);
super.redraw();
}
}

@ -1,7 +1,11 @@
package zweiundvierzig;
import greenfoot.*;
/**
* Dieses Interface stellt einen Zugriff auf Methoden für die Eventverarbeitung bei Buttons.
* Dieses Interface stellt einen Zugriff auf Methoden fuer die Eventverarbeitung bei Buttons.
* Jede Klasse, die als Event-Handler dienen will, muss dieses Interface implementieren.
*
* @author Felix Stupp

@ -1,223 +1,227 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
import javax.swing.JOptionPane;
/**
* Write a description of class Colors here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Colours extends World implements ButtonEvent
{
Bildbutton schwarz = new Bildbutton (new GreenfootImage("SchwarzeArmeeSkal.png"), this);
Bildbutton blau = new Bildbutton (new GreenfootImage("BlaueArmeeSkal.png"), this);
Bildbutton rot = new Bildbutton (new GreenfootImage("RoteArmeeSkal.png"), this);
Bildbutton gelb = new Bildbutton (new GreenfootImage("GelbeArmeeSkal.png"), this);
Bildbutton lila = new Bildbutton (new GreenfootImage("LilaArmeeSkal.png"), this);
Bildbutton grün = new Bildbutton (new GreenfootImage("GrueneArmeeSkal.png"), this);
Button weiter = new Button ("Weiter", 16, this);
int[] color = new int [5];
String[] pn = new String [5];
int x = 0;
boolean possw = true; // schwarz
boolean posbl = true; // blau
boolean posgr = true; // gruen
boolean posrt = true; // rot
boolean posgb = true; // gelb
boolean posli = true; // lila
int sw = 1;
int bl = 2;
int gr = 3;
int rt = 4;
int gb = 5;
int li = 6;
Label header = new Label("Klicke auf eine Farbe, um einen Spieler hinzuzufügen:",16);
Button remove = new Button("Rückgängig",16,this);
Label pl1 = new Label("",22);
Label pl2 = new Label("",22);
Label pl3 = new Label("",22);
Label pl4 = new Label("",22);
Label pl5 = new Label("",22);
/**
* Constructor for objects of class Colors.
*
*/
public Colours(int x, int y, int z)
{
super(x, y, z);
setBackground(Start_Load.backgroundImage);
Bildbutton[] bList = new Bildbutton[] {schwarz,gelb,blau,grün,rot,lila,weiter,remove};
Label[] lList = new Label[] {header,pl1,pl2,pl3,pl4,pl5};
addObject(header,200,15);
addObject(schwarz, 80, 50);
addObject ( blau, 240, 50);
addObject ( grün, 400, 50);
addObject ( rot, 560, 50);
addObject(gelb, 720, 50);
addObject(lila, 880, 50);
addObject(remove,300,160);
addObject (weiter, 510,160);
addObject(pl1,355,360);
addObject(pl2,355,380);
addObject(pl3,355,400);
addObject(pl4,355,420);
addObject(pl5,355,440);
//schwarz.setForeColor(Color.black);
//gelb.setForeColor(Color.yellow);
//blau.setForeColor(Color.blue);
//grün.setForeColor(Color.green);
//rot.setForeColor(Color.red);
//lila.setForeColor(new Color(161,70,255));
pl1.setForeColor(Color.black);
pl2.setForeColor(Color.black);
pl3.setForeColor(Color.black);
pl4.setForeColor(Color.black);
pl5.setForeColor(Color.black);
for(int i = 0; i < bList.length; i++) {
bList[i].setSize(164,100);
}
for(int i = 0; i < lList.length; i++) {
lList[i].setBackColor(new Color(0,0,0,0));
}
redraw();
}
// Überprüft, ob ein Farbbutton geklickt wurde
//Überprüft, ob die Farbe noch nicht ausgewählt wurde
// Wenn alle Bedingungen erfüllt wurden:
// Setzt die aktuelle Stelle des Farbarrays gleich der Zahl der aktuellen Farbe
// erhöht die Variable zum Durchzählen um eins
// verhindert durch falschsetzten einer Variable die Wiederauswahl einer Farbe
// wenn Weiter geklickt wurde und x größer 1 ist wird eine neue Welt Map erzeugt,
//der per Konstruktor die Daten der Colorklasse übertragen werden, dannach wird die Map die aktive Welt
public void buttonClicked (Bildbutton b)
{
if (x < 5) {
if (b == schwarz && possw == true) {
color[x] = sw;
pn[x]=getName(x,"Schwarz");
if(pn[x].length() > 0) {
x+=1;
possw = false;
}
} else if (b == blau && posbl == true) {
color[x] = bl;
pn[x]=getName(x,"Blau");
if(pn[x].length() > 0) {
x+=1;
posbl = false;
}
} else if (b == grün && posgr == true ) {
color[x] = gr;
pn[x]=getName(x,"Grün");
if(pn[x].length() > 0) {
x+=1;
posgr = false;
}
} else if (b == rot && posrt == true) {
color[x] = rt;
pn[x]=getName(x,"Rot");
if(pn[x].length() > 0) {
x+=1;
posrt = false;
}
} else if (b == gelb && posgb == true) {
color [x] = gb;
pn[x]=getName(x,"Gelb");
if(pn[x].length() > 0) {
x+=1;
posgb = false;
}
} else if (b == lila && posli == true) {
color [x] = li;
pn[x]=getName(x,"Lila");
if(pn[x].length() > 0) {
x+=1;
posli = false;
}
}
}
if(b == remove && x > 0) {
x -= 1;
switch(color[x]) {
case 1: possw = true; break;
case 2: posbl = true; break;
case 3: posgr = true; break;
case 4: posrt = true; break;
case 5: posgb = true; break;
case 6: posli = true; break;
}
}
if ( b == weiter && x > 2 )
{
String[] newpn = new String[x];
int[] newcolor = new int[x];
for (int i = 0; i< x; i++)
{
newpn[i] = pn[i];
newcolor[i] = color[i];
}
World m = new Map(newcolor,x,newpn);
Greenfoot.setWorld(m);
}
redraw();
}
private Color getC(boolean pos) {
if(x >= 5) {
return Color.gray;
}
return (pos) ? Color.lightGray : Color.gray;
}
/**
Passt alle adaptiven Parameter automatisch an.
*/
private void redraw() {
schwarz.setBackColor(getC(possw));
blau.setBackColor(getC(posbl));
grün.setBackColor(getC(posgr));
rot.setBackColor(getC(posrt));
lila.setBackColor(getC(posli));
gelb.setBackColor(getC(posgb));
remove.setBackColor((x > 0) ? Color.black : Color.gray);
weiter.setBackColor((x > 2) ? Color.black : Color.gray);
pl1.setText("");
pl2.setText("");
pl3.setText("");
pl4.setText("");
pl5.setText("");
switch(x) {
case 5:
pl5.setText(pn[4]);
case 4:
pl4.setText(pn[3]);
case 3:
pl3.setText(pn[2]);
case 2:
pl2.setText(pn[1]);
case 1:
pl1.setText(pn[0]);
}
}
private String getName(int id, String col) {
String name = JOptionPane.showInputDialog(null, "Wie soll Spieler Nr. "+(id+1)+" mit der Farbe "+col+" heißen?");
if(name == null) {
name = "";
}
return name;
}
}
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
import javax.swing.JOptionPane;
/**
* Write a description of class Colors here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Colours extends World implements ButtonEvent
{
Bildbutton schwarz = new Bildbutton (new GreenfootImage("SchwarzeArmeeSkal.png"), this);
Bildbutton blau = new Bildbutton (new GreenfootImage("BlaueArmeeSkal.png"), this);
Bildbutton rot = new Bildbutton (new GreenfootImage("RoteArmeeSkal.png"), this);
Bildbutton gelb = new Bildbutton (new GreenfootImage("GelbeArmeeSkal.png"), this);
Bildbutton lila = new Bildbutton (new GreenfootImage("LilaArmeeSkal.png"), this);
Bildbutton gruen = new Bildbutton (new GreenfootImage("GrueneArmeeSkal.png"), this);
Button weiter = new Button ("Weiter", 16, this);
int[] color = new int [5];
String[] pn = new String [5];
int x = 0;
boolean possw = true; // schwarz
boolean posbl = true; // blau
boolean posgr = true; // gruen
boolean posrt = true; // rot
boolean posgb = true; // gelb
boolean posli = true; // lila
int sw = 1;
int bl = 2;
int gr = 3;
int rt = 4;
int gb = 5;
int li = 6;
Label header = new Label("Klicke auf eine Farbe, um einen Spieler hinzuzufuegen:",16);
Button remove = new Button("Rueckgaengig",16,this);
Label pl1 = new Label("",22);
Label pl2 = new Label("",22);
Label pl3 = new Label("",22);
Label pl4 = new Label("",22);
Label pl5 = new Label("",22);
/**
* Constructor for objects of class Colors.
*
*/
public Colours(int x, int y, int z)
{
super(x, y, z);
setBackground(Start_Load.backgroundImage);
Bildbutton[] bList = new Bildbutton[] {schwarz,gelb,blau,gruen,rot,lila,weiter,remove};
Label[] lList = new Label[] {header,pl1,pl2,pl3,pl4,pl5};
addObject(header,200,15);
addObject(schwarz, 80, 50);
addObject ( blau, 240, 50);
addObject ( gruen, 400, 50);
addObject ( rot, 560, 50);
addObject(gelb, 720, 50);
addObject(lila, 880, 50);
addObject(remove,300,160);
addObject (weiter, 510,160);
addObject(pl1,355,360);
addObject(pl2,355,380);
addObject(pl3,355,400);
addObject(pl4,355,420);
addObject(pl5,355,440);
//schwarz.setForeColor(Color.black);
//gelb.setForeColor(Color.yellow);
//blau.setForeColor(Color.blue);
//gruen.setForeColor(Color.green);
//rot.setForeColor(Color.red);
//lila.setForeColor(new Color(161,70,255));
pl1.setForeColor(Color.black);
pl2.setForeColor(Color.black);
pl3.setForeColor(Color.black);
pl4.setForeColor(Color.black);
pl5.setForeColor(Color.black);
for(int i = 0; i < bList.length; i++) {
bList[i].setSize(164,100);
}
for(int i = 0; i < lList.length; i++) {
lList[i].setBackColor(new Color(0,0,0,0));
}
redraw();
}
// ueberprueft, ob ein Farbbutton geklickt wurde
//ueberprueft, ob die Farbe noch nicht ausgewaehlt wurde
// Wenn alle Bedingungen erfuellt wurden:
// Setzt die aktuelle Stelle des Farbarrays gleich der Zahl der aktuellen Farbe
// erhoeht die Variable zum Durchzaehlen um eins
// verhindert durch falschsetzten einer Variable die Wiederauswahl einer Farbe
// wenn Weiter geklickt wurde und x groeßer 1 ist wird eine neue Welt Map erzeugt,
//der per Konstruktor die Daten der Colorklasse uebertragen werden, dannach wird die Map die aktive Welt
public void buttonClicked (Bildbutton b)
{
if (x < 5) {
if (b == schwarz && possw == true) {
color[x] = sw;
pn[x]=getName(x,"Schwarz");
if(pn[x].length() > 0) {
x+=1;
possw = false;
}
} else if (b == blau && posbl == true) {
color[x] = bl;
pn[x]=getName(x,"Blau");
if(pn[x].length() > 0) {
x+=1;
posbl = false;
}
} else if (b == gruen && posgr == true ) {
color[x] = gr;
pn[x]=getName(x,"Gruen");
if(pn[x].length() > 0) {
x+=1;
posgr = false;
}
} else if (b == rot && posrt == true) {
color[x] = rt;
pn[x]=getName(x,"Rot");
if(pn[x].length() > 0) {
x+=1;
posrt = false;
}
} else if (b == gelb && posgb == true) {
color [x] = gb;
pn[x]=getName(x,"Gelb");
if(pn[x].length() > 0) {
x+=1;
posgb = false;
}
} else if (b == lila && posli == true) {
color [x] = li;
pn[x]=getName(x,"Lila");
if(pn[x].length() > 0) {
x+=1;
posli = false;
}
}
}
if(b == remove && x > 0) {
x -= 1;
switch(color[x]) {
case 1: possw = true; break;
case 2: posbl = true; break;
case 3: posgr = true; break;
case 4: posrt = true; break;
case 5: posgb = true; break;
case 6: posli = true; break;
}
}
if ( b == weiter && x > 2 )
{
String[] newpn = new String[x];
int[] newcolor = new int[x];
for (int i = 0; i< x; i++)
{
newpn[i] = pn[i];
newcolor[i] = color[i];
}
World m = new Map(newcolor,x,newpn);
Greenfoot.setWorld(m);
}
redraw();
}
private Color getC(boolean pos) {
if(x >= 5) {
return Color.gray;
}
return (pos) ? Color.lightGray : Color.gray;
}
/**
Passt alle adaptiven Parameter automatisch an.
*/
private void redraw() {
schwarz.setBackColor(getC(possw));
blau.setBackColor(getC(posbl));
gruen.setBackColor(getC(posgr));
rot.setBackColor(getC(posrt));
lila.setBackColor(getC(posli));
gelb.setBackColor(getC(posgb));
remove.setBackColor((x > 0) ? Color.black : Color.gray);
weiter.setBackColor((x > 2) ? Color.black : Color.gray);
pl1.setText("");
pl2.setText("");
pl3.setText("");
pl4.setText("");
pl5.setText("");
switch(x) {
case 5:
pl5.setText(pn[4]);
case 4:
pl4.setText(pn[3]);
case 3:
pl3.setText(pn[2]);
case 2:
pl2.setText(pn[1]);
case 1:
pl1.setText(pn[0]);
}
}
private String getName(int id, String col) {
String name = JOptionPane.showInputDialog(null, "Wie soll Spieler Nr. "+(id+1)+" mit der Farbe "+col+" heißen?");
if(name == null) {
name = "";
}
return name;
}
}

@ -1,3 +1,7 @@
package zweiundvierzig;
public class Debug3 extends Map_World {
public Debug3() {
super(

@ -1,3 +1,7 @@
package zweiundvierzig;
public class Debug4 extends Map_World {
public Debug4() {
super(

@ -1,3 +1,7 @@
package zweiundvierzig;
public class Debug5 extends Map_World {
public Debug5() {
super(

@ -1,3 +1,7 @@
package zweiundvierzig;
import greenfoot.*;
import java.util.Arrays; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;

@ -1,7 +1,11 @@
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
Stellt einen Würfel (von 1-6) dar, welcher in der Welt sichtbar dargestellt werden soll.
Stellt einen Wuerfel (von 1-6) dar, welcher in der Welt sichtbar dargestellt werden soll.
@author Felix Stupp
@version 13.06.2016
@ -11,14 +15,14 @@ public class Dice extends GUI_Interface {
private int number = 0;
/**
Erstellt einen Würfel mit dem Startwert 0 (für noch nicht verwendet).
Erstellt einen Wuerfel mit dem Startwert 0 (fuer noch nicht verwendet).
*/
public Dice() {
redraw();
}
/**
Erstellt einen Würfel mit einem bestimmten Startwert, welcher sofort sichtbar ist.
Erstellt einen Wuerfel mit einem bestimmten Startwert, welcher sofort sichtbar ist.
*/
public Dice(int startNumber) {
number = startNumber;
@ -26,7 +30,7 @@ public class Dice extends GUI_Interface {
}
/**
Gibt die aktuelle Zahl, die der Würfel anzeigt, aus. Gibt die Methode 0 zurück, heißt dies, dass der Würfel noch nicht gewürfelt wurde.
Gibt die aktuelle Zahl, die der Wuerfel anzeigt, aus. Gibt die Methode 0 zurueck, heißt dies, dass der Wuerfel noch nicht gewuerfelt wurde.
@return Die aktuelle Augenzahl oder 0
*/
public int getNumber() {
@ -34,14 +38,14 @@ public class Dice extends GUI_Interface {
}
/**
Legt die Größe des Würfels als Quadrat fest.
Legt die Groeße des Wuerfels als Quadrat fest.
*/
public void setSizeAsSquare(int l) {
setSize(l,l);
}
/**
Würfelt den Würfel, erneuert die Darstellung und gibt die neue Augenzahl zurück.
Wuerfelt den Wuerfel, erneuert die Darstellung und gibt die neue Augenzahl zurueck.
*/
public int roll() {
number = (int) (Math.floor(Math.random()*6)+1);
@ -50,20 +54,20 @@ public class Dice extends GUI_Interface {
}
/**
Zeichnet auf dem gegebenen GreenfootImage ein Oval an der gegebenen Stelle multipliziert mit der einheitlichen Größe.
Zeichnet auf dem gegebenen GreenfootImage ein Oval an der gegebenen Stelle multipliziert mit der einheitlichen Groeße.
*/
private void fO(GreenfootImage i, int eX, int eY, int x, int y) {
i.fillOval(eX*x,eY*y,eX*2,eY*2);
}
/**
Erneuert die Darstellung des Würfels.
Erneuert die Darstellung des Wuerfels.
*/
public void redraw() {
// einheitliche Größe X und Y (ein Vierzehntel der gesamten Breite und Höhe)
// einheitliche Groeße X und Y (ein Vierzehntel der gesamten Breite und Hoehe)
int eX = (int) Math.round(sx/8);
int eY = (int) Math.round(sy/8);
// Vereinfachung für die Augenzahl
// Vereinfachung fuer die Augenzahl
int a = number;
GreenfootImage i = new GreenfootImage(sx,sy);
i.setColor(new java.awt.Color(0,0,0,0));

@ -1,6 +1,10 @@
package zweiundvierzig;
/*
Hinweis zum Verbleib der Klasse:
Diese Klasse soll, da sie zurzeit weder vollständig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Diese Klasse soll, da sie zurzeit weder vollstaendig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Sollte die Klasse jedoch zuvor noch Verwendung finden, wird sie nach Absprache mit den jeweiligen Autoren/Benutzern in die Architektur aufgenommen.
*/
@ -27,8 +31,8 @@ public class Dice_Defender
}
/**
* Die Methode für das Würfeln mit bis zu drei Würfeln des Angreifers, es wird ein Array mit den drei Zahlen zurückgegeben, höchster Wert befindet sich immer an dritter Stelle.
* @param troupNumberDefender Anzahl der Truppen auf dem ausgewählten Feld
* Die Methode fuer das Wuerfeln mit bis zu drei Wuerfeln des Angreifers, es wird ein Array mit den drei Zahlen zurueckgegeben, hoechster Wert befindet sich immer an dritter Stelle.
* @param troupNumberDefender Anzahl der Truppen auf dem ausgewaehlten Feld
*/
public int[] dice_defender(int troupNumberDefender)
{

@ -1,6 +1,10 @@
package zweiundvierzig;
/*
Hinweis zum Verbleib der Klasse:
Diese Klasse soll, da sie zurzeit weder vollständig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Diese Klasse soll, da sie zurzeit weder vollstaendig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Sollte die Klasse jedoch zuvor noch Verwendung finden, wird sie nach Absprache mit den jeweiligen Autoren/Benutzern in die Architektur aufgenommen.
*/
@ -27,8 +31,8 @@ public class Dice_Offender
}
/**
* Die Methode für das Würfeln mit bis zu drei Würfeln des Angreifers, es wird ein Array mit den drei Zahlen zurückgegeben, höchster Wert befindet sich immer an dritter Stelle.
* @param troupNumberOffender Anzahl der Truppen auf dem ausgewählten Feld
* Die Methode fuer das Wuerfeln mit bis zu drei Wuerfeln des Angreifers, es wird ein Array mit den drei Zahlen zurueckgegeben, hoechster Wert befindet sich immer an dritter Stelle.
* @param troupNumberOffender Anzahl der Truppen auf dem ausgewaehlten Feld
*/
public int[] dice_offender(int troupNumberOffender)
{

@ -1,3 +1,7 @@
package zweiundvierzig;
import greenfoot.*;
/**

@ -1,106 +1,110 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
/**
Oberklasse für sämtliche GUI Objekte, wie Labels und Buttons
@author Felix Stupp
@version 04.06.2016
*/
public abstract class GUI_Interface extends Actor
{
/**
Die Breite des Objektes
*/
protected int sx = 20;
/**
Die Höhe des Objektes
*/
protected int sy = 20;
/**
Die Hintergrundfarbe des Objektes
*/
protected Color backC = Color.BLACK;
/**
Die Vordergrundfarbe (meist die Textfarbe) des Objektes
*/
protected Color foreC = Color.WHITE;
/**
Gibt die Breite des Objektes zurück.
@return Die aktuelle Breite
*/
public int getWidth() {
return sx;
}
/**
Gibt die Höhe des Objektes zurück.
@return Die aktuelle Höhe
*/
public int getHeight() {
return sy;
}
/**
Legt die Größe des Objektes neu fest und zeichnet es danach damit neu.
Je nach Objekttyp kann diese Größe wieder vom Objekt selbst angepasst werden, falls nötig.
@param w Die neue Breite
@param h Die neue Höhe
*/
public void setSize(int w, int h) {
if(w < 1 || h < 1) {
return;
}
sx = w;
sy = h;
redraw();
}
/**
Gibt die aktuelle Hintergrundfarbe des Objektes zurück.
@return Die aktuelle Hintergrundfarbe als System.awt.Color
*/
public Color getBackColor() {
return backC;
}
/**
Legt die Hintergrundfarbe des Objektes fest.
@param c Die neue Hintergrundfarbe als System.awt.Color
@return Gibt an, ob diese Farbe unterschiedlich zur bisherig genutzten Farbe wahr. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setBackColor(Color c) {
if(!c.equals(backC)) {
backC = c;
redraw();
return true;
}
return false;
}
/**
Gibt die aktuelle Vordergrundfarbe (meist die Textfarbe) des Objektes zurück.
@return Die aktuelle Vordergrundfarbe als System.awt.Color
*/
public Color getForeColor() {
return foreC;
}
/**
Legt die Vordergrundfarbe (meist die Textfarbe) des Objektes fest.
@param c Die neue Vordergrundfarbe als System.awt.Color
@return Gibt an, ob diese Farbe unterschiedlich zur bisherig genutzten Farbe wahr. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setForeColor(Color c) {
if(!c.equals(foreC)) {
foreC = c;
redraw();
return true;
}
return false;
}
public void act() {}
/**
Diese Funktion soll die erneute Zeichnung des Objekts erzwingen und wird daher auch von (fast) allen set-Methoden aufgerufen, sollte der neue Wert sich von dem alten unterscheiden.
*/
public abstract void redraw();
}
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
/**
Oberklasse fuer saemtliche GUI Objekte, wie Labels und Buttons
@author Felix Stupp
@version 04.06.2016
*/
public abstract class GUI_Interface extends Actor
{
/**
Die Breite des Objektes
*/
protected int sx = 20;
/**
Die Hoehe des Objektes
*/
protected int sy = 20;
/**
Die Hintergrundfarbe des Objektes
*/
protected Color backC = Color.BLACK;
/**
Die Vordergrundfarbe (meist die Textfarbe) des Objektes
*/
protected Color foreC = Color.WHITE;
/**
Gibt die Breite des Objektes zurueck.
@return Die aktuelle Breite
*/
public int getWidth() {
return sx;
}
/**
Gibt die Hoehe des Objektes zurueck.
@return Die aktuelle Hoehe
*/
public int getHeight() {
return sy;
}
/**
Legt die Groeße des Objektes neu fest und zeichnet es danach damit neu.
Je nach Objekttyp kann diese Groeße wieder vom Objekt selbst angepasst werden, falls noetig.
@param w Die neue Breite
@param h Die neue Hoehe
*/
public void setSize(int w, int h) {
if(w < 1 || h < 1) {
return;
}
sx = w;
sy = h;
redraw();
}
/**
Gibt die aktuelle Hintergrundfarbe des Objektes zurueck.
@return Die aktuelle Hintergrundfarbe als System.awt.Color
*/
public Color getBackColor() {
return backC;
}
/**
Legt die Hintergrundfarbe des Objektes fest.
@param c Die neue Hintergrundfarbe als System.awt.Color
@return Gibt an, ob diese Farbe unterschiedlich zur bisherig genutzten Farbe wahr. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setBackColor(Color c) {
if(!c.equals(backC)) {
backC = c;
redraw();
return true;
}
return false;
}
/**
Gibt die aktuelle Vordergrundfarbe (meist die Textfarbe) des Objektes zurueck.
@return Die aktuelle Vordergrundfarbe als System.awt.Color
*/
public Color getForeColor() {
return foreC;
}
/**
Legt die Vordergrundfarbe (meist die Textfarbe) des Objektes fest.
@param c Die neue Vordergrundfarbe als System.awt.Color
@return Gibt an, ob diese Farbe unterschiedlich zur bisherig genutzten Farbe wahr. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setForeColor(Color c) {
if(!c.equals(foreC)) {
foreC = c;
redraw();
return true;
}
return false;
}
public void act() {}
/**
Diese Funktion soll die erneute Zeichnung des Objekts erzwingen und wird daher auch von (fast) allen set-Methoden aufgerufen, sollte der neue Wert sich von dem alten unterscheiden.
*/
public abstract void redraw();
}

File diff suppressed because it is too large Load Diff

@ -1,9 +1,13 @@
package zweiundvierzig;
import greenfoot.*;
import java.awt.Color;
/**
Erzeugt ein Eingabefeld, über welches man Strings vom Benutzer abfragen kann.
Die beim Erzeugen übergebene Welt wird nach dem "Schließen" des Eingabefelds wieder geladen.
Erzeugt ein Eingabefeld, ueber welches man Strings vom Benutzer abfragen kann.
Die beim Erzeugen uebergebene Welt wird nach dem "Schließen" des Eingabefelds wieder geladen.
@author Felix Stupp
@version 07/10/2016
@ -21,23 +25,23 @@ public class InputDialogWorld extends World implements ButtonEvent {
Boolean closed = false;
/**
Erzeugt eine Instanz dieser Klasse, übergibt dieser die Parameter und wartet auf das Schließen des Dialogs.
@param msg Die für den Beutzer anzuzeigende Aufforderung.
@param preIn Ein Schattentext, welcher für den Benutzer in dem Textfeld sichtbar sein soll.
Erzeugt eine Instanz dieser Klasse, uebergibt dieser die Parameter und wartet auf das Schließen des Dialogs.
@param msg Die fuer den Beutzer anzuzeigende Aufforderung.
@param preIn Ein Schattentext, welcher fuer den Benutzer in dem Textfeld sichtbar sein soll.
@param w Die Welt, die nach dem Beenden wieder eingesetzt werden soll.
*/
public static String showDialog(String msg, String preIn, World w) {
InputDialogWorld dialog = new InputDialogWorld(msg,preIn);
Greenfoot.setWorld(dialog);
// Unvollständig!
// Unvollstaendig!
Greenfoot.setWorld(w);
return dialog.getInput();
}
/**
Erzeugt ein Eingabefeld, welches nach dem Laden dargestellt wird.
@param msg Die für den Beutzer anzuzeigende Aufforderung.
@param preIn Ein Schattentext, welcher für den Benutzer in dem Textfeld sichtbar sein soll.
@param msg Die fuer den Beutzer anzuzeigende Aufforderung.
@param preIn Ein Schattentext, welcher fuer den Benutzer in dem Textfeld sichtbar sein soll.
*/
private InputDialogWorld(String msg, String preIn) {
super(500,200,1);

@ -1,3 +1,7 @@
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
@ -14,9 +18,9 @@ public class Label extends GUI_Interface {
private String text = "";
/**
Erstellt ein neues Label mit dem gegebenen Text und der zugehörigen Textgröße.
Erstellt ein neues Label mit dem gegebenen Text und der zugehoerigen Textgroeße.
@param txt Der darzustellende Text
@param size Die dazugehörige Textgröße
@param size Die dazugehoerige Textgroeße
*/
public Label(String txt, int size) {
text = txt;
@ -25,15 +29,15 @@ public class Label extends GUI_Interface {
}
/**
Gibt zurück, ob die Größe des Buttons von dem Text bestimmt werden soll.
Gibt zurueck, ob die Groeße des Buttons von dem Text bestimmt werden soll.
@return Wert der AutoSize-Eigenschaft
*/
public boolean getAutoSize() {
return autoSize;
}
/**
Legt fest, ob die Größe des Buttons von dem Text bestimmt werden soll.
Wird der Wert auf TRUE geändert, erfolgt automatisch ein Redraw des Objekts.
Legt fest, ob die Groeße des Buttons von dem Text bestimmt werden soll.
Wird der Wert auf TRUE geaendert, erfolgt automatisch ein Redraw des Objekts.
@param b Der neue Wert der AutoSize-Eigenschaft.
*/
public void setAutoSize(boolean b) {
@ -44,16 +48,16 @@ public class Label extends GUI_Interface {
}
/**
Gibt die aktelle Textgröße zurück.
@return Aktuelle Textgröße
Gibt die aktelle Textgroeße zurueck.
@return Aktuelle Textgroeße
*/
public int getTextSize() {
return textSize;
}
/**
Legt eine neue Textgröße fest.
@param s Neue Textgröße
@return Gibt an, ob sich die Textgröße geändert hat. Bei TRUE erfolgte bereits ein Redraw.
Legt eine neue Textgroeße fest.
@param s Neue Textgroeße
@return Gibt an, ob sich die Textgroeße geaendert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setTextSize(int s) {
if(textSize != s && s > 0) {
@ -65,7 +69,7 @@ public class Label extends GUI_Interface {
}
/**
Gibt den aktuellen Text zurück.
Gibt den aktuellen Text zurueck.
@return Der aktuelle Text
*/
public String getText() {
@ -74,7 +78,7 @@ public class Label extends GUI_Interface {
/**
Setzt den darzustellenden Text auf den neuen Wert.
@param s Der neue Text
@return Gibt an, ob sich der Text geändert hat. Bei TRUE erfolgte bereits ein Redraw.
@return Gibt an, ob sich der Text geaendert hat. Bei TRUE erfolgte bereits ein Redraw.
*/
public boolean setText(String s) {
if(text != s) {

@ -1,3 +1,5 @@
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**

@ -1,3 +1,7 @@
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
@ -23,16 +27,16 @@ public class Map_World extends GeneralMap
armyMinimum = 3;
/*
Hier werden später sämtliche Provinzen der Standard-Map erstellt.
Hier werden spaeter saemtliche Provinzen der Standard-Map erstellt.
Dies funktioniert folgendermassen:
=================================================================
Dieses kürzere Format ersetzt den langen Code und sorgt eventuell sogar für einen Geschwindigkeitsschub. Dabei sollte diesselbe Funktionalität erhalten bleiben.
Dieses kuerzere Format ersetzt den langen Code und sorgt eventuell sogar fuer einen Geschwindigkeitsschub. Dabei sollte diesselbe Funktionalitaet erhalten bleiben.
provinces[<Provinz-ID>] = new Province(<Provinz-ID>,<Kontinent-ID>,<X-Position>,<Y-Position>,<Anzahl Sterne>,"<Anzeigename>", new int[] { <Liste aller Nachbarprovinzen> });
=================================================================
Der Speicherplatz für provinces[0] bleibt leer, da es keine Provinz mit der ID 0 gibt!
Der Speicherplatz fuer provinces[0] bleibt leer, da es keine Provinz mit der ID 0 gibt!
Und ja, ich weiss, dass das scheisse viel Schreibarbeit ist.
Aber da muss man durch, wir habens auch hinbekommen :P
@ -46,7 +50,7 @@ public class Map_World extends GeneralMap
provinces = new Province[provinceCount + 1];
// Implementierung sämtlicher Provinzen
// Implementierung saemtlicher Provinzen
// ACHTUNG! Gaaaaanz viel Code!
// cID 1 - Nordamerika
@ -58,7 +62,7 @@ public class Map_World extends GeneralMap
provinces[6] = new Province( 6 , 1 , 232 , 273 , 2 , "Oststaaten" , new int[] {4 , 5 , 7 , 8});
provinces[7] = new Province( 7 , 1 , 300 , 180 , 2 , "Quebec" , new int[] {4 , 6 , 9});
provinces[8] = new Province( 8 , 1 , 181 , 347 , 1 , "Mittelamerika" , new int[] {5 , 6 , 17});
provinces[9] = new Province( 9 , 1 , 365 , 55 , 1 , "Grönland" , new int[] {2 , 4 , 7 , 10});
provinces[9] = new Province( 9 , 1 , 365 , 55 , 1 , "Groenland" , new int[] {2 , 4 , 7 , 10});
// cID 2 - Europa
provinces[10] = new Province(10 , 2 , 454 , 142 , 1 , "Island" , new int[] {9 , 11 , 12});
@ -67,7 +71,7 @@ public class Map_World extends GeneralMap
provinces[13] = new Province(13 , 2 , 636 , 180 , 2 , "Russland" , new int[] {12 , 14 , 16 , 27 , 31 , 32});
provinces[14] = new Province(14 , 2 , 528 , 232 , 2 , "Nordeuropa" , new int[] {11 , 12 , 13 , 15 , 16});
provinces[15] = new Province(15 , 2 , 449 , 335 , 2 , "Westeuropa" , new int[] {11 , 14 , 16 , 25});
provinces[16] = new Province(16 , 2 , 537 , 296 , 2 , "Südeuropa" , new int[] {13 , 14 , 15 , 25 , 26 , 27});
provinces[16] = new Province(16 , 2 , 537 , 296 , 2 , "Suedeuropa" , new int[] {13 , 14 , 15 , 25 , 26 , 27});
// cID 3 - Suedamerika
provinces[17] = new Province(17 , 3 , 245 , 396 , 1 , "Venezuela" , new int[] {8 , 18 , 19});
@ -77,17 +81,17 @@ public class Map_World extends GeneralMap
// cID 4 - Afrika
provinces[21] = new Province(21 , 4 , 680 , 630 , 1 , "Madagaskar" , new int[] {24 , 22});
provinces[22] = new Province(22 , 4 , 580 , 624 , 1 , "Südafrika" , new int[] {21 , 23 , 24});
provinces[22] = new Province(22 , 4 , 580 , 624 , 1 , "Suedafrika" , new int[] {21 , 23 , 24});
provinces[23] = new Province(23 , 4 , 572 , 537 , 2 , "Zentralafrika" , new int[] {22 , 25 , 24});
provinces[24] = new Province(24 , 4 , 632 , 500 , 2 , "Ostafrika" , new int[] {21 , 22 , 25 , 23 , 26});
provinces[25] = new Province(25 , 4 , 491 , 444 , 1 , "Nordafrika" , new int[] {15 , 16 , 26 , 23 , 24});
provinces[26] = new Province(26 , 4 , 574 , 414 , 1 , "Ägypten" , new int[] {27 , 25 , 24 , 16});
provinces[26] = new Province(26 , 4 , 574 , 414 , 1 , "aegypten" , new int[] {27 , 25 , 24 , 16});
// cID 5 - Asien
provinces[27] = new Province(27 , 5 , 664 , 345 , 2 , "Mittlerer Osten" , new int[] {24 , 26 , 16 , 23 , 31 , 28});
provinces[28] = new Province(28 , 5 , 784 , 370 , 2 , "Indien" , new int[] {29 , 31 , 27 , 30});
provinces[29] = new Province(29 , 5 , 863 , 322 , 2 , "China" , new int[] {30 , 28 , 31 , 32 , 33 , 37});
provinces[30] = new Province(30 , 5 , 867 , 400 , 1 , "Südost Asien" , new int[] {29 , 39 , 28});
provinces[30] = new Province(30 , 5 , 867 , 400 , 1 , "Suedost Asien" , new int[] {29 , 39 , 28});
provinces[31] = new Province(31 , 5 , 724 , 262 , 1 , "Afganistan" , new int[] {29 , 28 , 27 , 13 , 32});
provinces[32] = new Province(32 , 5 , 740 , 163 , 1 , "Ural" , new int[] {29 , 33 , 31 , 13});
provinces[33] = new Province(33 , 5 , 802 , 128 , 1 , "Sibirien" , new int[] {34 , 35 , 37 , 29 , 32});
@ -137,7 +141,7 @@ public class Map_World extends GeneralMap
Spieler 2 ist als zweites dran; Hauptstadt:7
Spieler 3 ist als drittes dran und bekommt eine Karte; Hauptstadt:22
Spieler 4 ist als viertes dran und bekommt eine Karte; Hauptstadt:20
Spieler 5 ist als fünftes dran und bekommt zwei Karte; Hauptstadt:41
Spieler 5 ist als fuenftes dran und bekommt zwei Karte; Hauptstadt:41
*/
dataL = new int[] {2,1,0,2,3,2,1,2,1,2,1,2,1,4,3,1,1,2,3,1,3,3,2,1,0,4,0,2,2,3,0,2,1,3,3,2,3,5,3,3,1,2,2,5,2,3,0,2,2,3,2,2,1,3,4,2,4,3,4,3,0,3,0,3,3,1,4,1,4,1,4,2,2,2,3,2,4,2,0,2,4,4,4,2};
}

@ -1,29 +1,33 @@
/*
Hinweis zum Verbleib der Klasse:
Diese Klasse soll, da sie zurzeit weder vollständig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Sollte die Klasse jedoch zuvor noch Verwendung finden, wird sie nach Absprache mit den jeweiligen Autoren/Benutzern in die Architektur aufgenommen.
*/
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Menue_Button here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Menue_Button extends Button
{
public Menue_Button(ButtonEvent h) {
super(h);
}
/**
* Act - do whatever the Menue_Button wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()
{
setLocation(100,38);// Add your action code here.
}
}
package zweiundvierzig;
/*
Hinweis zum Verbleib der Klasse:
Diese Klasse soll, da sie zurzeit weder vollstaendig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Sollte die Klasse jedoch zuvor noch Verwendung finden, wird sie nach Absprache mit den jeweiligen Autoren/Benutzern in die Architektur aufgenommen.
*/
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Menue_Button here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Menue_Button extends Button
{
public Menue_Button(ButtonEvent h) {
super(h);
}
/**
* Act - do whatever the Menue_Button wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()
{
setLocation(100,38);// Add your action code here.
}
}

@ -1,3 +1,7 @@
package zweiundvierzig;
import greenfoot.*;
import java.util.Arrays; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;

@ -1,291 +1,295 @@
import greenfoot.*;
import java.awt.Color;
/**
* Write a description of class Player here.
*
* @author (Genosse Betakevin und Genosse Julien und Genosse GruenerWal)
* @version 6.6.6-build2
*/
public class Player extends Actor
{
@Override public GeneralMap getWorld(){
return (GeneralMap) super.getWorld();
}
int stars=0;
int add=0;
int id=0;
int provZahl=0;
int provVgl=0;
int[] stats = new int [6];
String n;
int color;
int textsize;
int c;
public int active;
boolean starsNeeded = false;
//definiert die ID und Namens Variable
public Player(int identity,String name, int c)
{
n = name;
id = identity;
color = c;
// redrawPlayer();
}
//gibt die Spieler ID zurück
public int getID()
{
return id;
}
// gibt den Spielernamen zurück
public String getDisplayName ()
{
return n;
}
//gibt die Sternenanzahl zurück
public int getStars()
{
return stars;
}
/**
* Gibt die Farbe des Spielers als int-Wert heraus.
* Wahnsinn, dass du dir den Scheiß hier grad durchliest.
* ~GruenerWal
*/
public int getColor()
{
return color;
}
// 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 pre;
rand = (int)(1+6*Math.random());
if (rand == 1 || rand == 2|| rand == 3)
{
add = 1;
redrawPlayer();
}
if (rand == 4|| rand == 5)
{
add = 2;
redrawPlayer();
}
if (rand == 6)
{
add = 3;
redrawPlayer();
}
if (gotProv== true)
{
pre = stars;
stars+=add;
System.out.println("Deine vorherige Sternenanzahl betrug " + pre + ".");
System.out.println("Du hast " + add + " Sterne erhalten.");
System.out.println("Deine aktuelle Sternenanzahl beträgt " + stars + ".");
redrawPlayer();
}
} */
private void checkStars() {
if(stars < 0) {
stars = 0;
}
}
// Von Felix: Architektur-konforme Funktion
public int addToStars(int s) {
stars += s;
checkStars();
redrawPlayer();
return stars;
}
//eine für das Testen gedachte Methode, die die Anzahl der Sterne auf ein gewünschtes Maß setzt
public int setStars (int set)
{
stars = set;
checkStars();
redrawPlayer();
return stars;
}
//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)
{
stars -= sub;
checkStars();
redrawPlayer();
return stars;
}
public boolean canStarsRemoved(int s) {
return (stars - s) >= 0;
}
public int getProvinceCount()
{
int p = 0;
int[] provinces = getWorld().getProvinceOwners();
for (int x=1; x < provinces.length; x++)
{
if (provinces[x] == id)
{
p++;
}
}
return p;
}
public int getEntitiesCount() {
return getWorld().getPlayerEntityCount(id);
}
public void gotEntities(int gotEnt)
{
stats[3]+= gotEnt;
reloadMaxEntities();
redrawPlayer();
}
public void lostEntity()
{
stats[4]+=1;
redrawPlayer();
}
public void gotProvince() {
stats[0]++;
reloadMaxInfluence();
redrawPlayer();
starsNeeded = true;
}
public void lostProvince() {
stats[1]++;
redrawPlayer();
}
public void reloadMaxInfluence()
{
int c = getProvinceCount();
if(stats[2]< c)
{
stats[2]=c;
redrawPlayer();
}
}
public void reloadMaxEntities()
{
int c = getEntitiesCount();
if (stats[5]< c)
{
stats[5]=c;
redrawPlayer();
}
}
public boolean[] getMyProvinces()
{
int[] provinces = getWorld().getProvinceOwners();
boolean[] myProvinces = new boolean[provinces.length];
for (int x=0; x < provinces.length; x++)
{
if (provinces[x]== id)
{
myProvinces[x]=true;
}
else
{
myProvinces[x]=false;
}
}
redrawPlayer();
return myProvinces;
}
public int[] getStatistics()
{
return stats;
}
public int setColor(int c)
{
color = c;
redrawPlayer();
return color;
}
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()
{
getWorld().reloadPlayerStat();
int textSize = 20;
if(n == null)
{
n = "leererSpieler";
}
GreenfootImage statistics = new GreenfootImage(137,120);
if(getWorld().getCurrentPlayerID() == id) {
statistics.setColor(new Color(255,255,255));
statistics.fill();
}
GreenfootImage name = new GreenfootImage(n,textSize,getTextCol(),getTransBackCol());
statistics.drawImage(name,0,0);
setImage(statistics);
oDecide(statistics,textSize);
}
private void oDecide(GreenfootImage statistics,int textSize)
{
GreenfootImage flag = new GreenfootImage("images\\BlaueArmee.jpg");
switch(color)
{
case 2:
flag = new GreenfootImage("images\\BlaueArmee.jpg");
break;
case 5:
flag = new GreenfootImage("images\\GelbeArmee.jpg");
break;
case 6:
flag = new GreenfootImage("images\\LilaArmee.jpg");
break;
case 4:
flag = new GreenfootImage("images\\RoteArmee.jpg");
break;
case 1:
flag = new GreenfootImage("images\\SchwarzeArmee.jpg");
break;
case 3:
flag = new GreenfootImage("images\\GrueneArmee.jpg");
break;
}
redraw(statistics,flag,textSize);
}
private void redraw(GreenfootImage statistics,GreenfootImage flag, int textSize)
{
flag.scale(137,83);
statistics.drawImage(flag,0,textSize);
String statTxt = (getWorld().getCurrentPlayerID() == id) ? "Du bist dran!" : stats[0] + " | " + stats[1] + " | " + stats[2] + " | " +stats[3] + " | " + stats[4] + " | " + stats[5];
GreenfootImage playerStatistics = new GreenfootImage(statTxt,textSize,getTextCol(),getTransBackCol());
statistics.drawImage(playerStatistics, 0, 103);
setImage(statistics);
}
package zweiundvierzig;
import greenfoot.*;
import java.awt.Color;
/**
* Write a description of class Player here.
*
* @author (Genosse Betakevin und Genosse Julien und Genosse GruenerWal)
* @version 6.6.6-build2
*/
public class Player extends Actor
{
@Override public GeneralMap getWorld(){
return (GeneralMap) super.getWorld();
}
int stars=0;
int add=0;
int id=0;
int provZahl=0;
int provVgl=0;
int[] stats = new int [6];
String n;
int color;
int textsize;
int c;
public int active;
boolean starsNeeded = false;
//definiert die ID und Namens Variable
public Player(int identity,String name, int c)
{
n = name;
id = identity;
color = c;
// redrawPlayer();
}
//gibt die Spieler ID zurueck
public int getID()
{
return id;
}
// gibt den Spielernamen zurueck
public String getDisplayName ()
{
return n;
}
//gibt die Sternenanzahl zurueck
public int getStars()
{
return stars;
}
/**
* Gibt die Farbe des Spielers als int-Wert heraus.
* Wahnsinn, dass du dir den Scheiß hier grad durchliest.
* ~GruenerWal
*/
public int getColor()
{
return color;
}
// Von Felix: Methode nicht architektur-konform
/* // erhoeht die Sternenzahl um eine random ausgewaehlte Anzahl von 1-3
public void addToStars()
{
int rand;
int pre;
rand = (int)(1+6*Math.random());
if (rand == 1 || rand == 2|| rand == 3)
{
add = 1;
redrawPlayer();
}
if (rand == 4|| rand == 5)
{
add = 2;
redrawPlayer();
}
if (rand == 6)
{
add = 3;
redrawPlayer();
}
if (gotProv== true)
{
pre = stars;
stars+=add;
System.out.println("Deine vorherige Sternenanzahl betrug " + pre + ".");
System.out.println("Du hast " + add + " Sterne erhalten.");
System.out.println("Deine aktuelle Sternenanzahl betraegt " + stars + ".");
redrawPlayer();
}
} */
private void checkStars() {
if(stars < 0) {
stars = 0;
}
}
// Von Felix: Architektur-konforme Funktion
public int addToStars(int s) {
stars += s;
checkStars();
redrawPlayer();
return stars;
}
//eine fuer das Testen gedachte Methode, die die Anzahl der Sterne auf ein gewuenschtes Maß setzt
public int setStars (int set)
{
stars = set;
checkStars();
redrawPlayer();
return stars;
}
//eine Methode, die das Abziehen von Sternen testet und, wenn das Ergebnis >= 0 ist, die Sternenanzahl um eine gewaehlte Anzahl verringert
public int removeFromStars(int sub)
{
stars -= sub;
checkStars();
redrawPlayer();
return stars;
}
public boolean canStarsRemoved(int s) {
return (stars - s) >= 0;
}
public int getProvinceCount()
{
int p = 0;
int[] provinces = getWorld().getProvinceOwners();
for (int x=1; x < provinces.length; x++)
{
if (provinces[x] == id)
{
p++;
}
}
return p;
}
public int getEntitiesCount() {
return getWorld().getPlayerEntityCount(id);
}
public void gotEntities(int gotEnt)
{
stats[3]+= gotEnt;
reloadMaxEntities();
redrawPlayer();
}
public void lostEntity()
{
stats[4]+=1;
redrawPlayer();
}
public void gotProvince() {
stats[0]++;
reloadMaxInfluence();
redrawPlayer();
starsNeeded = true;
}
public void lostProvince() {
stats[1]++;
redrawPlayer();
}
public void reloadMaxInfluence()
{
int c = getProvinceCount();
if(stats[2]< c)
{
stats[2]=c;
redrawPlayer();
}
}
public void reloadMaxEntities()
{
int c = getEntitiesCount();
if (stats[5]< c)
{
stats[5]=c;
redrawPlayer();
}
}
public boolean[] getMyProvinces()
{
int[] provinces = getWorld().getProvinceOwners();
boolean[] myProvinces = new boolean[provinces.length];
for (int x=0; x < provinces.length; x++)
{
if (provinces[x]== id)
{
myProvinces[x]=true;
}
else
{
myProvinces[x]=false;
}
}
redrawPlayer();
return myProvinces;
}
public int[] getStatistics()
{
return stats;
}
public int setColor(int c)
{
color = c;
redrawPlayer();
return color;
}
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()
{
getWorld().reloadPlayerStat();
int textSize = 20;
if(n == null)
{
n = "leererSpieler";
}
GreenfootImage statistics = new GreenfootImage(137,120);
if(getWorld().getCurrentPlayerID() == id) {
statistics.setColor(new Color(255,255,255));
statistics.fill();
}
GreenfootImage name = new GreenfootImage(n,textSize,getTextCol(),getTransBackCol());
statistics.drawImage(name,0,0);
setImage(statistics);
oDecide(statistics,textSize);
}
private void oDecide(GreenfootImage statistics,int textSize)
{
GreenfootImage flag = new GreenfootImage("images\\BlaueArmee.jpg");
switch(color)
{
case 2:
flag = new GreenfootImage("images\\BlaueArmee.jpg");
break;
case 5:
flag = new GreenfootImage("images\\GelbeArmee.jpg");
break;
case 6:
flag = new GreenfootImage("images\\LilaArmee.jpg");
break;
case 4:
flag = new GreenfootImage("images\\RoteArmee.jpg");
break;
case 1:
flag = new GreenfootImage("images\\SchwarzeArmee.jpg");
break;
case 3:
flag = new GreenfootImage("images\\GrueneArmee.jpg");
break;
}
redraw(statistics,flag,textSize);
}
private void redraw(GreenfootImage statistics,GreenfootImage flag, int textSize)
{
flag.scale(137,83);
statistics.drawImage(flag,0,textSize);
String statTxt = (getWorld().getCurrentPlayerID() == id) ? "Du bist dran!" : stats[0] + " | " + stats[1] + " | " + stats[2] + " | " +stats[3] + " | " + stats[4] + " | " + stats[5];
GreenfootImage playerStatistics = new GreenfootImage(statTxt,textSize,getTextCol(),getTransBackCol());
statistics.drawImage(playerStatistics, 0, 103);
setImage(statistics);
}
}

File diff suppressed because it is too large Load Diff

@ -1,13 +1,17 @@
package zweiundvierzig;
/*
Hinweis zum Verbleib der Klasse:
Diese Klasse soll, da sie zurzeit weder vollständig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Diese Klasse soll, da sie zurzeit weder vollstaendig, noch in Verwendung, noch in der Architektur definiert ist, zum Beta-Meilenstein entfernt werden.
Sollte die Klasse jedoch zuvor noch Verwendung finden, wird sie nach Absprache mit den jeweiligen Autoren/Benutzern in die Architektur aufgenommen.
*/
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Würfel_Button_Angriff here.
* Write a description of class Wuerfel_Button_Angriff here.
*
* @author (your name)
* @version (a version number or a date)
@ -19,7 +23,7 @@ public class Roll_Button extends Button
}
/**
* Act - do whatever the Würfel_Button_Angriff wants to do. This method is called whenever
* Act - do whatever the Wuerfel_Button_Angriff wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()

@ -1,20 +1,24 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Spielanleitung here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Spielanleitung extends Actor
{
public void act()
{
setImage ("Spielanleitung.png");
}
}
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Spielanleitung here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Spielanleitung extends Actor
{
public void act()
{
setImage ("Spielanleitung.png");
}
}

@ -1,63 +1,67 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Beginnt neues Spiel/ lädt altes Spiel.
*
* @author 4ngelica
* @version 04.07.16
*/
public class Start_Load extends World implements ButtonEvent
{
static String backgroundImage = "backgroundLight.png"; // Gibt an, welches Bild in allen Menüs als Hintergrund gewählt werden soll.
// Light Theme: "backgroundLight.png"
// Dark Theme: "backgroundDark.png"
Button chulien = new Button("Neues Spiel", 16 , this);
Button spielanleitung = new Button("Spielanleitung", 16, this);
Button zurück = new Button("zurück", 16, this);
/**
* Constructor for objects of class Start_Load.
*
*/
public Start_Load()
{
// Create a new world with 600x400 cells with a cell size of 1x1 pixels.
super(1600, 900, 1);
setBackground(backgroundImage);
chulien.setSize(100,50);
spielanleitung.setSize(100,50);
zurück.setSize(100,50);
addObject (chulien, (1600-chulien.getWidth())/2+100, (900-chulien.getHeight())/2);
addObject (spielanleitung, (1600-spielanleitung.getWidth())/2+100, (900-spielanleitung.getHeight())/2 + 80);
Greenfoot.setSpeed(100);
Greenfoot.start();
}
public void buttonClicked ( Bildbutton b)
{
if ( b == chulien)
{
World chean = new Colours (1600, 900, 1);
Greenfoot.setWorld(chean);
}
if (b == spielanleitung)
{
addObject (new Spielanleitung(), 800, 410);
addObject (zurück, 800 , 870);
}
if (b == zurück)
{
removeObjects(getObjects(Spielanleitung.class));
removeObject(zurück);
}
}
public void Load()
{
}
}
package zweiundvierzig;
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Beginnt neues Spiel/ laedt altes Spiel.
*
* @author 4ngelica
* @version 04.07.16
*/
public class Start_Load extends World implements ButtonEvent
{
static String backgroundImage = "backgroundLight.png"; // Gibt an, welches Bild in allen Menues als Hintergrund gewaehlt werden soll.
// Light Theme: "backgroundLight.png"
// Dark Theme: "backgroundDark.png"
Button chulien = new Button("Neues Spiel", 16 , this);
Button spielanleitung = new Button("Spielanleitung", 16, this);
Button zurueck = new Button("zurueck", 16, this);
/**
* Constructor for objects of class Start_Load.
*
*/
public Start_Load()
{
// Create a new world with 600x400 cells with a cell size of 1x1 pixels.
super(1600, 900, 1);
setBackground(backgroundImage);
chulien.setSize(100,50);
spielanleitung.setSize(100,50);
zurueck.setSize(100,50);
addObject (chulien, (1600-chulien.getWidth())/2+100, (900-chulien.getHeight())/2);
addObject (spielanleitung, (1600-spielanleitung.getWidth())/2+100, (900-spielanleitung.getHeight())/2 + 80);
Greenfoot.setSpeed(100);
Greenfoot.start();
}
public void buttonClicked ( Bildbutton b)
{
if ( b == chulien)
{
World chean = new Colours (1600, 900, 1);
Greenfoot.setWorld(chean);
}
if (b == spielanleitung)
{
addObject (new Spielanleitung(), 800, 410);
addObject (zurueck, 800 , 870);
}
if (b == zurueck)
{
removeObjects(getObjects(Spielanleitung.class));
removeObject(zurueck);
}
}
public void Load()
{
}
}

@ -1,10 +1,14 @@
package zweiundvierzig;
import greenfoot.*;
import java.awt.Color;
import java.util.*;
import java.lang.Object;
/**
Diese Klasse enthält nur statische Funktionen, welche für euch als Unterstützung gedacht sind. Damit könnt ihr dann hoffentlich viele Code-Zeilen sparen. :)
Diese Klasse enthaelt nur statische Funktionen, welche fuer euch als Unterstuetzung gedacht sind. Damit koennt ihr dann hoffentlich viele Code-Zeilen sparen. :)
@author Zocker1999_NET
@version 15.06.2016
@ -12,7 +16,7 @@ Diese Klasse enthält nur statische Funktionen, welche für euch als Unterstütz
public final class Utils {
/**
Kopiert ein boolean-Array und übergibt diese.
Kopiert ein boolean-Array und uebergibt diese.
@param a Das zu kopierende Array
@return Die Kopie des Arrays
*/
@ -25,7 +29,7 @@ public final class Utils {
}
/**
Kopiert ein int-Array und übergibt diese.
Kopiert ein int-Array und uebergibt diese.
@param a Das zu kopierende Array
@return Die Kopie des Arrays
*/
@ -38,7 +42,7 @@ public final class Utils {
}
/**
Kopiert ein String-Array und übergibt diese.
Kopiert ein String-Array und uebergibt diese.
@param a Das zu kopierende Array
@return Die Kopie des Arrays
*/
@ -51,9 +55,9 @@ public final class Utils {
}
/**
Zeichnet innerhalb eines GreenfootImage ein gefülltes Rechteck in der gegebenen Farbe und mit dem gegebenen Abstand zum Rand.
Zeichnet innerhalb eines GreenfootImage ein gefuelltes Rechteck in der gegebenen Farbe und mit dem gegebenen Abstand zum Rand.
@param i Das GreenfootImage, in dem gezeichnet werden soll.
@param c Die Farbe, in der das gefüllte Rechteck gezeichnet werden soll.
@param c Die Farbe, in der das gefuellte Rechteck gezeichnet werden soll.
@param b Der Abstand zum Rand der Grafik.
*/
public static void drawInsideRectangle(GreenfootImage i, Color c, int b) {

@ -0,0 +1,420 @@
#BlueJ package file
dependency1.from=Bildbutton
dependency1.to=ButtonEvent
dependency1.type=UsesDependency
dependency10.from=Colours
dependency10.to=Map
dependency10.type=UsesDependency
dependency11.from=Colours
dependency11.to=Start_Load
dependency11.type=UsesDependency
dependency12.from=Start_Load
dependency12.to=Button
dependency12.type=UsesDependency
dependency13.from=Start_Load
dependency13.to=Bildbutton
dependency13.type=UsesDependency
dependency14.from=Start_Load
dependency14.to=Colours
dependency14.type=UsesDependency
dependency15.from=Start_Load
dependency15.to=Spielanleitung
dependency15.type=UsesDependency
dependency16.from=Roll_Button
dependency16.to=ButtonEvent
dependency16.type=UsesDependency
dependency17.from=Player
dependency17.to=GeneralMap
dependency17.type=UsesDependency
dependency18.from=Menue_Button
dependency18.to=ButtonEvent
dependency18.type=UsesDependency
dependency19.from=DicesList
dependency19.to=Dice
dependency19.type=UsesDependency
dependency2.from=InputDialogWorld
dependency2.to=Label
dependency2.type=UsesDependency
dependency20.from=DicesList
dependency20.to=Utils
dependency20.type=UsesDependency
dependency21.from=Province
dependency21.to=GeneralMap
dependency21.type=UsesDependency
dependency22.from=Province
dependency22.to=Utils
dependency22.type=UsesDependency
dependency23.from=GeneralMap
dependency23.to=Button
dependency23.type=UsesDependency
dependency24.from=GeneralMap
dependency24.to=Province
dependency24.type=UsesDependency
dependency25.from=GeneralMap
dependency25.to=Label
dependency25.type=UsesDependency
dependency26.from=GeneralMap
dependency26.to=Player
dependency26.type=UsesDependency
dependency27.from=GeneralMap
dependency27.to=Bildbutton
dependency27.type=UsesDependency
dependency28.from=GeneralMap
dependency28.to=Dice_Offender
dependency28.type=UsesDependency
dependency29.from=GeneralMap
dependency29.to=Dice_Defender
dependency29.type=UsesDependency
dependency3.from=InputDialogWorld
dependency3.to=Button
dependency3.type=UsesDependency
dependency30.from=GeneralMap
dependency30.to=Utils
dependency30.type=UsesDependency
dependency31.from=ButtonEvent
dependency31.to=Bildbutton
dependency31.type=UsesDependency
dependency32.from=Utils
dependency32.to=Province
dependency32.type=UsesDependency
dependency33.from=Map
dependency33.to=Bildbutton
dependency33.type=UsesDependency
dependency34.from=Map
dependency34.to=Button
dependency34.type=UsesDependency
dependency35.from=Map
dependency35.to=Map_World
dependency35.type=UsesDependency
dependency36.from=Map
dependency36.to=GeneralMap
dependency36.type=UsesDependency
dependency37.from=Map
dependency37.to=Start_Load
dependency37.type=UsesDependency
dependency4.from=InputDialogWorld
dependency4.to=Bildbutton
dependency4.type=UsesDependency
dependency5.from=Map_World
dependency5.to=Province
dependency5.type=UsesDependency
dependency6.from=Button
dependency6.to=ButtonEvent
dependency6.type=UsesDependency
dependency7.from=Colours
dependency7.to=Bildbutton
dependency7.type=UsesDependency
dependency8.from=Colours
dependency8.to=Button
dependency8.type=UsesDependency
dependency9.from=Colours
dependency9.to=Label
dependency9.type=UsesDependency
objectbench.height=100
objectbench.width=353
package.editor.height=400
package.editor.width=560
package.editor.x=12
package.editor.y=12
package.numDependencies=37
package.numTargets=26
package.showExtends=true
package.showUses=true
target1.editor.height=700
target1.editor.width=900
target1.editor.x=0
target1.editor.y=0
target1.height=50
target1.name=Bildbutton
target1.naviview.expanded=true
target1.showInterface=false
target1.type=ClassTarget
target1.typeParameters=
target1.width=80
target1.x=160
target1.y=10
target10.editor.height=700
target10.editor.width=900
target10.editor.x=0
target10.editor.y=0
target10.height=50
target10.name=Colours
target10.naviview.expanded=true
target10.showInterface=false
target10.type=ClassTarget
target10.typeParameters=
target10.width=80
target10.x=200
target10.y=250
target11.editor.height=700
target11.editor.width=900
target11.editor.x=0
target11.editor.y=0
target11.height=50
target11.name=Start_Load
target11.naviview.expanded=true
target11.showInterface=false
target11.type=ClassTarget
target11.typeParameters=
target11.width=90
target11.x=130
target11.y=310
target12.height=50
target12.name=Roll_Button
target12.showInterface=false
target12.type=ClassTarget
target12.typeParameters=
target12.width=90
target12.x=10
target12.y=370
target13.editor.height=700
target13.editor.width=900
target13.editor.x=0
target13.editor.y=0
target13.height=50
target13.name=Spielanleitung
target13.naviview.expanded=true
target13.showInterface=false
target13.type=ClassTarget
target13.typeParameters=
target13.width=100
target13.x=110
target13.y=370
target14.editor.height=700
target14.editor.width=900
target14.editor.x=0
target14.editor.y=0
target14.height=50
target14.name=Player
target14.naviview.expanded=true
target14.showInterface=false
target14.type=ClassTarget
target14.typeParameters=
target14.width=80
target14.x=10
target14.y=430
target15.height=50
target15.name=Debug5
target15.showInterface=false
target15.type=ClassTarget
target15.typeParameters=
target15.width=80
target15.x=100
target15.y=430
target16.height=50
target16.name=Debug4
target16.showInterface=false
target16.type=ClassTarget
target16.typeParameters=
target16.width=80
target16.x=190
target16.y=430
target17.height=50
target17.name=Debug3
target17.showInterface=false
target17.type=ClassTarget
target17.typeParameters=
target17.width=80
target17.x=10
target17.y=490
target18.editor.height=700
target18.editor.width=900
target18.editor.x=0
target18.editor.y=0
target18.height=50
target18.name=Dice
target18.naviview.expanded=true
target18.showInterface=false
target18.type=ClassTarget
target18.typeParameters=
target18.width=80
target18.x=100
target18.y=490
target19.height=50
target19.name=Menue_Button
target19.showInterface=false
target19.type=ClassTarget
target19.typeParameters=
target19.width=110
target19.x=10
target19.y=550
target2.editor.height=700
target2.editor.width=900
target2.editor.x=0
target2.editor.y=0
target2.height=50
target2.name=GUI_Interface
target2.naviview.expanded=true
target2.showInterface=false
target2.type=AbstractTarget
target2.typeParameters=
target2.width=100
target2.x=160
target2.y=70
target20.editor.height=700
target20.editor.width=900
target20.editor.x=0
target20.editor.y=0
target20.height=50
target20.name=DicesList
target20.naviview.expanded=true
target20.showInterface=false
target20.type=AbstractTarget
target20.typeParameters=
target20.width=80
target20.x=190
target20.y=490
target21.height=50
target21.name=OffenderDices
target21.showInterface=false
target21.type=ClassTarget
target21.typeParameters=
target21.width=110
target21.x=130
target21.y=550
target22.editor.height=700
target22.editor.width=900
target22.editor.x=0
target22.editor.y=0
target22.height=50
target22.name=Province
target22.naviview.expanded=true
target22.showInterface=false
target22.type=ClassTarget
target22.typeParameters=
target22.width=80
target22.x=10
target22.y=610
target23.editor.height=700
target23.editor.width=900
target23.editor.x=0
target23.editor.y=0
target23.height=50
target23.name=GeneralMap
target23.naviview.expanded=true
target23.showInterface=false
target23.type=AbstractTarget
target23.typeParameters=
target23.width=90
target23.x=100
target23.y=610
target24.editor.height=700
target24.editor.width=900
target24.editor.x=0
target24.editor.y=0
target24.height=50
target24.name=ButtonEvent
target24.naviview.expanded=true
target24.showInterface=false
target24.type=InterfaceTarget
target24.typeParameters=
target24.width=90
target24.x=10
target24.y=670
target25.editor.height=700
target25.editor.width=900
target25.editor.x=0
target25.editor.y=0
target25.height=50
target25.name=Utils
target25.naviview.expanded=true
target25.showInterface=false
target25.type=ClassTarget
target25.typeParameters=
target25.width=80
target25.x=200
target25.y=610
target26.editor.height=700
target26.editor.width=900
target26.editor.x=0
target26.editor.y=0
target26.height=50
target26.name=Map
target26.naviview.expanded=true
target26.showInterface=false
target26.type=ClassTarget
target26.typeParameters=
target26.width=80
target26.x=110
target26.y=670
target3.editor.height=700
target3.editor.width=900
target3.editor.x=0
target3.editor.y=0
target3.height=50
target3.name=Label
target3.naviview.expanded=true
target3.showInterface=false
target3.type=ClassTarget
target3.typeParameters=
target3.width=80
target3.x=10
target3.y=90
target4.height=50
target4.name=InputDialogWorld
target4.showInterface=false
target4.type=ClassTarget
target4.typeParameters=
target4.width=120
target4.x=100
target4.y=130
target5.editor.height=700
target5.editor.width=900
target5.editor.x=0
target5.editor.y=0
target5.height=50
target5.name=Dice_Defender
target5.naviview.expanded=true
target5.showInterface=false
target5.type=ClassTarget
target5.typeParameters=
target5.width=110
target5.x=10
target5.y=190
target6.height=50
target6.name=DefenderDices
target6.showInterface=false
target6.type=ClassTarget
target6.typeParameters=
target6.width=110
target6.x=130
target6.y=190
target7.editor.height=700
target7.editor.width=900
target7.editor.x=0
target7.editor.y=0
target7.height=50
target7.name=Map_World
target7.naviview.expanded=true
target7.showInterface=false
target7.type=ClassTarget
target7.typeParameters=
target7.width=90
target7.x=10
target7.y=250
target8.editor.height=700
target8.editor.width=900
target8.editor.x=0
target8.editor.y=0
target8.height=50
target8.name=Button
target8.naviview.expanded=true
target8.showInterface=false
target8.type=ClassTarget
target8.typeParameters=
target8.width=80
target8.x=110
target8.y=250
target9.editor.height=700
target9.editor.width=900
target9.editor.x=0
target9.editor.y=0
target9.height=50
target9.name=Dice_Offender
target9.naviview.expanded=true
target9.showInterface=false
target9.type=ClassTarget
target9.typeParameters=
target9.width=110
target9.x=10
target9.y=310

@ -1,345 +1,346 @@
#Greenfoot project file
class.ArmyPlacer.superclass=Map_World
class.ArmySchubser.superclass=Map_World
class.Button.superclass=GUI_Interface
class.ButtonEvent.superclass=
class.Colours.superclass=greenfoot.World
class.CurrentPlayerArrow.superclass=GUI_Interface
class.Debug3.superclass=Map_World
class.Debug4.superclass=Map_World
class.Debug5.superclass=Map_World
class.DefenderDices.superclass=DicesList
class.Dice.superclass=GUI_Interface
class.Dice_Defender.superclass=
class.Dice_Offender.superclass=
class.DicesList.superclass=greenfoot.Actor
class.Fight.superclass=Map_World
class.GUI_Interface.superclass=greenfoot.Actor
class.GeneralMap.superclass=greenfoot.World
class.Label.superclass=GUI_Interface
class.Map.superclass=greenfoot.World
class.Map_World.superclass=GeneralMap
class.Menue_Button.superclass=Button
class.OffenderDices.superclass=DicesList
class.Player.superclass=greenfoot.Actor
class.Province.superclass=greenfoot.Actor
class.Roll_Button.superclass=Button
class.Spielanleitung.superclass=greenfoot.Actor
class.Spieleranzahl.superclass=Spieloptionen
class.Spieloptionen.superclass=greenfoot.World
class.Start_Load.superclass=greenfoot.World
class.Utils.superclass=
class.Weltenauswahl.superclass=Spieloptionen
dependency1.from=Province
dependency1.to=Utils
dependency1.type=UsesDependency
dependency10.from=GeneralMap
dependency10.to=Player
dependency10.type=UsesDependency
dependency11.from=Button
dependency11.to=ButtonEvent
dependency11.type=UsesDependency
dependency12.from=Button
dependency12.to=Utils
dependency12.type=UsesDependency
dependency13.from=ButtonEvent
dependency13.to=Button
dependency13.type=UsesDependency
dependency14.from=Roll_Button
dependency14.to=ButtonEvent
dependency14.type=UsesDependency
dependency15.from=Start_Load
dependency15.to=Button
dependency15.type=UsesDependency
dependency16.from=Start_Load
dependency16.to=ButtonEvent
dependency16.type=UsesDependency
dependency17.from=Colours
dependency17.to=Button
dependency17.type=UsesDependency
dependency18.from=Colours
dependency18.to=Map
dependency18.type=UsesDependency
dependency19.from=Map
dependency19.to=Button
dependency19.type=UsesDependency
dependency2.from=GeneralMap
dependency2.to=Menue_Button
dependency2.type=UsesDependency
dependency20.from=Map
dependency20.to=GeneralMap
dependency20.type=UsesDependency
dependency21.from=Colours
dependency21.to=Map_World
dependency21.type=UsesDependency
dependency22.from=Start_Load
dependency22.to=Colours
dependency22.type=UsesDependency
dependency23.from=GeneralMap
dependency23.to=Button
dependency23.type=UsesDependency
dependency24.from=GeneralMap
dependency24.to=Province
dependency24.type=UsesDependency
dependency25.from=GeneralMap
dependency25.to=Dice_Offender
dependency25.type=UsesDependency
dependency26.from=GeneralMap
dependency26.to=Dice_Defender
dependency26.type=UsesDependency
dependency27.from=GeneralMap
dependency27.to=Utils
dependency27.type=UsesDependency
dependency28.from=Utils
dependency28.to=Province
dependency28.type=UsesDependency
dependency29.from=Map
dependency29.to=Map_World
dependency29.type=UsesDependency
dependency3.from=GeneralMap
dependency3.to=Roll_Button
dependency3.type=UsesDependency
dependency30.from=Colours
dependency30.to=Label
dependency30.type=UsesDependency
dependency31.from=Colours
dependency31.to=Start_Load
dependency31.type=UsesDependency
dependency32.from=Start_Load
dependency32.to=Spielanleitung
dependency32.type=UsesDependency
dependency33.from=Map
dependency33.to=Start_Load
dependency33.type=UsesDependency
dependency4.from=Map_World
dependency4.to=Province
dependency4.type=UsesDependency
dependency5.from=Player
dependency5.to=GeneralMap
dependency5.type=UsesDependency
dependency6.from=Menue_Button
dependency6.to=ButtonEvent
dependency6.type=UsesDependency
dependency7.from=DicesList
dependency7.to=Dice
dependency7.type=UsesDependency
dependency8.from=DicesList
dependency8.to=Utils
dependency8.type=UsesDependency
dependency9.from=Province
dependency9.to=GeneralMap
dependency9.type=UsesDependency
editor.fx.0.height=700
editor.fx.0.width=700
editor.fx.0.x=0
editor.fx.0.y=0
editor.swing.0.height=0
editor.swing.0.width=0
editor.swing.0.x=0
editor.swing.0.y=0
mainWindow.height=735
mainWindow.width=1377
mainWindow.x=-8
mainWindow.y=0
package.numDependencies=33
package.numTargets=24
project.charset=UTF-8
readme.height=58
readme.name=@README
readme.width=47
readme.x=10
readme.y=10
target1.height=50
target1.name=GUI_Interface
target1.showInterface=false
target1.type=AbstractTarget
target1.typeParameters=
target1.width=100
target1.x=10
target1.y=250
target10.height=50
target10.name=Roll_Button
target10.showInterface=false
target10.type=ClassTarget
target10.typeParameters=
target10.width=90
target10.x=190
target10.y=190
target11.height=50
target11.name=Spielanleitung
target11.showInterface=false
target11.type=ClassTarget
target11.typeParameters=
target11.width=100
target11.x=10
target11.y=670
target12.height=50
target12.name=Player
target12.showInterface=false
target12.type=ClassTarget
target12.typeParameters=
target12.width=80
target12.x=120
target12.y=10
target13.height=50
target13.name=Debug5
target13.showInterface=false
target13.type=ClassTarget
target13.typeParameters=
target13.width=80
target13.x=100
target13.y=370
target14.height=50
target14.name=Debug4
target14.showInterface=false
target14.type=ClassTarget
target14.typeParameters=
target14.width=80
target14.x=190
target14.y=370
target15.height=50
target15.name=Debug3
target15.showInterface=false
target15.type=ClassTarget
target15.typeParameters=
target15.width=80
target15.x=110
target15.y=550
target16.height=50
target16.name=Dice
target16.showInterface=false
target16.type=ClassTarget
target16.typeParameters=
target16.width=80
target16.x=100
target16.y=190
target17.height=50
target17.name=Menue_Button
target17.showInterface=false
target17.type=ClassTarget
target17.typeParameters=
target17.width=110
target17.x=120
target17.y=250
target18.height=50
target18.name=DicesList
target18.showInterface=false
target18.type=AbstractTarget
target18.typeParameters=
target18.width=80
target18.x=10
target18.y=430
target19.height=50
target19.name=OffenderDices
target19.showInterface=false
target19.type=ClassTarget
target19.typeParameters=
target19.width=110
target19.x=100
target19.y=430
target2.height=50
target2.name=Label
target2.showInterface=false
target2.type=ClassTarget
target2.typeParameters=
target2.width=80
target2.x=10
target2.y=370
target20.height=50
target20.name=Province
target20.showInterface=false
target20.type=ClassTarget
target20.typeParameters=
target20.width=80
target20.x=130
target20.y=310
target21.height=50
target21.name=GeneralMap
target21.showInterface=false
target21.type=AbstractTarget
target21.typeParameters=
target21.width=90
target21.x=70
target21.y=70
target22.height=50
target22.name=ButtonEvent
target22.showInterface=false
target22.type=InterfaceTarget
target22.typeParameters=
target22.width=90
target22.x=130
target22.y=490
target23.height=50
target23.name=Utils
target23.showInterface=false
target23.type=ClassTarget
target23.typeParameters=
target23.width=80
target23.x=10
target23.y=190
target24.height=50
target24.name=Map
target24.showInterface=false
target24.type=ClassTarget
target24.typeParameters=
target24.width=80
target24.x=190
target24.y=610
target3.height=50
target3.name=Dice_Defender
target3.showInterface=false
target3.type=ClassTarget
target3.typeParameters=
target3.width=110
target3.x=10
target3.y=310
target4.height=50
target4.name=DefenderDices
target4.showInterface=false
target4.type=ClassTarget
target4.typeParameters=
target4.width=110
target4.x=10
target4.y=490
target5.height=50
target5.name=Map_World
target5.showInterface=false
target5.type=ClassTarget
target5.typeParameters=
target5.width=90
target5.x=170
target5.y=70
target6.height=50
target6.name=Button
target6.showInterface=false
target6.type=ClassTarget
target6.typeParameters=
target6.width=80
target6.x=10
target6.y=130
target7.height=50
target7.name=Dice_Offender
target7.showInterface=false
target7.type=ClassTarget
target7.typeParameters=
target7.width=110
target7.x=100
target7.y=130
target8.height=50
target8.name=Colours
target8.showInterface=false
target8.type=ClassTarget
target8.typeParameters=
target8.width=80
target8.x=10
target8.y=610
target9.height=50
target9.name=Start_Load
target9.showInterface=false
target9.type=ClassTarget
target9.typeParameters=
target9.width=90
target9.x=10
target9.y=550
version=2.8.0
world.lastInstantiated=Start_Load
#Greenfoot project file
class.ArmyPlacer.superclass=Map_World
class.ArmySchubser.superclass=Map_World
class.Button.superclass=GUI_Interface
class.ButtonEvent.superclass=
class.Colours.superclass=greenfoot.World
class.CurrentPlayerArrow.superclass=GUI_Interface
class.Debug3.superclass=Map_World
class.Debug4.superclass=Map_World
class.Debug5.superclass=Map_World
class.DefenderDices.superclass=DicesList
class.Dice.superclass=GUI_Interface
class.Dice_Defender.superclass=
class.Dice_Offender.superclass=
class.DicesList.superclass=greenfoot.Actor
class.Fight.superclass=Map_World
class.GUI_Interface.superclass=greenfoot.Actor
class.GeneralMap.superclass=greenfoot.World
class.Label.superclass=GUI_Interface
class.Main.superclass=
class.Map.superclass=greenfoot.World
class.Map_World.superclass=GeneralMap
class.Menue_Button.superclass=Button
class.OffenderDices.superclass=DicesList
class.Player.superclass=greenfoot.Actor
class.Province.superclass=greenfoot.Actor
class.Roll_Button.superclass=Button
class.Spielanleitung.superclass=greenfoot.Actor
class.Spieleranzahl.superclass=Spieloptionen
class.Spieloptionen.superclass=greenfoot.World
class.Start_Load.superclass=greenfoot.World
class.Utils.superclass=
class.Weltenauswahl.superclass=Spieloptionen
dependency1.from=Province
dependency1.to=Utils
dependency1.type=UsesDependency
dependency10.from=GeneralMap
dependency10.to=Player
dependency10.type=UsesDependency
dependency11.from=Button
dependency11.to=ButtonEvent
dependency11.type=UsesDependency
dependency12.from=Button
dependency12.to=Utils
dependency12.type=UsesDependency
dependency13.from=ButtonEvent
dependency13.to=Button
dependency13.type=UsesDependency
dependency14.from=Roll_Button
dependency14.to=ButtonEvent
dependency14.type=UsesDependency
dependency15.from=Start_Load
dependency15.to=Button
dependency15.type=UsesDependency
dependency16.from=Start_Load
dependency16.to=ButtonEvent
dependency16.type=UsesDependency
dependency17.from=Colours
dependency17.to=Button
dependency17.type=UsesDependency
dependency18.from=Colours
dependency18.to=Map
dependency18.type=UsesDependency
dependency19.from=Map
dependency19.to=Button
dependency19.type=UsesDependency
dependency2.from=GeneralMap
dependency2.to=Menue_Button
dependency2.type=UsesDependency
dependency20.from=Map
dependency20.to=GeneralMap
dependency20.type=UsesDependency
dependency21.from=Colours
dependency21.to=Map_World
dependency21.type=UsesDependency
dependency22.from=Start_Load
dependency22.to=Colours
dependency22.type=UsesDependency
dependency23.from=GeneralMap
dependency23.to=Button
dependency23.type=UsesDependency
dependency24.from=GeneralMap
dependency24.to=Province
dependency24.type=UsesDependency
dependency25.from=GeneralMap
dependency25.to=Dice_Offender
dependency25.type=UsesDependency
dependency26.from=GeneralMap
dependency26.to=Dice_Defender
dependency26.type=UsesDependency
dependency27.from=GeneralMap
dependency27.to=Utils
dependency27.type=UsesDependency
dependency28.from=Utils
dependency28.to=Province
dependency28.type=UsesDependency
dependency29.from=Map
dependency29.to=Map_World
dependency29.type=UsesDependency
dependency3.from=GeneralMap
dependency3.to=Roll_Button
dependency3.type=UsesDependency
dependency30.from=Colours
dependency30.to=Label
dependency30.type=UsesDependency
dependency31.from=Colours
dependency31.to=Start_Load
dependency31.type=UsesDependency
dependency32.from=Start_Load
dependency32.to=Spielanleitung
dependency32.type=UsesDependency
dependency33.from=Map
dependency33.to=Start_Load
dependency33.type=UsesDependency
dependency4.from=Map_World
dependency4.to=Province
dependency4.type=UsesDependency
dependency5.from=Player
dependency5.to=GeneralMap
dependency5.type=UsesDependency
dependency6.from=Menue_Button
dependency6.to=ButtonEvent
dependency6.type=UsesDependency
dependency7.from=DicesList
dependency7.to=Dice
dependency7.type=UsesDependency
dependency8.from=DicesList
dependency8.to=Utils
dependency8.type=UsesDependency
dependency9.from=Province
dependency9.to=GeneralMap
dependency9.type=UsesDependency
editor.fx.0.height=700
editor.fx.0.width=700
editor.fx.0.x=0
editor.fx.0.y=0
editor.swing.0.height=0
editor.swing.0.width=0
editor.swing.0.x=0
editor.swing.0.y=0
mainWindow.height=735
mainWindow.width=1377
mainWindow.x=-8
mainWindow.y=0
package.numDependencies=0
package.numTargets=1
project.charset=UTF-8
readme.height=58
readme.name=@README
readme.width=47
readme.x=10
readme.y=10
target1.height=50
target1.name=Main
target1.showInterface=false
target1.type=ClassTarget
target1.typeParameters=
target1.width=80
target1.x=70
target1.y=10
target10.height=50
target10.name=Roll_Button
target10.showInterface=false
target10.type=ClassTarget
target10.typeParameters=
target10.width=90
target10.x=190
target10.y=190
target11.height=50
target11.name=Spielanleitung
target11.showInterface=false
target11.type=ClassTarget
target11.typeParameters=
target11.width=100
target11.x=10
target11.y=670
target12.height=50
target12.name=Player
target12.showInterface=false
target12.type=ClassTarget
target12.typeParameters=
target12.width=80
target12.x=120
target12.y=10
target13.height=50
target13.name=Debug5
target13.showInterface=false
target13.type=ClassTarget
target13.typeParameters=
target13.width=80
target13.x=100
target13.y=370
target14.height=50
target14.name=Debug4
target14.showInterface=false
target14.type=ClassTarget
target14.typeParameters=
target14.width=80
target14.x=190
target14.y=370
target15.height=50
target15.name=Debug3
target15.showInterface=false
target15.type=ClassTarget
target15.typeParameters=
target15.width=80
target15.x=110
target15.y=550
target16.height=50
target16.name=Dice
target16.showInterface=false
target16.type=ClassTarget
target16.typeParameters=
target16.width=80
target16.x=100
target16.y=190
target17.height=50
target17.name=Menue_Button
target17.showInterface=false
target17.type=ClassTarget
target17.typeParameters=
target17.width=110
target17.x=120
target17.y=250
target18.height=50
target18.name=DicesList
target18.showInterface=false
target18.type=AbstractTarget
target18.typeParameters=
target18.width=80
target18.x=10
target18.y=430
target19.height=50
target19.name=OffenderDices
target19.showInterface=false
target19.type=ClassTarget
target19.typeParameters=
target19.width=110
target19.x=100
target19.y=430
target2.height=50
target2.name=Label
target2.showInterface=false
target2.type=ClassTarget
target2.typeParameters=
target2.width=80
target2.x=10
target2.y=370
target20.height=50
target20.name=Province
target20.showInterface=false
target20.type=ClassTarget
target20.typeParameters=
target20.width=80
target20.x=130
target20.y=310
target21.height=50
target21.name=GeneralMap
target21.showInterface=false
target21.type=AbstractTarget
target21.typeParameters=
target21.width=90
target21.x=70
target21.y=70
target22.height=50
target22.name=ButtonEvent
target22.showInterface=false
target22.type=InterfaceTarget
target22.typeParameters=
target22.width=90
target22.x=130
target22.y=490
target23.height=50
target23.name=Utils
target23.showInterface=false
target23.type=ClassTarget
target23.typeParameters=
target23.width=80
target23.x=10
target23.y=190
target24.height=50
target24.name=Map
target24.showInterface=false
target24.type=ClassTarget
target24.typeParameters=
target24.width=80
target24.x=190
target24.y=610
target3.height=50
target3.name=Dice_Defender
target3.showInterface=false
target3.type=ClassTarget
target3.typeParameters=
target3.width=110
target3.x=10
target3.y=310
target4.height=50
target4.name=DefenderDices
target4.showInterface=false
target4.type=ClassTarget
target4.typeParameters=
target4.width=110
target4.x=10
target4.y=490
target5.height=50
target5.name=Map_World
target5.showInterface=false
target5.type=ClassTarget
target5.typeParameters=
target5.width=90
target5.x=170
target5.y=70
target6.height=50
target6.name=Button
target6.showInterface=false
target6.type=ClassTarget
target6.typeParameters=
target6.width=80
target6.x=10
target6.y=130
target7.height=50
target7.name=Dice_Offender
target7.showInterface=false
target7.type=ClassTarget
target7.typeParameters=
target7.width=110
target7.x=100
target7.y=130
target8.height=50
target8.name=Colours
target8.showInterface=false
target8.type=ClassTarget
target8.typeParameters=
target8.width=80
target8.x=10
target8.y=610
target9.height=50
target9.name=Start_Load
target9.showInterface=false
target9.type=ClassTarget
target9.typeParameters=
target9.width=90
target9.x=10
target9.y=550
version=2.8.0
world.lastInstantiated=Start_Load
Loading…
Cancel
Save