V
VoodooFan
Gast
Hi, ich bin noch recht neu hier.
Hier sind ein paar Code-Schnipsel von mir.
Ich wuerde es gerne so haben, dass bei jedem einzelnden Durchlauf
der for-Schleife in Zeile 10, neu gezeichnet wird.
Ich habs mit einem repaint() in Zeile 17 versucht,
aber irgendwie bringt dass nichts.
Es wird immer nur das "Endergebnis" gezeichnet,
aber eben nicht die gewuenschten Zwischenschritte.
Naja alles recht schwer zu beschreiben, ich hoffe ihr wisst was ich meine,
wenn nicht, fragt einfach nach.
Danke im Voraus!
Hier sind ein paar Code-Schnipsel von mir.
Ich wuerde es gerne so haben, dass bei jedem einzelnden Durchlauf
der for-Schleife in Zeile 10, neu gezeichnet wird.
Ich habs mit einem repaint() in Zeile 17 versucht,
aber irgendwie bringt dass nichts.
Es wird immer nur das "Endergebnis" gezeichnet,
aber eben nicht die gewuenschten Zwischenschritte.
Naja alles recht schwer zu beschreiben, ich hoffe ihr wisst was ich meine,
wenn nicht, fragt einfach nach.
Danke im Voraus!
Code:
public void starteKI()
{
for(int i=0; i<=spieleranzahl;i++)
{
runde_von_spieler=i;
rundenfortschritt=1;
eigene_systeme[i]=0;
for(int j=0; j<sternen_menge;j++)
{
ausgewaehltes_system=j;
if(stern_besitzt_spieler[j]==i)
{
eigene_systeme[i]++;
}
repaint();
}
}
}
public void paint(Graphics g)
{
if(sternenkarte==null||aktualisieren==true)
{
sternenkarte=createImage(breite,hoehe);
sBuffer=(Graphics2D)sternenkarte.getGraphics();
sBuffer.setColor(Color.black);
sBuffer.fillRect(0,0,breite,hoehe);
if(aktualisieren==true)
{
aktualisieren=false;
}
}
if(buffer==null){
buffer=createImage(this.getSize().width,this.getSize().height);
gBuffer=(Graphics2D)buffer.getGraphics();
}
gBuffer.setColor(Color.black);
gBuffer.fillRect(0, 0, breite, hoehe);
gBuffer.drawImage(sternenkarte,0,0,this);
if(rundenfortschritt==1)
{
gBuffer.drawString("Ueberpruefe Sternensysteme auf Besitzer...",5,37);
}
g.drawImage(buffer,0,0,this);
try{Thread.sleep(100);}
catch(InterruptedException e){}
}