package spiel;

import java.util.Vector;
import java.io.Serializable;

/**
 * Ein Spielverlauf, den der Server registriert
 *
 * @version 1.2
 * @author ProgPrak-Team
 */

public final class Spielverlauf implements Serializable {

    // für Serialisierung
    private static final long serialVersionUID = 12L;

    private Spiel ausgangsspiel;
    private Vector<Serverzug> zuege;
    private boolean vorzeitigBeendet;
    private boolean[] sieger;
    private String beschreibung;

    public Spielverlauf() {}

    /** die Ausgangssituation der Spielpartie */
    public void setAusgangsspiel(Spiel ausgangsspiel) {
	this.ausgangsspiel = ausgangsspiel;
    }
    
    public Spiel getAusgangsspiel() { return ausgangsspiel;}

    /** alle Züge aus Sicht des Servers */
    public void setZuege(Vector<Serverzug> zuege) { this.zuege = zuege;}

    public Vector<Serverzug> getZuege() { return zuege;}

    /** ob die Partie vom Server abgebrochen wurde */
    public void setVorzeitigBeendet(boolean vorzeitigBeendet) {
	this.vorzeitigBeendet = vorzeitigBeendet;
    }

    public boolean getVorzeitigBeendet() { return vorzeitigBeendet;}

    /** zu jedem Mitspieler, ob er einer der Sieger ist */
    public void setSieger(boolean[] sieger) { this.sieger = sieger;}

    public boolean[] getSieger() { return sieger; }

    /** eine Beschreibung, die der Client produzieren kann */
    public void setBeschreibung(String beschreibung) {
	this.beschreibung = beschreibung;
    }

    public String getBeschreibung() { return beschreibung;}

}
