Skip to main content

Scene

Events for managing scenes, transitions, scrolling, tiles, and scene properties.

Actions​

Change Scene​

Transition to a new scene with player at a specified position and direction.
Change Scene
Scene
Scene 1
Give a specific position (can be used or not).

Change Scene To Variable​

Transition to the scene index stored in a variable, with player at a specified position and direction.
Change Scene To Variable
Variable
$Variable0
Give a specific position (can be used or not).

Change Scene By Name​

Transition to a new scene with player at a specified position and direction.
Change Scene By Name
Scene name...
Give a specific position (can be used or not).

Restart Scene​

Restart the current scene.
Restart Scene
Restart the current scene.

Pause Scene​

Pauses the scene and starts running the pause script. Also stops animating all sprites.
Pause Scene
Pauses the scene and starts running the pause script. Also stops animating all sprites.

Unpause Scene​

Unpauses the scene and resumes running the update script. Also resumes animating all sprites.
Unpause Scene
Unpauses the scene and resumes running the update script. Also resumes animating all sprites.

Redraw Scene​

Redraw the scene background & foreground, useful after drawing frames or other type of UI.
Redraw Scene
Redraw the scene background & foreground, useful after drawing frames or other type of UI.

Redraw Plane (Scene)​

Redraws a single plane, scrolling it to the camera position.
Redraw Plane (Scene)
Plane
Background

Fade Screen In​

Fade the scene from a blank screen.
Fade Screen In
Duration
0.5
Wait until finished
  • Duration: The length of time needed to perform the fade in seconds or frames.
  • Wait until finished: Set if script should pause until fade has finished.

Fade Screen Out​

Fade the scene to a blank screen.
Fade Screen Out
Duration
0.5
Wait until finished
  • Duration: The length of time needed to perform the fade in seconds or frames.
  • Wait until finished: Set if script should pause until fade has finished.

Control Flow​

If Current Scene Is​

Conditionally run part of the script if the current scene is the selected one.
If Current Scene Is
Scene
Scene 1
True
Add Event

If Scene Collision At Position​

Conditionally run part of the script if the specified collision type is found at a specified position.
If Scene Collision At Position
X
0
Y
0
Solid Sides:
Up
Down
Left
Right
Tick all boxes to check for main (red) collisions.
True
Add Event
  • X: The horizontal position.
  • Y: The vertical position.

If Ladder At Position​

Conditionally run part of the script if a ladder is at a specified position.
If Ladder At Position
X
0
Y
0
True
Add Event
  • X: The horizontal position.
  • Y: The vertical position.

If Tile Type At Position​

Conditionally run part of the script if the selected Tile Type is at a specified position.
If Tile Type At Position
X
0
Y
0
Tile Type
Tile Type 1
True
Add Event
  • X: The horizontal position.
  • Y: The vertical position.
  • Tile Type: The collision tile type to check for.

Graphics​

Clear Scene​

Clears the scene background & foreground, as well as sets the scrolling to 0. Useful to draw specific menus like pause menu.
Clear Scene
Clears the scene background & foreground, as well as sets the scrolling to 0. Useful to draw specific menus like pause menu.

Properties​

Scene Get Width​

Load the scene width into a variable.
Scene Get Width
Variable
$Variable0
Units
Pixels
  • Variable: The variable to use.

Scene Get Height​

Load the scene height into a variable.
Scene Get Height
Variable
$Variable0
Units
Pixels
  • Variable: The variable to use.

Scene Set Tile Type​

Set the given tile type on the given tile coordinates.
Scene Set Tile Type
X
0
Y
0
Tile Type
None
  • X: The horizontal position.
  • Y: The vertical position.

Scene Set Tile Collisions​

Enables collisions on the given tile coordinates.
Scene Set Tile Collisions
X
0
Y
0
Solid Sides:
Up
Down
Left
Right
Tick all boxes to use normal (red) collision.
  • X: The horizontal position.
  • Y: The vertical position.

Scroll​

Scroll Set Mode​

Set the scroll mode.
Scroll Set Mode
Horizontal
Plane
Vertical
Plane
  • Horizontal: The Horizontal scroll mode.
  • Vertical: The Vertical scroll mode.

Scroll Set Value​

Set the scroll to a new value.
Scroll Set Value
Plane
Plane B (Background)
Value
0
Direction
Horizontal
Horizontal Mode
Plane
  • Plane: The plane we want to use
  • Value: The value you want to set.
  • Direction: The scroll direction to set.
  • Horizontal Mode: The Horizontal scroll mode.

Scroll Set Value Relative​

Set the scroll to a new value relative to it's previous value.
Scroll Set Value Relative
Plane
Plane B (Background)
Value
0
Direction
Horizontal
Horizontal Mode
Plane
  • Plane: The plane we want to use
  • Value: The value you want to set.
  • Direction: The scroll direction to set.
  • Horizontal Mode: The Horizontal scroll mode.

Tiles​

Set Tile At Position​

Set a tile at a specified VDP coordinates with the given tile on the VDP directly. This change is temporary, it will be removed once the screen scrolls.
Set VDP Tile At Position
X
0
Y
0
Plane
Background
Palette Slot
AUTO
Tile Size
Settings Collision Tile Size
H Flip
V Flip
Priority
Tile
0
  • X: The horizontal position.
  • Y: The vertical position.
  • Plane: The plane we want to use
  • Palette Slot: The palette slot you want to use.
  • Tile: The tile index in VRAM.

Fill Rect With Tile​

Fill the specified rectangle with the given tile on the VDP directly. This change is temporary, it will be removed once the screen scrolls.
Fill Rect With Tile
X
0
Y
0
Width
0
Height
0
Plane
Background
Palette Slot
AUTO
Tile Size
Settings Collision Tile Size
H Flip
V Flip
Priority
Tile
0
  • X: The horizontal position.
  • Y: The vertical position.
  • Width: The total width.
  • Height: The total height.
  • Plane: The plane we want to use
  • Palette Slot: The palette slot you want to use.
  • Tile: The tile index in VRAM.

Fill Rect With Tile Increment​

Fill the specified rectangle with the given tile on the VDP directly, for each tile of the rectangle base tile will be incremented by 1. This change is temporary, it will be removed once the screen scrolls.
Fill Rect With Tile Increment
X
0
Y
0
Width
0
Height
0
Plane
Plane B (Background)
Palette Slot
Auto Select (BG/FG asignated slot)
Tile Size
Settings Collision Tile Size
H Flip
V Flip
Priority
First Tile
0
  • X: The horizontal position.
  • Y: The vertical position.
  • Width: The total width.
  • Height: The total height.
  • Plane: The plane we want to use
  • Palette Slot: The palette slot you want to use.
  • Tile Size: The base tile size to use.
  • First Tile: The first tile index in VRAM.

Scene Set Tile At Position​

Set a tile at a specified scene coordinates with the given tile. This change can be persisted even after scrolling until the scene is restarted.
Scene Set Tile At Position
X
0
Y
0
Plane
Plane B (Background)
Palette Slot
Auto Select (BG/FG asignated slot)
H Flip
V Flip
Priority
Persist After Scroll
Tile
0
  • X: The horizontal position.
  • Y: The vertical position.
  • Plane: The plane we want to use
  • Palette Slot: The palette slot you want to use.
  • Tile: The tile index in VRAM.
  • Persist After Scroll: Persist tile changes even after scrolling.

Load Tileset​

Load an entire tileset into VRAM and set variable to the first tile index to use on Set Tile calls.
Load Tileset
Tileset First Index
$Variable0
Tileset
flowers
  • Tileset First Index: The tileset first index will be stored on this variable. You can use this with Set Tile calls.
  • Tileset: The tileset to fetch tiles from

Variables​

Store Current Scene Id In Variable​

Store the Current Scene Id in a variable.
Store Current Scene Id In Variable
Variable
$Variable0
  • Variable: The variable to use.

Scene Get Tile Type​

Get the given tile type on the given tile coordinates.
Scene Get Tile Type
Variable
$Variable0
X
0
Y
0
  • Variable: The variable to use for the Tile Type.
  • X: The horizontal position.
  • Y: The vertical position.

Tileset Get Layer First Index​

Load the selected layer's first tile index into a variable to be able to set tileset.
Tileset Get Layer First Index
Image Handle
$Variable0
Plane
Background
  • Image Handle: The image handle to operate with the image. You can use this handle to draw or unload the image.
  • Plane: The plane we want to use

VDP Tile Animation​

VDP Tile Animate​

Start a tile animation that periodically loads tile frames from a tileset into VRAM. Returns a handle to stop the animation later or get the current frame.
VDP Tile Animate
Variable
$Variable0
Tileset
flowers
Destination Tile Index
0
Tile Size
8x8
Frame Count
2
Animation Speed
10
  • Variable: Variable to store the animation handle (used to stop it later or check current frame).
  • Tileset: The tileset to fetch tiles from
  • Destination Tile Index: VRAM tile index where the animation tiles will be written.
  • Tile Size: Size of each animation frame: 8x8 (1 tile) or 16x16 (4 tiles).
  • Frame Count: Total number of animation frames.
  • Animation Speed: Number of vblanks between each frame change.

VDP Tile Animation Get Frame​

Stores the current frame of the given VDP Tile Animation.
VDP Tile Animation Get Frame
Animation Index
$Variable0
Variable
$Variable0
  • Animation Index: Variable containing the animation handle to check.
  • Variable: Variable to store the current animation frame.

VDP Tile Animate Stop​

Stop a running tile animation using the handle returned by VDP Tile Animate.
VDP Tile Animate Stop
Variable
$Variable0
  • Variable: Variable containing the animation handle to stop.