Ich habe zwei Funktionen die ich Testhalber auf die Notwendigsten Dinge Kastriert habe. Die liest die Daten ein und die andere schreibt sie. Die Entstandene Datei ist trotz vorhandener Werte 0 KB groß und beim Lesen der Daten schmeißt mich der Compiler ohne Fehlermeldung aus dem Programm.
Was mach ich falsch???
Quote
// Diese Funktion Liest die Daten einer Map
FUNCTION loaddata:
IF OPENFILE (1,mapname$+".map",0)
//READWORD 1,MaxTX;READWORD 1,MaxTY;READWORD 1,TS
// FILESEEK 1,100,0 // Ab Pos 100 folgen die Map Infos
FOR i=0 TO 80
FOR ii=0 TO 80
READWORD 1,info0%
READWORD 1,info1%
READWORD 1,info2%
quad[ii]- =info0%
quad[ii][1]=info1%
quad[ii][2]=info2%
NEXT
NEXT
CLOSEFILE 1
ENDIF
ENDFUNCTION
// Diese Funktion Speichert die Daten einer Map
FUNCTION savedata:
IF OPENFILE (1,mapname$+".map",0)
//WRITEWORD 1,MaxTX;WRITEWORD 1,MaxTY;WRITEWORD 1,TS
// FILESEEK 1,100,0 // Ab Pos 100 folgen die Map Infos
FOR i=0 TO 80
FOR ii=0 TO 80
info0%=quad[ii]
info1%=quad[ii][1]
info2%=quad[ii][2]
WRITEWORD 1,info0%
WRITEWORD 1,info1%
WRITEWORD 1,info2%
NEXT
NEXT
CLOSEFILE 1
ENDIF
ENDFUNCTION
Was mir gleich auffällt. Du machst zweimal schreiben:
OPENFILE (1,mapname$+".map",0)
Die 0 oder False hinten ist schreiben. 1 oder True ist lesen.
Also für schreiben:
OPENFILE (1,mapname$+".map",0)
und für lesen:
OPENFILE (1,mapname$+".map",1)
Steht aber in der Hilfe. ;)
Cheers
Alles klar
Das kommt davon wenn man den ersten code kopiert und beim nächsten wieder einfügt... das habe ich übersehen obwohl es mir klar war... Danke Dir für die Hilfe.
Es funzt mittlerweile optimal...