int vectorId(TypeDescription::GetTypeId("Vector"));
TypeDescription &td(TypeDescription::CreateOrGet("PartyLayout"));
+ td.SetDescription("Positions of party members");
+ td.SetConstructor(&Construct);
td.SetSize(sizeof(PartyLayout));
- td.AddField("positions", FieldDescription(((char *)&p.positions) - ((char *)&p), vectorId, true, true));
+ td.AddField("positions", FieldDescription(((char *)&p.positions) - ((char *)&p), vectorId).SetReferenced().SetAggregate().SetDescription("the members' positions"));
+}
+
+void PartyLayout::Construct(void *data) {
+ new (data) PartyLayout;
}
}