Dice erweitert um Grafikengine

Der Dice sollte nun in der Lage sein, seine aktuelle Augenzahl grafisch darzustellen.
master
Zocker1999NET 9 years ago
parent 02c69ee90a
commit a19ba5443d

@ -49,18 +49,40 @@ public class Dice extends GUI_Interface {
return number;
}
/**
Zeichnet auf dem gegebenen GreenfootImage ein Oval an der gegebenen Stelle multipliziert mit der einheitlichen Größ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.
*/
public void redraw() {
// einheitliche Größe X und Y
int eX = (int) Math.Round(sx/7);
int eY = (int) Math.Round(sy/7);
// Punktgröße X und Y
int pX = eX*2;
int pY = eY*2;
// einheitliche Größe X und Y (ein Vierzehntel der gesamten Breite und Höhe)
int eX = (int) Math.Round(sx/8);
int eY = (int) Math.Round(sy/8);
// Vereinfachung für die Augenzahl
int a = number;
GreenfootImage i = new GreenfootImage(sx,sy);
i.setColor(new java.awt.Color(0,0,0,0));
i.clear();
i.setColor(backC);
i.fillShape(0,0,sx,sy,eX/2,eY/2);
i.setColor(foreC);
if(a==1||a==3||a==5) { //Mittlerer Punkt
fO(i,eX,eY,3,3);
} else if(a>1) { //Punkte links-oben und rechts-unten
fO(i,eX,eY,1,1);
fO(i,eX,eY,5,5);
} else if(a>3) { //Punkte links-unten und rechts-oben
fO(i,eX,eY,1,5);
fO(i,eX,eY,5,1);
} else if(a>5) { //Punkte links-mitte und rechts-mitte
fO(i,eX,eY,1,3);
fO(i,eX,eY,5,3);
}
setImage(i);
}
}
Loading…
Cancel
Save