package greenfoot.importer.scratch;
import java.util.ArrayList;
import java.util.List;
| A Scratch user-defined object (as opposed to an array or primitive type).
| @author neil
|
class ScratchUserObject
extends ScratchObject{
protected static final int SCRATCH_SPRITE_MORPH = 124;
protected static final int SCRATCH_STAGE_MORPH = 125;
protected static final int IMAGE_MEDIA = 162;
protected static final int SOUND_MEDIA = 164;
private int id;
private int version;
protected List<ScratchObject> scratchObjects;
public ScratchUserObject(int id, int version, List<ScratchObject> scratchObjects)
{
this.id = id;
this.version = version;
this.scratchObjects = scratchObjects;
}
@Override public ScratchObject resolve(ArrayList<ScratchObject> objects)
{
for (int i = 0; i < scratchObjects.size(); i++) {
ScratchObject scratchObject = scratchObjects.get(i);
if (scratchObject != null) {
scratchObjects.set(i, scratchObject.resolve(objects));
}
}
return this;
}
| The number of fields that this class loads from the file in total.
|
| This should usually be implemented as super.fields() + N.
|
public int fields()
{
return 0;
}
@Override
public String toString()
{
StringBuilder builder = new StringBuilder();
builder.append("ScratchUserObject [id=");
builder.append(id);
builder.append("]\n {");
for (ScratchObject o : scratchObjects) {
builder.append(o).append(",");
}
builder.append("}");
return builder.toString();
}
}
. - ScratchUserObject
. ScratchUserObject
. resolve
. fields
. toString
76 neLoCode
+ 4 LoComm