Die Properties werden in einer Datei namens
,,hamster.properties`` definiert, die sich in dem Ordner befinden muss, wo sich auch
die Dateien ,,hamstersimulator.jar`` bzw. ,,hamstersimulator.bat`` befinden. Momentan sind folgende
Properties möglich:
- security: Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem folgenden Text security=false, wird der
so genannte Security-Manager ausgeschaltet. Das bedeutet, Hamster-Programme dürfen auf die
Festplatte zugreifen und dürfen Dateien lesen und in Dateien schreiben.
Aber Vorsicht, sollten sie diese
Option gesetzt haben, empfehle ich Ihnen dringend, keine fremden Hamster-Programme auszuführen.
Sind diese bspw. böswillig geschrieben, könnten sie Ihnen prinzipiell die gesamte Festplatte
löschen.
Standardmäßig steht in der Property-Datei security=true.
Durch Setzen der security-Property auf false ist es bspw.
möglich, aus Hamster-Programmen heraus Sounds abzuspielen.
Im folgenden Hamster-Programm wird ein Sound aus der angegebenen Datei
abgespielt, während der Hamster zur Mauer läuft:
void main() {
try {
java.io.File f = new java.io.File( "C:\\fanfare.wav" );
java.applet.AudioClip audioClip =
java.applet.Applet.newAudioClip(f.toURL() );
audioClip.play();
} catch (Exception exc) { }
while (vornFrei()) vor();
}
- workspace: Standardmäßig erscheint im Dateibaum als oberster Ordner ein Ordner names
Programme, der so genannte Workspace-Ordner.
Er repräsentiert den Unterordner Programme des Ordners, in dem sich
die Dateien ,,hamstersimulator.jar`` bzw. ,,hamstersimulator.bat`` befinden.
In diesem Ordner werden alle Hamster-Programme und Hamster-Territorien abgespeichert.
Durch Setzen der Property workspace3 kann ein anderer Ordner als Workspace-Ordner festgelegt werden.
Befindet sich in der Datei eine Zeile, die mit dem Text workspace= beginnt, wird der
dahinter angegebene Ordner als Workspace-Ordner gesetzt, bspw.
workspace=C:/Dokumente und Einstellungen/karl oder
workspace=C:/Dokumente und Einstellungen/heidi/Eigene Dateien oder
workspace=../test oder
Der angegebene Ordner muss existieren und er muss lesbar und beschreibbar sein!
Achten Sie bitte darauf, dass in dem Ordner-Namen keine Sonderzeichen vorkommen (bspw. ein
Ausrufezeichen), da die einige Java-Versionen nicht damit zurecht kommen.
Für Windows-Nutzer ist es wichtig zu wissen, dass die
-Zeichen in den Ordner-Namen
durch ein /-Zeichen ersetzt werden müssen.
Standardmäßig steht in der Property-Datei workspace=Programme.
Wenn Sie den Workspace-Ordner verändern und mit Paketen arbeiten, muss im CLASSPATH
anstelle von ,,Programme`` der String angegeben werden, den Sie der Property workspace
zugewiesen haben, also bspw.
oder
.
- scheme: Über die Property ,,scheme`` kann die Fähigkeit des Hamster-Simulators Scheme-Programme zu entwickeln bzw. auszuführen
ein- bzw. ausgeschaltet werden (siehe Abschnitt 7).
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text scheme=false, ist der Scheme-Modus ausgeschaltet.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text scheme=true, ist der Scheme-Modus eingeschaltet.
Standardmäßig ist der Scheme-Modus eingeschaltet.
- runlocally: Über die Property ,,runlocally`` kann eingestellt werden, ob die Ausführung eines Hamster-Programms in einer neuen JVM
oder in der JVM des Hamster-Simulators erfolgen soll.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text runlocally=false, werden Hamster-Programme in einer neuen JVM
ausgeführt. Standardmäßig ist dies der Fall.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text runlocally=true, werden Hamster-Programme in derselben JVM
wie der Hamster-Simulator selbst ausgeführt.
Normalerweise muss man sich nicht um dieses Property kümmern. Leider kam es jedoch bei einigen Macintosh- und Linux-Nutzer zu dem Problem,
dass beim Starten eines Hamster-Programms Fehler auftraten oder sich der Start der Ausführung um viele Sekunden verzögerte. Im runlocally-Modus
true kann das nicht mehr passieren. Nachteile dieses Modus: Eine Nutzung des Debuggers ist nicht möglich. Auch die Nutzung des
CLASSPATH ist nicht möglich (siehe Kapitel 14 von Band 2 des Java-Hamster-Buches).
- language: Über die Property ,,language`` kann die Sprache des Hamster-Simulators eingestellt werden.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text language=de, ist als Sprache Deutsch eingestellt. Das ist der Standard.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text language=en, ist als Sprache Englisch eingestellt.
Weitere Infos zu englischen Hamster-Programmen siehe auch in Abschnitt 6.
- indent: Über die Property ,,indent`` kann eingestellt werden, ob im Editor beim Zeilenumbruch die Cursorposition in der neuen Zeile
anhand der ersten beschriebenen Spalte der vorhergehenden Zeile ausgerichtet wird.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text indent=true, ist die Spaltenausrichtung eingeschaltet. Das ist der Standard.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text indent=false, ist die Spaltenausrichtung ausgeschaltet.
- color: Über die Property ,,color`` kann die Farbe des Standard-Hamsters geändert werden. Voreingestellt ist BLAU.
Möglich sind folgende Farben: BLAU, BLUE, ROT, RED, GRUEN, GREEN, GELB, YELLOW, CYAN, MAGENTA, ORANGE, PINK, GRAU, GRAY, WEISS und WHITE.
Weiterhin wurde für objektorientierte Programme in der Klasse Hamster ein zusätzlicher Konstruktor eingeführt,
bei dem als fünften Parameter die Farbe des Hamsters angegeben werden kann. Die Klasse Hamster stellt hierfür
entsprechenden Konstanten zur Verfügung:
public final static int BLAU = 0;
public final static int BLUE = 0;
public final static int ROT = 1;
public final static int RED = 1;
public final static int GRUEN = 2;
public final static int GREEN = 2;
public final static int GELB = 3;
public final static int YELLOW = 3;
public final static int CYAN = 4;
public final static int MAGENTA = 5;
public final static int ORANGE = 6;
public final static int PINK = 7;
public final static int GRAU = 8;
public final static int GRAY = 8;
public final static int WEISS = 9;
public final static int WHITE = 9;
// neuer zusaetzlicher Konstruktor
public Hamster(int reihe, int spalte,
int blickrichtung, int anzahlKoerner,
int farbe)
- 3D: Über die Property ,,3D`` kann das 3D-Simulationsfenster ein- oder ausgeschaltet werden (siehe Abschnitt 4.7).
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text 3D=false, ist der 3D-Modus ausgeschaltet.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text 3D=true, ist der 3D-Modus eingeschaltet.
Standardmäßig ist der 3D-Modus eingeschaltet.
- lego: Über die Property ,,lego`` kann der Lego-Modus ein- oder ausgeschaltet werden.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text lego=false, ist der Lego-Modus ausgeschaltet.
Befindet sich in der Datei ,,hamster.properties`` eine Zeile mit dem Text lego=true, ist der Lego-Modus eingeschaltet.
Standardmäßig ist der Lego-Modus ausgeschaltet. Die Möglichkeit, über den Hamster-Simulator einen Lego-Mindstorms-Roboter
zu steuern, wird erst in Version 2.6 des Hamster-Simulators erläutert.