示例#1
0
  public void update(Observable o, Object arg) {
    repaint();

    if (arg == null) return;
    if (arg.equals("winner")) {
      JOptionPane.showMessageDialog(null, "Le " + ((Joueur) o).nom() + " remporte la partie");
      JOptionPane.showMessageDialog(null, "Fin de la partie");
    } else if (arg.equals("argent")) pc.refresh();
    else if (arg.equals("suivant"))
      JOptionPane.showMessageDialog(null, "Au tour du joueur suivant");
    else if (arg.equals("elimine"))
      JOptionPane.showMessageDialog(null, "Le " + ((Joueur) o).nom() + " est éliminé de la partie");
    else {
      if (arg instanceof TirerDes) {
        TirerDes e = (TirerDes) arg;
        JOptionPane.showMessageDialog(null, "Vous avez fait : " + e.tir1() + ".");
        if (e.tirDouble() != 0)
          JOptionPane.showMessageDialog(
              null, "Double ! Vous allez aussi avancer de : " + e.tirDouble() + " cases.");
      } else if (arg instanceof TirerCarte)
        JOptionPane.showMessageDialog(
            null, "Vous tirez : \"" + ((TirerCarte) arg).carte().nom() + "\"");
      else if (arg instanceof Emprisonner) JOptionPane.showMessageDialog(null, "Allez en prison !");
      else if (arg instanceof PayerImpot && !((PayerImpot) arg).destinataire().equals(m.courant()))
        JOptionPane.showMessageDialog(null, ((PayerImpot) arg).nom());
      else if (arg instanceof Depenser)
        JOptionPane.showMessageDialog(null, "Vous dépensez : " + ((Depenser) arg).somme() + "F");
      else if (arg instanceof Recette)
        JOptionPane.showMessageDialog(null, "Vous gagnez : " + ((Recette) arg).somme() + "F");
      else if (arg instanceof Achat && ((Achat) arg).peutPayer())
        JOptionPane.showMessageDialog(null, "Vous dépensez : " + ((Achat) arg).somme() + "F");
      else if (arg instanceof Achat && !((Achat) arg).peutPayer())
        JOptionPane.showMessageDialog(null, "Vous ne possédez pas assez d'argent");
      else if (!(arg instanceof DeplacementRelatif
          || arg instanceof Deplacement
          || arg instanceof Choix
          || arg instanceof Depenser
          || arg instanceof Carte
          || arg instanceof PayerImpot)) JOptionPane.showMessageDialog(null, arg.toString());
    }
  }