ok got a bit closer to getting the features I need to save a game
Code:
uses
rttiutils,typinfo,classes;
type
warrior =class(Tpersistent)
public
hp:integer;
warname:string;
published
property Php:integer read hp write hp;
property Pwarname:string read warname write warname;
end;
Var
O : warrior;
PT : PTypeData;
PI : PTypeInfo;
I,J : Longint;
PP : PPropList;
prI : PPropInfo;
begin
O:=warrior.Create;
PI:=O.ClassInfo;
PT:=GetTypeData(PI);
Writeln('Property Count : ',PT^.PropCount);
GetMem (PP,PT^.PropCount*SizeOf(Pointer));
GetPropInfos(PI,PP);
For I:=0 to PT^.PropCount-1 do
begin
With PP^[i]^ do
begin
Write('Property ',i+1:3,': ',name:30);
writeln(' Type: ',typinfo.PropType(O,Name));
end;
end;
FreeMem(PP);
O.Free;
end.
Bookmarks