N
Nulpe12345
Gast
Folgende Methode soll in meinem Spiel Stück für Stück den Lebensbalken (hier als farbiges JTextPane dargestellt) bis auf den neuen Wert reduzieren. Leider aktualisiert die Funktion die Breite des Lebensbalken erst nachdem die ganze Funktion abgelaufen ist und nicht alle 50ms...
Java:
public void lebensbalkenHPAbziehenLangsam(JTextPane lebensbalken, double lebenAlt, double lebenNeu) {
final int intervall = 50; //Anzahl der Schritte
Double stueck = (lebenAlt - lebenNeu) / new Double(intervall); //Breitenabzug pro Schritt
for(int i=0;i<intervall;i++) {
lebensbalken.setBounds(lebensbalken.getX(), lebensbalken.getY(), lebensbalken.getWidth() - stueck.intValue() , lebensbalken.getHeight()); //Zieht von der alten Breiten "stueck" ab
try {
Thread.sleep(50);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}