minetest_sfinv_buttons/API.md

1.3 KiB
Raw Permalink Blame History

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