void Stats::CreateTypeDescription() {
Stats s;
- TypeDescription &td(TypeDescription::CreateOrGet("Stats"));
-
- td.SetSize(sizeof(Stats));
int numberId(TypeDescription::GetTypeId("Number"));
+ TypeDescription &td(TypeDescription::CreateOrGet("Stats"));
+ td.SetConstructor(&Construct);
+ td.SetSize(sizeof(Stats));
+
td.AddField("atp", FieldDescription(((char *)&s.attack) - ((char *)&s), numberId, false));
td.AddField("dfp", FieldDescription(((char *)&s.defense) - ((char *)&s), numberId, false));
td.AddField("str", FieldDescription(((char *)&s.strength) - ((char *)&s), numberId, false));
td.AddField("mgr", FieldDescription(((char *)&s.magicResistance) - ((char *)&s), numberId, false));
}
+void Stats::Construct(void *data) {
+ new (data) Stats;
+}
+
}