class
Rosegold::InventoryMenu
- Rosegold::InventoryMenu
- Reference
- Object
Overview
Player inventory menu - the view when no container is open. This is equivalent to vanilla's InventoryMenu.
Included Modules
Defined in:
rosegold/inventory/inventory_menu.crConstant Summary
-
TOTAL_SLOTS =
ItemConstants::PlayerSlots::TOTAL_SLOTS
-
Total slots: crafting result(1) + crafting(4) + armor(4) + main inventory(27) + hotbar(9) + off hand(1) = 46
Constructors
Instance Method Summary
-
#[](index : Int32) : Rosegold::Slot
Get slot by absolute index (following vanilla player inventory layout)
-
#[]=(index : Int32, slot : Rosegold::Slot)
Set slot by absolute index
-
#armor_slots : Array(Rosegold::Slot)
Armor slots
- #boots : Rosegold::Slot
- #chestplate : Rosegold::Slot
-
#close
Close container (no-op for player inventory)
- #content_slots : Array(Rosegold::WindowSlot)
- #crafting_result : Rosegold::Slot
-
#crafting_slots : Array(Rosegold::Slot)
Crafting slots
-
#handle_close
Handle close (no-op for player inventory)
- #helmet : Rosegold::Slot
- #hotbar_slot_index(hotbar_nr : Int32) : Int32
-
#hotbar_slots : Array(Rosegold::WindowSlot)
Player inventory delegation methods
-
#id : UInt8
Fixed properties for player inventory menu
- #inventory_slots : Array(Rosegold::WindowSlot)
- #leggings : Rosegold::Slot
-
#menu_id : UInt8
Abstract methods required by InventoryOperations
-
#off_hand : Rosegold::Slot
Off-hand slot
-
#offhand : Array(Rosegold::WindowSlot)
Player offhand slot for compatibility
-
#offhand_slot_index : Int32
Abstract method implementations for InventoryOperations
-
#player_inventory : PlayerInventory
Direct access to persistent player inventory
-
#player_inventory_slots : Array(Rosegold::Slot)
Player inventory slots (all 36 slots for compatibility)
- #state_id : UInt32
- #state_id=(state_id : UInt32)
- #title : Chat
- #total_slots : Int32
- #type_id : UInt32
Instance methods inherited from module Rosegold::InventoryOperations
[](index : Int32) : Rosegold::Slot
[],
[]=(index : Int32, slot : Rosegold::Slot)
[]=,
allow_modification?(slot_index : Int32) : Bool
allow_modification?,
can_stack?(slot1 : Rosegold::Slot, slot2 : Rosegold::Slot) : Bool
can_stack?,
check_and_fix_desync
check_and_fix_desync,
content : Array(Rosegold::WindowSlot)
content,
content_slots : Array(Rosegold::WindowSlot)
content_slots,
copy_slot(slot : Rosegold::Slot) : Rosegold::Slot
copy_slot,
cursor : Rosegold::Slot
cursor,
cursor=(cursor : Rosegold::Slot)
cursor=,
get_max_stack_size(item_slot : Rosegold::Slot) : Int32
get_max_stack_size,
get_slot_max_stack_size(slot_index : Int32, item_slot : Rosegold::Slot) : Int32
get_slot_max_stack_size,
hotbar : Array(Rosegold::WindowSlot)
hotbar,
hotbar_slot_index(hotbar_nr : Int32) : Int32
hotbar_slot_index,
hotbar_slots : Array(Rosegold::WindowSlot)
hotbar_slots,
increment_state_id : UInt32
increment_state_id,
inventory : Array(Rosegold::WindowSlot)
inventory,
inventory_slots : Array(Rosegold::WindowSlot)
inventory_slots,
main_hand : Rosegold::Slot
main_hand,
main_inventory_slots : Array(Rosegold::Slot)
main_inventory_slots,
may_pickup?(slot_index : Int32) : Bool
may_pickup?,
may_place?(slot_index : Int32, item_slot : Rosegold::Slot) : Bool
may_place?,
menu_id : UInt8
menu_id,
move_item_stack_to(source_index : Int32, target_start : Int32, target_end : Int32, reverse : Bool = false) : Bool
move_item_stack_to,
offhand_slot_index : Int32
offhand_slot_index,
perform_cursor_drop_operation(button : Int32)
perform_cursor_drop_operation,
perform_drop_operation(slot_index : Int32, button : Int32)
perform_drop_operation,
perform_hotbar_swap(slot_index : Int32, button : Int32)
perform_hotbar_swap,
perform_offhand_swap_operation(slot_index : Int32)
perform_offhand_swap_operation,
perform_regular_click(slot_index : Int32, button : Int32)
perform_regular_click,
perform_shift_click(slot_index : Int32)
perform_shift_click,
safe_insert(target_slot_index : Int32, cursor_slot : Rosegold::Slot, amount : Int32)
safe_insert,
safe_take(source_slot_index : Int32, amount : Int32)
safe_take,
same_item_same_components?(slot1 : Rosegold::Slot, slot2 : Rosegold::Slot) : Bool
same_item_same_components?,
send_click(slot_index : Int32, button : Int32, click_type)
send_click,
slots : Array(Rosegold::WindowSlot)
slots,
slots=(new_slots : Array(Rosegold::WindowSlot))
slots=,
slots_match?(slot1 : Rosegold::Slot, slot2 : Rosegold::Slot) : Bool
slots_match?,
swap_hotbar(hotbar_nr, slot : Rosegold::WindowSlot)swap_hotbar(hotbar_nr, slot_number) swap_hotbar, to_s(io) to_s, total_slots : Int32 total_slots, update_all_slots(slots : Array(Rosegold::Slot), cursor : Rosegold::Slot, packet_state_id : UInt32) update_all_slots, update_slot(index : Int32, slot : Rosegold::Slot, packet_state_id : UInt32) update_slot
Constructor Detail
Instance Method Detail
Get slot by absolute index (following vanilla player inventory layout)
Player inventory delegation methods
Abstract method implementations for InventoryOperations
Player inventory slots (all 36 slots for compatibility)