Also bei Records ist es ganz einfach: Du erstellst parallel zur Klasse noch einen Record mit den gleichen Variablen wie die Klasse nur ohne Methoden und speicherst den dann in ein File.
Bei Vergiftung usw. musst du das halt dann anders machen:
Poisoned, Frozen, Burning: Boolean;
PoisonDamage, PoisonTime, FrozenTime, BurnTime: Cardinal; //(in ms)
Du kannst natürlich einen Grundcharakter erstellen und dann noch THaendler usw. Aber nicht sowas in der Art, dass jeder Charakter in deiner Welt eine eigene Klasse hat, das gibt ein Chaos. Kannst ihm ja noch userdefined Variablen geben.
Eine Idee für Quests habe ich auch:
Delphi-Quellcode:
type
TQuest = class
public
Status=(qsUnknown,qsAccepted,qsDenied,qsSolved,qsFailed);
UserDefined1, UserDefined2, UserDefined3, UserDefined4...UserDefined10: Integer; //Questabhängig
end;
Bei TCharacter kannst du noch die Variable AttackTarget: ^TCharacter; hinzufügen.