Also ich habe hier mal mein Quell-Code vom Verlauf:
[]code[]
import java.io.Serializable;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.i
bjectOutputStream;
import java.i
bjectInputStream;
import java.io.IOException;
public class Verlauf implements Serializable{
private static final long serialVersionUID = 1;
private Zug history;
private Zug first=null;
public Verlauf(){
Zug history = null;
}
public void back(Schachbrett B){
//Wenn es keinen Vorherigen Zug gab abbrechen.
if(history==first)return;
B.figur[history.getStartco().getX()][history.getStartco().getY()]=B.figur[history.getZielco().getX()][history.getZielco().getY()];
if (history.getHit()&&B.nextout>0) {
B.figur[history.getZielco().getX()][history.getZielco().getY()]=B.out[B.nextout-1];
//Brett mit rausgestellten Figuren säubern
B.out[B.nextout-1]=null;
if (B.nextout>0) B.nextout--;
}
else B.figur[history.getZielco().getX()][history.getZielco().getY()]=null;
history = history.getprev();
}
//Methode Hinzufügen
public void add(byte a, byte b, Koordinaten c, Koordinaten d, boolean ifhit){
history = new Zug( a, b, c, d, history, ifhit);
if(first == null){first = history;}
}
public boolean firstzug(){
if (history ==first)return true;
return false;
}
public Zug getnext(){
return history.getnext();
}
public Zug getprev(){
return history.getprev();
}
public byte getId(){
return history.getId();
}
public int length(){
return history.length();
}
public Koordinaten getStartco(){
return history.getStartco();
}
public Koordinaten getZielco(){
return history.getZielco();
}
public boolean idMoved(byte id){
Zug d = new Zug();
for( d = history; d.getprev() != null; d = d.getprev()){
if(id==d.getId()){return true;}
}
return false;
}
//Methode Ausgabe
public String print (){
String verl = "";
Zug e = first;
for(Zug f = e; f != history.getnext(); f = f.getnext()){
verl = verl + (("\n"+Output.idToFigur(f.getId())+" "+Output.coords(f.getStartco().getX(),f.getStartco().getY())+" "+((f.getHit()==true)?("schlägt " + Output.idToFigur(f.getId())): ("->"))+" "+Output.coords(f.getZielco().getX(),f.getZielco().getY())));
}
return verl;
}
}
[/]code[]
Kannst du mir ein Beispiel daraus schreiben, ich blicks irgend wie nicht, habe auch gelesen das nicht alles serialisierbar ist. Und es sollte eine art eigene Speicherklasse sein, das ganze wird über JCurses also Konsolenanwendung mit 8 Farben über eine Menüleiste ausgewählt.