Difference between revisions of "Powder Toy Lua API"
TOC_Official (talk | contribs) m |
(Add link to pil guide, misc intro changes) |
||
Line 1: | Line 1: | ||
{{Languages|Powder Toy Lua API}} | {{Languages|Powder Toy Lua API}} | ||
− | The Powder Toy Lua API is a set of objects and functions that | + | The Powder Toy Lua API is a set of objects and functions that allow control over most aspects of the game, including graphics, element interactions, and interfaces. |
− | boxmein made a massive reference to most parts of the API, including some that are not added to this wiki yet. | + | If you are new to the Lua programming language, you should familiarize yourself with how to code in Lua. A great beginner's tutorial is available [https://www.lua.org/pil/contents.html here] |
+ | |||
+ | boxmein made a massive reference to most parts of the API, including some that are not added to this wiki yet. Regardless, this reference is extremely outdated and hasn't been updated in years. | ||
You can find it [https://web.archive.org/web/20201023090302/https://www.boxmein.net/tpt/tptelements/reference/lua-reference.html here]. | You can find it [https://web.archive.org/web/20201023090302/https://www.boxmein.net/tpt/tptelements/reference/lua-reference.html here]. | ||
Revision as of 05:10, 7 March 2022
Language: | English • 한국어 • 中文 |
---|
The Powder Toy Lua API is a set of objects and functions that allow control over most aspects of the game, including graphics, element interactions, and interfaces.
If you are new to the Lua programming language, you should familiarize yourself with how to code in Lua. A great beginner's tutorial is available here
boxmein made a massive reference to most parts of the API, including some that are not added to this wiki yet. Regardless, this reference is extremely outdated and hasn't been updated in years. You can find it here.
The API is split into several categories
- Interface
- Includes UI components such as buttons, labels and checkboxes, access to the very primitive window manager and input events
- Renderer
- Methods and constants for interacting with the display mode
- Elements
- Methods and constants for modifying and creating elements
- Simulation
- Methods for modifying the state of the simulation
- Graphics
- Methods for drawing simple shapes and text on screen.
- File System
- Functions for creating, deleting, modifying and enumerating files and folders.
- Platform
- Functions for doing OS-level things like opening URLs or interacting with the clipboard.
- Event
- Listen for events, such as mouseclicks or key presses.
- Socket
- Built-in LuaSocket library available as the
socket
global. - HTTP
- Provides access to basic HTTP functionality in the form of request objects.
- Bit
- Doesn't actually provide any interaction with the game, but provides some functions for performing bitwise operations on integer numbers.
- Legacy
- Old Lua API with the tpt.* prefix