In deinem Spiel hast du sowas:
C-/C++-Quelltext
|
C-/C++-Quelltext
|
1
2
3
4
5
|
class Enemy
{
private:
Enemy* wingman; // anderer Gegner, mit dem dieser hier kooperiert
};
|
Wie speicherst du sowas?
Eine Lösung ist sicher, in eine Klasse eine Serialisierungsmethode einzubauen und diese dann über die eigene Membervariablen laufen zu lassen, um deren Werte in die Datei zu schreiben. Sollte man dabei auf einen Pointer treffen, kann man wiederum dessen Serialisierungsmethode aufrufen. Wenn man die Werte dabei nicht gleich in die Datei schreibt, sondern in eine Speicherstruktur, die die korrekte Sortierung für das Savegamedateiformat vornimmt und entsprechende Referenzen (ID, String) an der Stelle einträgt an der der Pointer gespeichert wurde, dann dürfte damit das Speichern solcher Objekte recht gut funktionieren, mal abgesehen davon das sich garantiert mein erwähntes Vorgehen bezüglich Speicherverbrauch und Performance verbessern läßt.
@Thoran: Ja das ist eine gute Idee. Doch daran hindert mich wxWidgets... Ich wüsste nicht wie ich das grafisch darstellen soll. Kann ich mal sehen wie es bei dir ist?
Ich verwendet C++/Qt für meinen Editor was bereits Klassen für solche Graphen beinhaltet. Damit ist es relative einfach so einen Editor zu schreiben. Aussehen tut das ganze dann so wie im Anhang.
Wenn es dich weiter interessiert, dann kannst du dazu auch auf meinem Blog(
Editor/
FSM) lesen, was ich alles so während der Entwicklung getan habe.
Thoran