- ftd.AddField("column", FieldDescription(((char *)&fp.col) - ((char *)&fp), numberId, false));
- ftd.AddField("row", FieldDescription(((char *)&fp.row) - ((char *)&fp), numberId, false));
- ftd.AddField("disposition", FieldDescription(((char *)&fp.disposition) - ((char *)&fp), vectorId, false));
+ ftd.AddField("column", FieldDescription(((char *)&fp.col) - ((char *)&fp), Interpreter::NUMBER_ID).SetDescription("the column of the sprite that will be drawn"));
+ ftd.AddField("row", FieldDescription(((char *)&fp.row) - ((char *)&fp), Interpreter::NUMBER_ID).SetDescription("the row of the sprite that will be drawn"));
+ ftd.AddField("disposition", FieldDescription(((char *)&fp.disposition) - ((char *)&fp), Interpreter::VECTOR_ID).SetDescription("offset from the original drawing position"));
+}
+
+void ComplexAnimation::Construct(void *data) {
+ new (data) ComplexAnimation;