Innanzitutto dal punto di vista dell'approccio in generale non vedo nulla di palesemente sbagliato. Insomma, il concetto mi pare ok.Originariamente inviato da elio86
mi sapreste dire cosa sbaglio in questo codice? Non riesco a capire il problema...PS:EHEHEH SCUSATE SONO SEI IMMAGINI xD
Se le immagini sono 6, allora:
1) l'array va istanziato di 6 elementi (non 5).
2) nel ciclo di caricamento la condizione deve essere i<6 (non i<5)
3) nel test per far fare il "giro" va testato che frame == 6 (non == 5)
Dal punto di vista generale invece:
a) Non è necessario fare l'override di update(). Già il update(Graphics g) di java.awt.Component invoca paing(g)
b) Una questione molto "fine" sui thread. La variabile 'frame' è acceduta da 2 thread differenti. Motivo per cui l'accesso dovrebbe essere "sincronizzato". Senza sincronizzazione non c'è alcuna garanzia, nel senso che potrebbe funzionare o non funzionare. Quindi si dovrebbe fare es. un metodo synchronized void incrementaFrame() per incrementare e un metodo synchronized int getFrame() per prendere il valore.