usedBlock(opcode, sprite = null)
sprite benutzt diesen Block: opcode
// Hidden -> sprite benutzt einen bestimmten Block.
Check whether a type of blocktype was used at all, optionally filtered by sprite.
Param | Type | Description |
opcode |
string |
Blocktype (e.g. "motion_gotoxy") |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– true if blocktype was executed.
usedBlock("motion_gotoxy")
usedNoBlock(opcode, sprite = null)
sprite benutzt diesen Block nicht: opcode
// Hidden -> sprite benutzt diesen Block nicht.
Checks whether a specific block type was never used, optionally filtered by sprite.
Param | Type | Description |
opcode |
string |
Blocktype (e.g. "motion_gotoxy") |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if block was never executed.
usedNoBlock("motion_gotoxy")
usedNoBlock("motion_gotoxy", "Figur1")
usedLoops(sprite = null)
sprite benutzt Schleifen.
// Hidden -> sprite benutzt Schleifen.
Checks if any loop block was used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if any loop block ran.
usedLoops()
usedLoops("Figur1")
usedNoLoops(sprite = null)
sprite benutzt keine Schleifen.
// Hidden -> sprite benutzt keine Schleifen.
Checks if no loop block was used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if no loop block ran.
usedNoLoops()
usedNoLoops("Figur1")
usedConditions(sprite = null)
sprite benutzt Verzweigungen.
// Hidden -> sprite benutzt Verzweigungen.
Checks if any conditional block was used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if conditions ran.
usedConditions()
usedConditions("Figur1")
usedNoConditions(sprite = null)
sprite benutzt keine Verzweigungen.
// Hidden -> sprite benutzt keine Verzweigungen.
Checks if no conditional block was used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if no conditions ran.
usedNoConditions()
usedNoConditions("Figur1")
usedSounds(sprite = null)
sprite benutzt Soundblöcke.
// Hidden -> sprite benutzt Soundblöcke.
Checks if any sound-related blocks were used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if sound blocks ran.
usedSounds()
usedSounds("Figur1")
usedNoSounds(sprite = null)
sprite benutzt keine Soundblöcke.
// Hidden -> sprite benutzt keine Soundblöcke.
Checks if no sound-related blocks were used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if sound blocks ran.
usedNoSounds()
usedNoSounds("Figur1")
usedCustomBlocks(sprite = null)
sprite benutzt eigene Blöcke.
// Hidden -> sprite benutzt eigene Blöcke.
Checks if any custom block (procedure) was used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if any custom blocks ran.
usedCustomBlocks()
usedCustomBlocks("Figur1")
usedNoCustomBlocks(sprite = null)
sprite benutzt keine eigenen Blöcke.
// Hidden -> sprite benutzt keine eigenen Blöcke.
Checks if no custom block (procedure) was used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if no custom blocks ran.
usedNoCustomBlocks()
usedNoCustomBlocks("Figur1")
usedBlockWith(opcode1, opcodes, sprite = null)
sprite benutzt Block "opcode1" wurde zusammen mit ${Array.isArray(opcodes) ? opcodes.map(v =>
// Hidden -> sprite benutzt Block "opcode1" wurde in Verbindung mit vorgegebenen Blöcken benutzt.
Checks whether a block was used together with any block from a list (inside the same expression),
optionally filtering by sprite.
Param | Type | Description |
opcode1 |
string |
The main opcode to search for (e.g. "looks_setsizeto") |
opcodes |
string|string[] |
List of opcodes that might have been used in conjunction (e.g. ["operator_divide", "data_variable"]) |
[sprite=null] |
string |
Optional sprite name to restrict the search. |
returns boolean
–
usedBlockWith("looks_setsizeto", ["operator_divide", "data_variable"])
usedBlockWithVariables(opcode, variables, sprite = null)
sprite benutzt "opcode" mit den Variablen: ${Array.isArray(variables) ? variables.map(v =>
// Hidden -> sprite benutzt "opcode" mit vorgegebenen Variablen.
Checks whether a block was used together with specific variable(s).
Param | Type | Description |
opcode |
string |
The main opcode to search for (e.g. "looks_setsizeto") |
variables |
string|string[] |
List of variable names to check for (e.g. ["Startgröße"]) |
[sprite=null] |
string |
Optional sprite name to restrict the search. |
returns boolean
–
usedBlockWithVariables("looks_setsizeto", ["Startgröße"])
usedVariable(variable_name, sprite = null)
sprite benutzt diese Variable: variable_name.
// Hidden -> sprite benutzt eine vorgegebene Variable.
Checks if a specific variable was used, optionally filtered by sprite.
Param | Type | Description |
variable_name |
string |
Name of the variable. |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if the variable was used.
usedVariable("Lösungswort")
usedVariable("Lösungswort", "Figur1")
usedNoVariable(variable_name, sprite = null)
sprite benutzt diese Variable nicht: variable_name.
// Hidden -> sprite benutzt eine bestimmte Variable nicht.
Checks if a specific variable was never used, optionally filtered by sprite.
Param | Type | Description |
variable_name |
string |
Name of the variable. |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if the variable was never used.
usedNoVariable("Lösungswort")
usedNoVariable("Lösungswort", "Figur1")
wasWithVariable(variable_name, expected_value, sprite = null)
sprite Variable "variable_name" hatte irgendwann den Wert "expected_value".
// Hidden -> sprite Variable "variable_name" hatte irgendwann einen vorgegebenen Wert.
Checks whether the given variable had the expected value at any point in time.
Param | Type | Description |
variable_name |
string |
Variable name. |
expected_value |
* |
Expected value at any time. |
[sprite=null] |
string|null |
Optional: only check this sprite. |
returns boolean
– True if matched at any point, false otherwise.
wasWithVariable("Lösungswort", "Afrika")
wasWithVariable("Lösungswort", "Afrika", "Figur1")
endsWithVariable(variable_name, expected_value, sprite = null)
sprite Variable "variable_name" hat Endwert: expected_value
// Hidden -> sprite Variable "variable_name" hat einen vorgegebenen Endwert.
Checks whether the given variable ends with the expected value.
Param | Type | Description |
variable_name |
string |
Variable name. |
expected_value |
* |
Expected final value. |
[sprite=null] |
string|null |
Optional: only check this sprite. |
returns boolean|null
– True if matched, false if not, null if not found.
endsWithVariable("Lösungswort", "Afrika")
endsWithVariable("Lösungswort", "Afrika", "Figur1")
changedPosition(sprite)
Figur sprite bewegt sich.
// Hidden -> Eine vorgegebene Figur bewegt sich.
Determines if the given sprite moved.
Param | Type | Description |
sprite |
string |
|
returns boolean
– true if sprite moved.
changedPosition()
wasAtPosition(sprite, x, y, tolerance = 0)
sprite war bei Ort (x, y) (± tolerance)
// Hidden -> sprite war an einem vorgegebenen Ort.
Checks if a sprite was ever at a specific position (within tolerance).
Param | Type | Description |
sprite |
string |
sprite name or ID. |
x |
number |
X position. |
y |
number |
Y position. |
[tolerance=0] |
number |
Optional tolerance value. |
returns boolean
–
wasAtPosition("Squirrel", 120, 80, 10)
endsAtPosition(sprite, x, y, tolerance = 0)
sprite endet an Ort (x, y) (± tolerance)
// Hidden -> sprite endet an einem vorgegebenen Ort
Checks whether a sprite ends at a specific position.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
x |
number |
Expected X coordinate. |
y |
number |
Expected Y coordinate. |
[tolerance=0] |
number |
Optional tolerance. |
returns boolean|null
– True if matched, false if not, null if not found.
endsAtPosition("Squirrel", 120, 80, 10)
changedDirection(sprite)
Figur sprite ändert ihre Richtung.
// Hidden -> Eine vorgegebene Figur ändert ihre Richtung.
Determines if the given sprite changed its direction.
Param | Type | Description |
sprite |
string |
The name of the sprite to check. |
returns boolean
– True if the sprite's direction changed at least once.
changedDirection("Squirrel")
wasFacingDirection(sprite, direction)
sprite hatte die Richtung: direction.
// Hidden -> sprite hatte eine vorgegebene Richtung.
Checks if a sprite was ever facing a specific direction.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
direction |
number |
Direction to check for in history. |
returns boolean
–
wasFacingDirection("Squirrel", 90)
endsFacingDirection(sprite, direction)
sprite endet in Richtung: direction.
// Hidden -> sprite endet in eine vorgegebene Richtung.
Checks if a sprite ends facing a specific direction.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
direction |
number |
Expected final direction. |
returns boolean|null
–
endsFacingDirection("Squirrel", "90")
endsRotationStyle(sprite, rotationStyle)
sprite endet mit Drehstil: rotationStyle.
// Hidden -> sprite endet mit einem vorgegebenen Drehstil.
Checks if a sprite ends with a specific rotation style.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
rotationStyle |
string |
Expected rotation style ("all around", "left-right", "don't rotate"). |
returns boolean|null
–
endsRotationStyle("Squirrel", "all around")
endPositionX(sprite)
sprite war am Ende bei X
// Hidden -> sprite war am Ende bei X
Returns the final X position of a sprite.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
returns number|undefined
– X position or undefined if not found.
endPositionX("Squirrel")
endPositionY(sprite)
sprite war am Ende bei Y
// Hidden -> sprite war am Ende bei Y
Returns the final Y position of a sprite.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
returns number|undefined
– Y position or undefined if not found.
endPositionY("Squirrel")
wasSize(sprite, size, tolerance = 0)
sprite hatte zwischendurch die Größe size (± tolerance)
// Hidden -> sprite hatte zwischendurch eine bestimmte Größe.
Checks if a sprite was ever at a specific size (within tolerance).
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
size |
number |
Target size. |
[tolerance=0] |
number |
Optional tolerance. |
returns boolean
–
wasSize("Squirrel", 120, 5)
endsSize(sprite, size, tolerance = 0)
sprite endet mit Größe size (± tolerance)
// Hidden -> sprite endet mit einer bestimmten Größe.
Checks whether a sprite ends at a specific size (within tolerance).
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
size |
number |
Expected final size. |
[tolerance=0] |
number |
Optional tolerance. |
returns boolean|null
– True if matched, false if not, null if not found.
endsSize("Squirrel", 120, 5)
usedCostumeChanges(sprite = null)
sprite benutzt Kostümwechsel.
// Hidden -> Eine Figur benutzt Kostümwechsel.
Checks if any costume-changing blocks were used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if any costume blocks ran.
usedCostumeChanges()
usedCostumeChanges("Figur1")
usedNoCostumeChanges(sprite = null)
sprite benutzt keine Kostümwechsel.
// Hidden -> Eine Figur benutzt keine Kostümwechsel.
Checks if no costume-changing blocks were used, optionally filtered by sprite.
Param | Type | Description |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if no costume blocks ran.
usedNoCostumeChanges()
usedNoCostumeChanges("Figur1")
changedCostumeTo(sprite, costumeName)
sprite wechselte das Kostüm zu: costumeName
// Hidden -> sprite wechselte zu einem vorgegebenen Kostüm.
Checks if a sprite switched to a specific costume.
Param | Type | Description |
sprite |
string |
sprite name or ID. |
costumeName |
string |
Name of the costume. |
returns boolean
– True if costume was switched to.
changedCostumeTo("Squirrel", "Kostüm1")
wasCostume(sprite, costumeName)
sprite hatte irgendwann das Kostüm: costumeName
// Hidden -> sprite hatte irgendwann das Kostüm: costumeName
Checks if a sprite was ever set to a specific costume.
Param | Type | Description |
sprite |
string |
sprite name or ID. |
costumeName |
string |
Name of the costume. |
returns boolean
– True if the costume was ever used.
wasCostume("Squirrel", "Kostüm1")
endsOnCostume(sprite, costumeName)
sprite endet mit Kostüm: costumeName
// Hidden -> sprite endet mit vorgegebenem Kostüm.
Checks if a sprite ends on a specific costume.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
costumeName |
string |
The expected final costume name. |
returns boolean|null
– True if matches, false if not, null if sprite not found.
endsOnCostume("Squirrel", "Kostüm1")
usedBackdropChanges()
Benutzt Bühnenwechsel.
// Hidden -> Benutzt Bühnenwechsel.
Checks if any stage-changing blocks were used.
returns boolean
– True if any costume blocks ran.
usedBackdropChanges()
usedNoBackdropChanges()
Benutzt keine Bühnenwechsel.
// Hidden -> Benutzt keine Bühnenwechsel.
Checks if no backdrop-changing blocks were used.
returns boolean
– True if no backdrop blocks ran.
usedNoBackdropChanges()
wasBackdrop(backdrop_name)
Hatte irgendwann das Bühnenbild: backdrop_name
// Hidden -> Hatte irgendwann das vorgegebene Bühnenbild.
Checks if a specific backdrop was ever shown during execution.
Param | Type | Description |
backdrop_name |
string |
The name of the backdrop to check for. |
returns boolean
– True if the backdrop was ever set.
wasBackdrop("backdrop1")
endsOnBackdrop(backdrop_name)
Endet mit Bühnenbild: backdrop_name
// Hidden -> Endet mit vorgegebenem Bühnenbild.
Checks if the project ends on a specific backdrop.
Param | Type | Description |
backdrop_name |
string |
The expected final backdrop name. |
returns boolean|null
– True if matches, false if not, null if not found.
endsOnBackdrop("Bühne1")
endsVisible(sprite)
sprite endet sichtbar.
// Hidden -> Eine vorgegebene Figur endet sichtbar.
Checks if a sprite ends up visible.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
returns boolean|null
– True if visible, false if hidden, null if sprite not found.
endsVisible("Squirrel")
endsHidden(sprite)
sprite endet versteckt.
// Hidden -> Eine vorgegebene Figur endet unsichtbar
Checks if a sprite ends up hidden.
Param | Type | Description |
sprite |
string |
Sprite name or ID. |
returns boolean|null
– True if hidden, false if visible, null if sprite not found.
endsHidden("Squirrel")
broadcasted(message, sprite = null)
sprite sendet diese Nachricht: message.
// Hidden -> sprite sendet eine vorgegebene Nachricht.
Checks if a given message was broadcast, optionally filtered by sprite.
Param | Type | Description |
message |
string |
Name of the broadcast message. |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if the message was broadcast.
broadcasted("Nachricht1")
broadcasted("Nachricht1", "Figur1")
lastBroadcasted(message, sprite = null)
sprite sendet zuletzt die Nachricht: message.
// Hidden -> sprite sendet zuletzt eine vorgegebene Nachricht.
Checks if the last broadcast message matches a specific value, optionally filtered by sprite.
Param | Type | Description |
message |
string |
Message to check. |
sprite |
string |
[Optional] Name of the sprite. |
returns boolean
– True if last broadcast matches.
lastBroadcasted("Nachricht1")
lastBroadcasted("Nachricht1", "Figur1")
scriptCount(sprite = null)
block.target::block.topLevelId
// Hidden -> block.target::block.topLevelId
Returns the number of top-level scripts (threads) for a sprite or globally.
Param | Type | Description |
sprite |
string|null |
Optional sprite name. |
returns number
– Count of top-level scripts.
scriptCount() === 4
scriptCount("Squirrel") >= 2
countBlocks(opcode, sprite = null)
Anzahl durch sprite ausgeführter "opcode"-Blöcke
// Hidden -> Anzahl verschiedener ausgeführter Blöcke nach vorgegebenen Kriterien
Counts how many times one or more blocktypes were executed (including loops).
- string: counts that opcode.
- array of strings: sums executions for all listed opcodes.
- omitted: returns the total number of executed blocks.
Param | Type | Description |
[opcode] |
string|string[]|undefined |
[Optional] The block opcode(s) to count. |
sprite |
string |
[Optional] The block opcode(s) to count. |
returns number
– The number of matched executed blocks.
countBLocks("motion_gotoxy") >= 3 // Hidden
countBlocks("looks_setsizeto", "Squirrel") == 1
countBlocks(["motion_gotoxy", "motion_glideto"], "Cat") >= 2
countBlocks() >= 10
countUniqueBlocks(opcode, sprite = null)
Anzahl durch sprite ausgeführter verschiedener "opcode"-Blöcke:
// Hidden -> Anzahl verschiedener ausgeführter Blöcke nach vorgegebenen Kriterien
Counts the number of unique blocks (by blockId) executed, optionally filtered by opcode and/or sprite.
Warning: Does not work well with nested loops! Seems to +1 due to blockId conflicts.
Param | Type | Description |
[opcode] |
string|string[]|undefined |
The block opcode(s) to count unique occurrences for. |
[sprite] |
string |
Optional sprite name to filter by. |
returns number
– Number of unique block instances executed.
countUniqueBlocks("motion_gotoxy") < 3
countUniqueBlocks(["motion_movesteps", "motion_gotoxy"], "Cat") === 2
countUniqueBlocks(undefined, "Cat") >= 5
shareThread(opcodes, sprite = null)
sprite hat Blöcke opcodes im selben Skript.
// Hidden -> sprite hat vorgegebene Blöcke im selben Skript.
Checks whether all given opcodes were executed within the same top-level thread (script),
optionally filtered by sprite name.
Param | Type | Description |
opcodes |
string|string[] |
The opcode or array of opcodes to check. |
[sprite] |
string |
Optional name of the sprite to restrict the check. |
returns boolean
– True if all opcodes were used together in any single script.
shareThread(["motion_movesteps", "motion_gotoxy"], "Squirrel") === true
shareThread("motion_movesteps") === true
shareNoThread(opcodes, sprite = null)
sprite hat Blöcke opcodes nicht im selben Skript.
// Hidden -> sprite hat vorgegebene Blöcke nicht im selben Skript.
Checks whether none of the given opcodes were ever executed together in the same top-level thread (script),
optionally filtered by sprite name. No two opcodes may appear in the same script.
Param | Type | Description |
opcodes |
string|string[] |
The opcode or array of opcodes to check. |
[sprite] |
string |
Optional name of the sprite to restrict the check. |
returns boolean
– True if none of the opcodes ever appeared together in any script.
shareNoThread(["motion_movesteps", "motion_gotoxy"], "Squirrel") === true
shareNoThread("motion_movesteps") === true
threadLengthAtMost(limit, sprite = null)
sprite benutzt nur Skripte mit höchstens limit Blöcken.
// Hidden -> sprite hat ein zu langes Skript.
Checks whether all scripts (threads) have at most a given number of blocks.
Optionally filtered by sprite.
Param | Type | Description |
limit |
number |
The maximum allowed number of blocks per script. |
[sprite] |
string |
Optional name of the sprite to restrict the check. |
returns boolean
– True if all scripts are at most `limit` blocks long.
threadsAtMost(10)
threadsAtMost(5, "Squirrel")
threadLengthAtLeast(limit, sprite = null)
sprite benutzt nur Skripte mit mindestens limit Blöcken.
// Hidden -> sprite hat ein zu kurzes Skript.
Checks whether all scripts (threads) have at least a given number of blocks.
Optionally filtered by sprite.
Param | Type | Description |
limit |
number |
The minimum required number of blocks per script. |
[sprite] |
string |
Optional name of the sprite to restrict the check. |
returns boolean
– True if all scripts are at least `limit` blocks long.
threadsAtLeast(3)
threadsAtLeast(5, "Beetle")
usedInOrder(opcodes, sprite = null)
sprite führt die Blöcke opcodes.join(" → ") in der richtigen Reihenfolge aus.
// Hidden -> sprite benutzt vorgegebene Blöcke in der richtigen Reihenfolge.
Checks whether the given opcodes were executed in the specified order,
optionally restricted to a specific sprite. The opcodes don't need to be consecutive,
but must appear in the given sequence.
Param | Type | Description |
opcodes |
string[] |
The sequence of opcodes to check. |
[sprite] |
string |
Optional sprite name to restrict the check. |
returns boolean
– True if the opcodes appear in order.
usedInOrder(["event_whenflagclicked", "motion_movesteps", "looks_say"], "Squirrel") === true
usedInOrder(["motion_movesteps", "looks_say"]) === false
secondsElapsed()
Laufzeit in Sekunden
// Hidden -> Laufzeit in Sekunden
Returns the elapsed program time in seconds.
returns number|null
– Duration in seconds, or null if timing info is missing.
secondsElapsed() < 50
valueOfFirstBlock(opcode, argName, sprite = null)
sprite benutzt ersten Block opcode mit Wert
// Hidden -> sprite benutzt ersten festgelegten Block mit Wert
Gets the value of a block argument from the first time it was used.
Param | Type | Description |
opcode |
string |
The block opcode (e.g., "looks_say"). |
argName |
string |
The argument name (e.g., "MESSAGE"). |
sprite |
string |
[Optional] The sprite name to filter. |
returns any
– The value of the argument or undefined if not found.
valueOfFirstBlock("looks_setsizeto", "SIZE", "Squirrel") == 100
valueOfFirstBlock("motion_movesteps", "STEPS") > 10
valueOfNthBlock(opcode, argName, n, sprite = null)
sprite benutzt n. opcode mit Wert für argName
// Hidden -> sprite benutzt n. opcode mit einem Wert
Gets the value of a block argument from the Nth time it was used.
Param | Type | Description |
opcode |
string |
The block opcode (e.g., "looks_say"). |
argName |
string |
The argument name (e.g., "MESSAGE"). |
n |
number |
The 1-based index of the occurrence (e.g., 2 means the second time). |
sprite |
string |
[Optional] The sprite name to filter. |
returns any
– The value of the argument or undefined if not found.
valueOfNthBlock("motion_movesteps", "STEPS", 2) > 20
hasBlockWithValue(opcode, argName, expectedValue, sprite = null)
sprite benutzt opcode mit Wert: expectedValue.
// Hidden -> sprite benutzt einen Block mit einem bestimmten Wert.
Checks whether any block with the given opcode and argName has the expected value.
Param | Type | Description |
opcode |
string |
Block opcode. |
argName |
string |
Argument name. |
expectedValue |
any |
Value to compare against. |
[sprite] |
string |
Optional sprite name. |
returns boolean
– True if any matching block has the expected value.
hasBlockWithValue("looks_setsizeto", "SIZE", "100", "Squirrel")
hasBlockWithValue("motion_movesteps", "STEPS", 10)
hasNoBlockWithValue(opcode, argName, expectedValue, sprite = null)
sprite benutzt opcode nicht mit Wert: expectedValue.
// Hidden -> sprite benutzt keinen Block mit einem bestimmten Wert.
Checks whether no block with the given opcode and argName has the expected value.
Param | Type | Description |
opcode |
string |
Block opcode. |
argName |
string |
Argument name. |
expectedValue |
any |
Value to compare against. |
[sprite] |
string |
Optional sprite name. |
returns boolean
– True if no matching block has the expected value.
hasNoBlockWithValue("looks_setsizeto", "SIZE", "100", "Squirrel")
hasNoBlockWithValue("motion_movesteps", "STEPS", 10)
efficiency()
Effizienzfaktor
// Hidden -> Effizienzfaktor
Calculates block efficiency: total executed blocks over unique blocks.
returns number
– Reuse factor (1 = every block gets executed only once)
efficiency() <= 2
maxNestingDepth(Nesttype = null, sprite = null)
sprite hat eine eine Verschachtelungstiefe (Nesttype) mit Tiefe
// Hidden -> Verschachtelungstiefe nach bestimmten Kriterien
Checks the maximum nesting depth of loops and/or conditionals.
Param | Type | Description |
Nesttype |
"loops"|"conditionals"|null |
Type of nesting to check. If null, considers all. |
sprite |
string|null |
Optional name of the sprite to restrict the check. |
returns number
– The maximum nesting depth found.
hasDuplicateScripts(sprite = null)
sprite hat doppelte Skripte.
// Hidden -> sprite hat doppelte Skripte.
Checks whether any scripts are exact duplicates for a given sprite or globally.
Param | Type | Description |
sprite |
string|null |
Optional sprite name. |
returns boolean
– True if any duplicate scripts are found.
hasDuplicateScripts() === false
<unknown>()
HELPER FUNCTION
Returns a list of duplicate scripts. Two scripts are duplicates if their sequence of opcodes is the same.
Param | Type | Description |
sprite |
string|null |
Optional sprite name. |
returns Array<Array<string>>
– List of duplicate opcode sequences (threads).
duplicateScripts("Beetle")
savedProject(name = null)
Das Projekt wurde gespeichert. Name: name
// Hidden -> Das Projekt wurde gespeichert.
Checks whether a `sqill:project_saved` event was recorded.
Optionally filters by project name.
Param | Type | Description |
name – Name of the project to check for (optional). |
string|null |
|
returns boolean
– True if a matching save event was recorded.
savedProject("MeinProjekt")
loadedProject(name = null)
Ein Projekt wurde geladen. Name: name
// Hidden -> Ein Projekt wurde geladen.
Checks whether a `sqill:project_loaded` event was recorded.
Optionally filters by project name.
Param | Type | Description |
name – Name of the project to check for (optional). |
string|null |
|
returns boolean
– True if a matching load event was recorded.
loadedProject("MeinProjekt")
restoreProject(name = null)
Ein Projekt wurde wiederhergestellt. Name: name
// Hidden -> Ein Projekt wurde wiederhergestellt.
Checks whether a `sqill:project_restored` event was recorded.
Optionally filters by project name.
Param | Type | Description |
name – Name of the project to check for (optional). |
string|null |
|
returns boolean
– True if a matching load event was recorded.
loadedProject("MeinProjekt")
getSqillEvents(type)
HELPER FUNCTION
Returns all sqillEvents of a given type.
Param | Type | Description |
type |
string |
e.g. 'sqill:project_saved' |
returns Array<{ type: string, payload?: any
– >}
Opcopes: