final long boundary = bitStream.getReadBoundary();
final int spriteId = bitStream.readUI16();
final int frameCount = bitStream.readUI16();
final List<ITag> spriteTags = new ArrayList<ITag>();
ITag spriteTag;
do
{
spriteTag = nextTag();
if (spriteTag != null && spriteTag.getTagType() != TagType.End)
spriteTags.add(spriteTag);
}
while (spriteTag == null || spriteTag.getTagType() != TagType.End);
bitStream.setReadBoundary(boundary);
DefineSpriteTag sprite = new DefineSpriteTag(frameCount, spriteTags);
sprite.setCharacterID(spriteId);
return sprite;