From Test-Scratch-Wiki
This article or section documents a feature not included in the current version of Scratch (3.0). It is only useful from a historical perspective. |
The ScriptableScratchMorph
class is a Squeak Morphic class which returns a Scratch object: either a sprite or the stage.
Declaration
The ScriptableScratchMorph
is a subclass of Morph
, and is declared under Scratch-Objects
in the System Browser. The declaration is as follows:
Morph subclass: #ScriptableScratchMorph instanceVariableNames: 'objName vars lists blocksBin isClone media costume costumeChangeMSecs filterPack visibility volume tempoBPM sceneStates ' classVariableNames: 'BlockColorDict BlockSpecDict DefaultBackgroundForm DefaultSpriteForm DoubleSize Experimental ListBlockColor MeowSound OldMeowPrefixReversed PopSound RandomGen Recorder ScratchOrigin TimerStartMSecs ' poolDictionaries: '' category: 'Scratch-Objects'
Instance Variables
The instance variables of ScriptableScratchMorph
are:
Note: | Here, "object" refers to a sprite or the stage. |
objName
: The title of the objectvars
: The variables of an objectlists
: The lists of an objectblocksBin
: The blocks of an objectisClone
: Is an object a clone of another (obsolete as of Scratch 1.4)media
: Associated media like sounds and costumescostume
: Costume NumbercostumeChangeMSecs
:filterPack
: The graphical effects on the object put by the Graphical filter block.visibility
: Is the object hiddenvolume
: The Volume of the objecttempoBPM
: The Tempo of the object in beats per minute (BPM)sceneStates
:
Subclasses
The two subclasses are ScriptableSpriteMorph
and ScriptableStageMorph
, dictating sprites and the stage, respectively. They need to be different as the stage has limited functionality as compared to sprites; for example, the stage has no motion blocks. The parent class always contains the common properties, for example the common "clear" block.
ScriptableSpriteMorph
Declaration
ScriptableSpriteMorph
is a subclass of ScriptableScratchMorph
, and dictates a sprite. Its declaration is:
ScriptableScratchMorph subclass: #ScratchSpriteMorph instanceVariableNames: 'scalePoint rotationDegrees rotationStyle rotatedForm offsetWhenRotated draggable penDown penSize penColor penHue penShade ' classVariableNames: '' poolDictionaries: '' category: 'Scratch-Objects'
ScriptableStageMorph
Declaration
ScriptableStageMorph
is a subclass of ScriptableStageMorph
, and dictates a stage. Its declaration is:
ScriptableScratchMorph subclass: #ScratchStageMorph instanceVariableNames: 'zoom hPan vPan penTrailsForm lastPenPositions runningBlocks inProcessStep sensorBoard midiPortNum midiPort notePlayerDict obsoleteSavedState sprites scratchServer isQuarterSize cachedForm showMotorBlocks ' classVariableNames: '' poolDictionaries: '' category: 'Scratch-Objects'