IMyInventory

From Space Engineers Wiki
Jump to: navigation, search

Версия игры: 1.175
Пространство имён VRage.Game.ModAPI.Ingame

public interface IMyInventory
  Интерфейс хранилища предметов

Свойства:

bool IsFull { get; }
  Заполнено ли хранилище до конца

Vector3 Size { get; }
  Размер хранилища

MyFixedPoint CurrentMass { get; }
  Общая масса предметов в хранилище, кг

MyFixedPoint MaxVolume { get; }
  Максимальный объём хранилища, тыс. литров

MyFixedPoint CurrentVolume { get; }
  Занятый объём хранилища, тыс. литров

IMyInventoryOwner Owner { get; }
  Владелец хранилища (игрок или блок)

Методы:

bool IsItemAt(int position)
  Есть ли предмет в указанной ячейке хранилища

bool CanItemsBeAdded(MyFixedPoint amount, SerializableDefinitionId contentId)
  Можно ли добавить в хранилище указанное в amount количество предметов, описанных в contentId

bool ContainItems(MyFixedPoint amount, MyObjectBuilder_PhysicalObject ob)
  Есть ли в хранилище указанное в amount количество предметов типа ob

MyFixedPoint GetItemAmount(SerializableDefinitionId contentId, MyItemFlags flags = MyItemFlags.None)
  Возвращает количество предметов, описанных в contentId, в хранилище

bool TransferItemTo(IMyInventory dst, int sourceItemIndex, int? targetItemIndex = null, bool? stackIfPossible = null, MyFixedPoint? amount = null)
  Передать в хранилище dst предметы из ячейки с индексом sourceItemIndex. Если указано, то поместить их в ячейку с индексом targetItemIndex, по возможности группировать (stackIfPossible), переместить только заданное количество amount предметов

bool TransferItemFrom(IMyInventory sourceInventory, int sourceItemIndex, int? targetItemIndex = null, bool? stackIfPossible = null, MyFixedPoint? amount = null)
  Забрать предметы из ячейки с индексом sourceItemIndex хранилища src. Если указано, то поместить их в ячейку с индексом targetItemIndex, по возможности группировать (stackIfPossible), переместить только заданное количество amount предметов

List<IMyInventoryItem> GetItems()
  Возвращает список предметов в хранилище

IMyInventoryItem GetItemByID(uint id)
  Возвращает предмет с идентификатором id из хранилища

IMyInventoryItem FindItem(SerializableDefinitionId contentId)
  Ищет предмет, описанный в contentId в хранилище

bool IsConnectedTo(IMyInventory dst)
  Проверяет, связаны ли хранилища между собой (напрямую или конвейером)