Алгоритмы, Наработки и Способности
Способ реализации:
Jass
Тип:
Алгоритм
Решил выложить, первая функция написана не мной, дальше мое авторство на эту же тему.

//возвращает true если итем it есть у юнита u
function IsItemInInventory takes unit u, integer it returns boolean
  local integer i = 0
  loop
    exitwhen i > 5 or GetItemTypeId(UnitItemInSlot(u, i)) == it
    set i = i + 1
  endloop
  return i < 6
endfunction

//возвращает количество итемов в инвентаре
function CountItemInInventory takes unit u, integer it returns integer
  local integer i = 0
  local integer count = 0
  loop
    exitwhen i > 5 
    if(GetItemTypeId(UnitItemInSlot(u, i)) == it)then
        set count = count + 1
    endif
    set i = i + 1
  endloop
  return count
endfunction
//удаляет итем по типу из инвентаря (1 раз, если есть)
function RemoveItemFromInventory takes unit u, integer it returns nothing
  local integer i = 0
  loop
    exitwhen i > 5 or GetItemTypeId(UnitItemInSlot(u, i)) == it
    set i = i + 1
  endloop
  if (i < 6) then
    call RemoveItem(UnitItemInSlot(u, i))
  endif
endfunction
//удаляет все итемы данного типа из инвентаря
function RemoveAllItemFromInventory takes unit u, integer it returns integer
  local integer i = 0
  loop
    exitwhen i > 5 
    if(GetItemTypeId(UnitItemInSlot(u, i)) == it)then
        call RemoveItem(UnitItemInSlot(u, i))
    endif
    set i = i + 1
  endloop
endfunction
1
3
12 лет назад
1
Добавь описание, что это и с чем его есть
Этот комментарий удален
0
2
11 лет назад
0
Както мало, и к тому же первую функции я даже не понял (описание слишком не понятное)
1
28
11 лет назад
Отредактирован nvc123
1
TriGlav5040, чего непонятного,функция проверяет есть ли итем у юнита
true это истина,it это переменная типа интежер,u это переменная типа юнит
и хватит рвать ленту
Чтобы оставить комментарий, пожалуйста, войдите на сайт.