![]() |
Objekt und Filestream... Wie Passt Daaas???
Delphi-Quellcode:
Das ganze gehört in ein Spiel und soll einen Raum laden
var fs:TFileStream;
begin Raum.Short:='Caravan'; Raum.Long.Text:='Ein ziemlich abgenutzter Caravan'; try begin fs:=TFileStream.Create(dir+'\data\rooms\caravan.ro', fmCreate or fmShareDenyNone); fs.Write(Raum, SizeOf(Raum)); end; finally fs.Free; end; Raum.Short:=''; Raum.Long.Text:=''; try begin fs:=TFileStream.Create(dir+'\data\rooms\'+Figur.LOC, fmOpenRead or fmShareDenyNone); fs.Read(Raum, SizeOf(Raum)); end; finally fs.Free; end; end; Ausgabe.Text:=Raum.Short +#13#10+#13#10 +Raum.Long.Text+#13#10+#13#10 +Ausgabe.Text; (Zumindest diese Funktion des Raum-Ladens testen, aber im Memofeld'Ausgabe' steht nach Ausführen dieses Codes gar nichts, bis auf 4 Zeilenumbrüche...) :kotz: Aber wie zum Teufel lädt man ein Objekt richtig aus einer Datei? Und wie zum Teufel speichert man ein Objekt richtig in eine Datei? Mein Raum-Objekt sieht folgendermaßen aus:
Delphi-Quellcode:
type TRaum=class
Short:string; //Beschreibungen Long, Trigger_Info, Give_Info:TStringList; //1=Norden //2=Osten //3=Süden //4=Westen Exit_true:array[1..4]of boolean; Exit:array[1..4]of string[255]; IsNPC:boolean; NumNPCs:ShortInt; NPC:array[1..10]of string[255]; NPCList:TStringList; IsMonsterLock:boolean; MonsterLock:string[255]; constructor Create; procedure GoExit(Ausgang:integer; Raum:TRaum; Ausgabe:TMemo; Go:array of Tleer_Button); procedure GetNPC; procedure GoIn(Raum:TRaum; Ausgabe:TMemo; Go:array of Tleer_Button); function Kampf(Enemy:string):boolean; function SearchString(SearchIn:String; SearchFor:TStringList):TIntBool; function Analyze_Input(Input:string):string; //Rückgabewert=Output end; Für weitere (detailliertere) Fragen zu meinem Problem bin ich immer offen :coder: |
Re: Objekt und Filestream... Wie Passt Daaas???
So geht das mal nicht.
Du musst schon jede Variable selber speichern. Am besten ist, du machst dir im dem Raum zwei Methoden die alle Variablen in einen Stream speichern bzw. laden. Ich habe zwar ![]() Ich bin zwar grad dabei eine Klasse zu schreiben, von der man dann ableiten kann, die dann schon eine speichern und laden Methode mitbringt. Aber mir fehlt grad die Zeit das zu Ende zu bringen. |
Re: Objekt und Filestream... Wie Passt Daaas???
Ich werde das so schreiben, dass ich eine speichern/laden Methode implementiere, die über einen temporären Record läuft.
Die StringListen kann ich dann ja per loadfrom/savetofile direkt in diesen Methoden speichern ________________________________ :coder: *bääääääääääm* |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz