2023-04-20 17:06:12 +02:00

31 lines
1.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# API documentation for [`sfinv_buttons`]
Use this very simple API to add your own buttons to the new tab. There is only
one function: `sfinv_buttons.register_button`.
## `sfinv_buttons.register_button(name, def)`
* `name`: Unique button identifier
* `def`: Configuration table (see below)
### Fields of `def`
* `title`: Human-readable text on the button
* `action(player)`: Function is called when button is triggered
* `player`: The `ObjectRef` of the player who triggered the button
* Default behaviour: Nothing happens
* `tooltip`: A tooltip for the button (optional, only use it for an additional,
non-critical explanation)
* `image`: Texture name for the image to show left of the button (optional)
* `show(player)`: Shall return `true` if the button should be displayed (optional)
* `player`: ObjectRef to player who triggered the button
* Default: Always shows button
## Recommendations
* Try to summarize the most important information on the button
* Test if the button title still fits when having >= 9 and <= 18 buttons at a
resolution of 800×600
* It is recommended to only add buttons to access core mod functionality and
not for every minor feature. The rule of thumb is to add at most 1 button per mod
* If you like to add many buttons, consider adding your own `sfinv` page instead