Das ganze war ja erst einmal ein Prototyp, ich habe das ein wenig vereinfacht (indem ich den Code verkompliziert habe) und einige Bugs gefixt. Neue Testversion kommt hier:
Dateianhang:
Dateikommentar: Version 3
vorlua.zip [93.48 KiB]
746-mal heruntergeladen
Mein neues Skript macht aus einer Serie von CRs einen Gesamt-CR, in dem die jeweils letzten Informationen einer Region stehen, es merkt sich also vor allem Ressourcen, Straßen, Luxuspreisen und Gebäuden in der Region, und CsMap zeigt die an, auch wenn ich gerade keine Einheit in der Region habe. Es gibt dafür zwei Aufrufformate.
Angenommen, ich habe ein Verzeichnis
reporte, in dem alle meine CRs vom Server liegen, und ein Verzeichnis
tools, in den ich die ZIP-Datei extrahiert habe, beide im selben
eressea Verzeichnis.
Meine Partei ist in Runde 1094 als Partei cf2t gestartet, ich habe sie danach sofort in wiki umbenannt. Einen Gesamt-CR erstelle ich dann, indem ich an der Kommandozeile in den Reporte-Verzeichnis wechsele, und von dort z.B. folgenden Aufruf mache:
Code:
..\tools\vorlua.exe main.lua import 1094-cf2t.cr ..\wiki.cr -- wiki 1095
Wörtlich: Lies die Datei 1094-cf2t.cr ein, und importiere dann die CRs der Partei wiki, beginnend mit Woche 1095. Sobald ein Report nicht gefunden werden kann, bricht das Programm mit einer Meldung ab, und speichert das Resultat unter dem Namen wiki.cr im übergeordneten Verzeichnis.
Code:
1108-wiki.cr No such file or directory
Den Report für Woche 1108 habe ich noch nicht. In folgenden Wochen möchte ich gerne diesen Report mit weiteren Reporten anreichern:
Code:
..\tools\vorlua.exe main.lua import 1094-cf2t.cr ..\wiki.cr -- wiki 1108
Dieser Befehl liest alle wiki-CRs ab Woche 1108, wieder bis es einen nicht findet.
Manchmal möchte ich meinen Report als Karte für meine Verbündeten exportieren, ohne meine Einheiten und Schiffe. Das geht mit diesem Befehl, aufgerufen aus dem übergeordneten Verzeichnis:
Code:
tools\vorlua tools\main.lua export wiki.cr map.cr
Wörtlich: Lade den Report wiki.cr, wirf alles weg, was nicht gezeigt werden soll, und schreibe eine Datei map.cr.
Der Code ist so geschrieben, dass man neue Kommandos einfach selber bauen kann, alle Logik passiert in den Lua Dateien, und die beiden Kommandos export und import sind eigene Dateien. Wenn man eigene Kommandos bauen will, z.B. um Karten ohne Gebäude zu exportieren, kann man die einfach unter einem neuen Namen kopieren (z.B.
export.lua nach
map.lua kopieren), die gewünschte Änderung vornehmen, und dann im Programmaufruf das
export durch
map ersetzen.