InventorySystem

system.inventory.inventory

InventorySystem Objects

python
class InventorySystem()

Система инвентаря с фиксированным количеством слотов.

Позволяет хранить, использовать, удалять и обменивать предметы между инвентарями.

Attributes:

  • num_of_slots int - Общее количество слотов.
  • selected_slot_id int - Индекс текущего выбранного слота.

Notes:

Слоты могут содержать либо InventoryItem, либо Python обьекты. Все операции (добавление, использование, удаление) происходят относительно выбранного слота.

get_selected_slot

python
def get_selected_slot() -> None | dict | Any

Возвращает информацию о предмете в выбранном слоте.

Returns:

Возвращает информацию о текущем предмете. Если содержит предметы с количестом то возвращает информацию с такой структурой {"item":"class_name","count":0}. В других случаях возвращает сам предмет. None означает пусто.

select

python
def select(slot_id: int) -> bool

Выбирает активный слот.

Arguments:

  • slot_id int - Индекс слота.

Returns:

  • bool - True если слот успешно выбран, иначе False.

drop

python
def drop()

Удаляет предмет из текущего слота.

exchange

python
def exchange(inv_sys: InventorySystem)

Обменивает предмет текущего слота с другим инвентарём.

Arguments:

  • inv_sys InventorySystem - Другой инвентарь.

Raises:

  • TypeError - Если передан не InventorySystem.