All Classes and Interfaces

Class
Description
Text made from image glyphs, such as font065.png for 'A'.
A rectangle along the axes: the bounds of a shape.
The camera of a stage: which part of the world the stage shows.
What a layer drawer draws with: it records into the draw list, nothing is drawn at once and no OpenGL is exposed.
A circle.
The date and time of the computer the program runs on, the same values Scratch's "current [year]" and "days since 2000" blocks report.
A colour.
What a DrawingSprite draws with in draw(Drawing): coordinates are the sprite's own, with (0, 0) at its position and y up; they turn, mirror and grow with the sprite.
Registers the drawing extension; found through ServiceLoader, learners never see it.
A sprite that draws itself with shapes and images instead of a costume: override DrawingSprite.draw(Drawing).
An ellipse inside a rectangle along the axes.
An extension: found through ServiceLoader (a line in META-INF/services/org.openpatch.scratch.extension.Extension) or registered with Window.use(...), installed once when the window is created.
What an extension may hook into.
Decoded pixels from an image format of an extension's.
A drawn frame at stage size; its pixels are read back only when asked for.
Turns the bytes of an image file into pixels; runs on loading threads.
A slot in the input snapshot: polled on the window thread, copied to the game thread with each batch of ticks, so no locking is needed.
The window thread's side of the input snapshot, filled by ExtensionContext.onInputPoll(Consumer).
A key went down or up (auto-repeat never arrives).
Draws into a layer of a stage.
An exception from learner code, with the learner's frame (null if there is none).
Something the mouse did, in stage coordinates.
What happened.
Saves objects as JSON files and loads them again: their public fields and bean properties (getters and setters), with lists, maps, arrays, enums and nested objects.
Asks the connected controllers, like a gamepad's blocks in other Scratch dialects.
A button of a gamepad, in Xbox positions.
Registers the gamepad extension; found through ServiceLoader, learners never see it.
What a stage or sprite is told about the controllers, at the same point of the tick as key events (before run()): a button going down or up on any player's controller, and a controller appearing in a player's slot.
Where the controllers' state comes from.
What the controllers were like at one point in time: every player slot's buttons, sticks and triggers.
One of a gamepad's two sticks.
One of a gamepad's two analog triggers (the shoulder buttons that go down gradually).
Encodes a GIF file consisting of one or more frames.
Records the stage as an animated GIF: every second frame of game time (30 a second), at stage size, texts and the UI included.
Provides predefined HTML colors as Color objects.
Key codes for keyboard input handling.
Starts a program so that its window runs on the process's first thread, which macOS requires (with -XstartOnFirstThread); the program's main runs on a second thread.
One of the four layers a stage draws, from back to front, after its backdrop.
Represents a map object with various properties such as dimensions, position, visibility, and type.
The MouseCode enum represents the different mouse buttons that can be used.
The Operators class provides a collection of static methods for performing various mathematical operations.
A pen draws lines onto the canvas of its layer, like Scratch's pen.
The pixels of the stage or of an image file, to read colours from.
A polygon given by its corners, concave ones included.
The Property class represents a property of a Tiled object.
The Random class provides various methods for generating random values and noise.
Registers the recorder extension; found through ServiceLoader, learners never see it.
A rectangle along the axes.
The RotationStyle enum represents the different rotation styles that a sprite can have in Scratch.
Saves a game's progress as JSON independently of its installation directory.
Registers the save extension; found through ServiceLoader, learners never see it.
Thrown when a program cannot go on, for example because a costume or a sound could not be loaded.
A shader: a small program the graphics card runs for every pixel of a sprite (or of the whole stage) to change how it looks.
The shaders of a sprite or of the stage.
A shape on the stage: a polygon, rectangle, circle, ellipse or triangle.
One copy of a sound started with playSoundCopy: it can be stopped or made louder or quieter while it plays, independently of other copies.
A sprite: an object on the stage with costumes, a position and a direction, and code that runs every tick in Sprite.run(), like a sprite and its scripts in Scratch.
A stage: one screen of a program, with its backdrops, sprites, texts and pens, and code that runs every tick in Stage.run().
A text on the stage: plain, in a box, or in a speech or thought bubble.
Where a piece of text sits relative to its position.
The TextStyle enum represents different styles of text that can be used.
Registers the tiled extension; found through ServiceLoader, learners never see it.
A map made with the Tiled editor (TMX or TMJ): its tile layers are shown in the stage's layers and drawn every frame, its object layers can spawn sprites, its tiles carry properties and collision shapes.
 
A timer counting game time in seconds, like Scratch's timer: it stops while the game is paused and runs faster at a higher game speed, so it agrees with everything else that happens in ticks.
How one stage gives way to the next in window.transitionToStage(…).
A triangle.
The Vector2 class represents a 2D vector with x and y coordinates.
The window of a program: there is one, created first, and it shows one stage at a time.