Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.05.2003, 17:39 Titel: Alles in eine Level Datei |
|
|
hi,
mein Game hat 3 SpielEbenen...
Ich speichere alle folgendermaßen:
int level1[200][200];
int level2[200][200];
int level3[200][200];
nun schreib ich beim Saven immer 3 level Datein, kann ich dies auch alles in eine Speichern und dann auch wieder Laden ?
wenn ja, wie ? (ein quellcode wäre hilfreich)
thx |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 09.05.2003, 18:13 Titel: |
|
|
Genauso wie mit mehreren auch... du speicherst einfach alle 3 Felder hintereinander in der Datei. Und beim Laden ließt du die Felder wieder aus, in der gleichen Reihenfolge wie beim Speichern. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.05.2003, 18:50 Titel: |
|
|
also ich schreibe nun so:
level1 w+
level2 a+
level3 a+
aber mit dem lesen krieg ich es nicht gebacken, help |
|
Nach oben |
|
|
magynhard Super JLI'ler
Anmeldedatum: 26.04.2003 Beiträge: 461 Wohnort: Wild durch die Welt ;-) Medaillen: Keine
|
Verfasst am: 09.05.2003, 19:24 Titel: |
|
|
Kommt eigentlich darauf an ob der alte Spielstand überschrieben werden soll, etc.
Ich würde mit fopen w öffnen und fwrite screiben und mit fopen r und fread lesen - reicht dazu nämlich eigentlich völlig aus. (binärcode)
Du musst halt wie im vorigen Beitrag erwähnt, die Reihenfolge beibehalten. |
|
Nach oben |
|
|
magynhard Super JLI'ler
Anmeldedatum: 26.04.2003 Beiträge: 461 Wohnort: Wild durch die Welt ;-) Medaillen: Keine
|
Verfasst am: 09.05.2003, 19:37 Titel: |
|
|
Hier so müsste das funzen - korrigiert mich falls ich mich irre
Code: |
#include <stdio.h>
void FunktionSpeichern(void)
{
FILE *Datei = fopen("save.bin", "w");
fwrite(level1,sizeof(level1[0][0]),200,Datei)
fwrite(level2,sizeof(level2[0][0]),200,Datei)
fwrite(level3,sizeof(level3[0][0]),200,Datei)
fclose(Datei)
}
void FunktionLaden(void)
{
FILE *Datei = fopen("save.bin", "r");
fread(level1,sizeof(level1[0][0]),200,Datei)
fread(level2,sizeof(level2[0][0]),200,Datei)
fread(level3,sizeof(level3[0][0]),200,Datei)
fclose(Datei)
}
|
Die void's müssen evtl. durch Parameterübergabe, je nach deinem Prog ersetzt werden - ich weiß ja nicht wie dein Programm aufgebaut ist, es geht ja um den Code.
Ich hab das noch nie verwendet, bin aber grad in Kapitel 8 und hab mich vor 5min damit beschäftigt und besitze somit schon etwas Wissen davon
Ich bin mir eigentlich ziemlich sicher das alles stimmen sollte, bis auf 200, das hab ich einfach mal aus meiner Logik so gemacht - könnte evtl. auch 200*200 sein - denke aber eher das mein code oben richtig ist
Wenn nicht, korrigiert mich. |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.05.2003, 20:36 Titel: |
|
|
dachte nicht das es so leicht wäre, thx |
|
Nach oben |
|
|
magynhard Super JLI'ler
Anmeldedatum: 26.04.2003 Beiträge: 461 Wohnort: Wild durch die Welt ;-) Medaillen: Keine
|
Verfasst am: 09.05.2003, 20:48 Titel: |
|
|
np,
aber mir fällt doch noch was auf - ich hab die Semikola hinter 8 Anweisungen vergessen |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.05.2003, 20:50 Titel: |
|
|
kann mal passieren |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
|
Nach oben |
|
|
magynhard Super JLI'ler
Anmeldedatum: 26.04.2003 Beiträge: 461 Wohnort: Wild durch die Welt ;-) Medaillen: Keine
|
Verfasst am: 10.05.2003, 10:41 Titel: |
|
|
Habe ich ja auch erwähnt |
|
Nach oben |
|
|
|