00001 package dionarap; 00002 00003 import javax.swing.ImageIcon; 00004 import javax.swing.JOptionPane; 00005 00006 import de.fhwgt.dionarap.model.events.DionaRapChangedEvent; 00007 import de.fhwgt.dionarap.model.events.GameStatusEvent; 00008 import de.fhwgt.dionarap.model.listener.*; 00009 00018 public class ListenerModel implements DionaRapListener { 00019 private Hauptfenster hf; 00020 00021 public ListenerModel(Hauptfenster hf) { 00022 this.hf = hf; 00023 } 00024 00025 00026 @Override 00027 public void modelChanged(DionaRapChangedEvent e) { 00028 this.hf.updateGame(GameStatus.game); 00029 } 00030 00031 @Override 00032 public void statusChanged(GameStatusEvent e) { 00033 if (e.isGameWon()) { 00034 this.hf.updateGame(GameStatus.gamewon); 00035 this.showDialogBox("Sie haben gewonnen", Artwork.getTheme().getGameWonIcon()); 00036 } 00037 00038 if (e.isGameOver()) { 00039 this.hf.updateGame(GameStatus.gameover); 00040 this.showDialogBox("Spiel verloren", Artwork.getTheme().getGameOverIcon()); 00041 } 00042 } 00043 00044 private void showDialogBox(String message, ImageIcon icon) 00045 { 00046 JOptionPane.showMessageDialog(null, 00047 message, 00048 "Ergebnis", 00049 JOptionPane.PLAIN_MESSAGE, 00050 icon); 00051 } 00052 00053 }