pumpkin-plugin-wit/v0.1/gui.wit
2026-08-27 12:32:11 +02:00

40 lines
1.3 KiB
Plaintext

interface gui {
use text.{text-component};
use common.{click-type};
use item-stack.{item-stack};
use screens.{screen};
use inventory.{inventory};
resource gui {
constructor(%type: screen, title: text-component);
/// Returns the underlying inventory handle for this GUI.
get-inventory: func() -> inventory;
set-item: func(slot: u32, item: item-stack);
get-item: func(slot: u32) -> option<item-stack>;
/// Returns the type of this GUI.
get-type: func() -> screen;
/// Returns the title of this GUI.
get-title: func() -> text-component;
/// Returns the number of slots in this GUI.
get-size: func() -> u32;
/// Clears all items from the GUI.
clear-items: func();
/// Sets whether players can grab items out of the inventory.
set-allow-grab-items: func(allow: bool);
/// Returns whether players can grab items out of the inventory.
get-allow-grab-items: func() -> bool;
/// Sets whether players can put items into the inventory from their own.
set-allow-put-items: func(allow: bool);
/// Returns whether players can put items into the inventory from their own.
get-allow-put-items: func() -> bool;
}
}