Thema: Delphi OOP und RPG

Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#11

Re: OOP und RPG

  Alt 3. Nov 2005, 21:30
Na ja, die Idee hinter dem Vererben ist es natürlich, dass du dem Grundcharakter erstmal alle sehr allgemeinen Eigenschaften zuweist (e.g. Name, Aussehen, Job, ...).
Dann erben von denen die Spezielleren Charaktere, die haben (dadurch dass sie den allgemeinsten beerben schon all dessen Eigenschaften). Alle erbenden werden dann weiter unterteilt in speziellere Erben. So könntest du von ganz Allgemein Charakter (mit Name, Aussehen und Job) eine Klasse NPC und eine Klasse Characters ableiten. Dann hat ein NPC also auch einen Namen, einen Job und ein Aussehen. Das wird sicher auch jeder Character haben. Doch wird ein NPC wohl eher nie krank und wenn er in Ruhe in seinem Haus sitzt interessieren dich wohl auch die LPs weniger.
Den Characters könntest du noch weitere Eigenschaften geben (Lebenspunkte, Mana, Gegenstände, was weiß ich...).

Beim Abspeichern musst du dir nur überlegen, wie du alles am besten ablegen (und wieder laden) kannst. Meine damit garnicht, dass du dir überlegen sollst ob nun IniFile, XML oder Records (wie speichert man denn die direkt?). Sondern vielmehr welche Daten du hast und wie man die am besten Strukturiert. Du kannst zum Beispiel in einer zip-Datei (mit eigener Erweiterung != .zip) mehrere Dateien anlegen. In einer speicherst du dann nur, was zu deinem Avatar gehört, in ner anderen die erfüllten Quests oder so...
Zum Speichern, letztlich ist ein Stream nur ein sehr einfaches Modell. Du streamst (wer hätte das Gedacht) einfach ein paar Bytes weg. Wo die hingehen wird durch den Stream komplett abstrahiert. Könnte ein Netzwerk sein, eine File oder was ganz anderes. Sehr Flexibel, aber halt eher low-level. Also beim Laden hast du dann nur Bytes und musst dir halt vorher ne Struktur überlegen, wo was liegt. Aber beim Speichern und Laden von eigenen Daten kommst du da eh weniger drum rum. Also heißt es erstmal die Struktur zum Laden/Speichern überlegen. Was muss gespeichert werden? Wie kann man das flexibel halten (weitere Daten hinzufügen, alte entfernen...)
  Mit Zitat antworten Zitat