А зачем, собственно, спрайт? Их можно хранить в динамических объектах.

Код AS3:
var obj:Object = {};
obj.data = { num: 12};
Ну или расширить спрайт сделав класс динамическим:

Код AS3:
package {
import flash.display.Sprite;
public dynamic class DynamicSprite extends Sprite {
public function DynamicSprite() {
this.data = { num: 12 };
}
}
}
Или вообще добавить туда сеттер, который будет записывать нужные свойства в объект, а геттер их возвращать