Добавлен ScorpioT1000,
опубликован
Алгоритмы, Наработки и Способности
Способ реализации:
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
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован nvc123
true это истина,it это переменная типа интежер,u это переменная типа юнит
и хватит рвать ленту