package org.pixelgaffer.turnierserver.codr; import java.io.File; import javafx.beans.property.ObjectProperty; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.scene.image.Image; import org.apache.commons.lang.NotImplementedException; /** * Grundklasse für KIs * * @author Philip */ public class AiBase { public final String title; public final AiMode mode; public String gametype; public String language; public String description = "(keine Beschreibung)"; public ObservableList<Version> versions = FXCollections.observableArrayList(); public static enum AiMode { saved, online, simplePlayer, extern, fake } public static enum NewVersionType { fromFile, simplePlayer, lastVersion } /** * Erstellt eine neue Ai * * @param tit der übergebene Titel */ protected AiBase(String tit, AiMode mmode) { title = tit; mode = mmode; gametype = MainApp.actualGameType.get(); } /** * gibt die neueste Version oder null zurück * * @return gibt null zurück, wenn es keine Version gibt */ public Version lastVersion() { if (versions.size() > 0) { return versions.get(versions.size() - 1); } else { return null; } } /** * Gibt das gespeicherte Bild des Spielers zurück. * * @return das gespeicherte Bild */ public ObjectProperty<Image> getPicture() { throw new NotImplementedException(); } /** * Speichert das Bild des Spielers in der Datei picture.png. * * @param img das zu speichernde Bild */ public void setPicture(Image img) { throw new NotImplementedException(); } /** * Speichert das Bild des Spielers in der Datei picture.png. * * @param img das zu speichernde Bild */ public void setPicture(File file) { throw new NotImplementedException(); } /** * damit die Ai-Liste richtig angezeigt wird */ public String toString() { return title; } }