Dice erweitert um Grafikengine

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

@ -49,18 +49,40 @@ public class Dice extends GUI_Interface {
return number; 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. Erneuert die Darstellung des Würfels.
*/ */
public void redraw() { public void redraw() {
// einheitliche Größe X und Y // einheitliche Größe X und Y (ein Vierzehntel der gesamten Breite und Höhe)
int eX = (int) Math.Round(sx/7); int eX = (int) Math.Round(sx/8);
int eY = (int) Math.Round(sy/7); int eY = (int) Math.Round(sy/8);
// Punktgröße X und Y // Vereinfachung für die Augenzahl
int pX = eX*2; int a = number;
int pY = eY*2;
GreenfootImage i = new GreenfootImage(sx,sy); 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