Stop

From Pico-8 Wiki
Jump to navigation Jump to search
stop( [message,] [x,] [y,] [col] )
Stops the program's execution and returns to the command prompt.
message
An optional message to print before stopping.

x
The x coordinate of the upper left corner to start printing.

y
The y coordinate of the upper left corner to start printing.

col
The color to use for the text.
Undocumented feature
This article describes a feature that is not mentioned in the official Pico-8 documentation. The feature was known to work at the time the article was written, but it may be removed or changed in a future version.

The stop() function stops the program at the point where the function is called, returning to the command prompt. This is similar to pressing the Escape key at a specific point in the code.

Note that the format of the optional arguments is identical to the more-familiar print(). This can be useful for explaining why the app has exited, especially if combined with information from trace().

If your program uses the game loop, you can resume execution of the program using the resume command. This does not resume from the call to stop(). Instead, it starts the next loop iteration with a call to _update(). If your program does not use the game loop, resume raises an error.

Examples

v = 1

function _update()
  v += 1
  if (v % 5) == 0 then stop() end
end

function _draw()
  cls()
  print(v, 0, 0, 8)
end

Running this program stops when v is a multiple of 5. From the command prompt:

> print(v)
5
> resume

The program stops again at the next multiple of 5:

> print(v)
10

See also