как проверить есть ли у юнита например 5 зелей жизни?

Принятый ответ

циклом (данного юнита от 1-6 слотов, на jass от нумерация слотов начинается так 0-5) пробегаешься по каждому слоту и проверяешь тип, кол-во зарядов. я на гуи что-то не нашел эту команду UnitItemInSlot
native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item
кол-во итемов
ищем в каждом слоте один и тот же тип предмета. Этот код считывает кол-во итемов занимаемые в слотах
local integer id = ''//id-предмета, забудь указать в кавычках ид
local integer i=0 //для цикла
local integer c=0 //кол-во предметов
local unit u = //нужно не забыть указать юнита
//внизу начинается цикл, его блок 
loop //начало цикла
    exitwhen i > 5 //условие выхода из цикла
    if GetItemTypeId(UnitItemInSlot(u,i)) == '' then //если тип в слоте равен ....
        set c = c + 1
    endif
    set i = i + 1
endloop //конец цикла
кол-во предметов данного типа с N зарядами
local integer id = '' //id-предмета, забудь указать в кавычках ид
local integer i=0 //для цикла
local integer c=0 //кол-во предметов
local unit u = //нужно не забыть указать юнита
loop
    exitwhen i > 5

    if GetItemTypeId(UnitItemInSlot(u,i)) == id or GetItemCharges(UnitItemInSlot(u,i)) == 5 then //если тип в слоте такой, и и у этого итема зарядов равно 5
        set c = c + 1
    endif
    set i = i + 1
endloop
set u = null
Этот комментарий удален
0
16
7 лет назад
Отредактирован avuremybe
0
проверяешь есть ли предмет "зелье жизни". если есть => проверяешь кол-во стаков
0
27
7 лет назад
Отредактирован MpW
0
циклом (данного юнита от 1-6 слотов, на jass от нумерация слотов начинается так 0-5) пробегаешься по каждому слоту и проверяешь тип, кол-во зарядов. я на гуи что-то не нашел эту команду UnitItemInSlot
native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item
кол-во итемов
ищем в каждом слоте один и тот же тип предмета. Этот код считывает кол-во итемов занимаемые в слотах
local integer id = ''//id-предмета, забудь указать в кавычках ид
local integer i=0 //для цикла
local integer c=0 //кол-во предметов
local unit u = //нужно не забыть указать юнита
//внизу начинается цикл, его блок 
loop //начало цикла
    exitwhen i > 5 //условие выхода из цикла
    if GetItemTypeId(UnitItemInSlot(u,i)) == '' then //если тип в слоте равен ....
        set c = c + 1
    endif
    set i = i + 1
endloop //конец цикла
кол-во предметов данного типа с N зарядами
local integer id = '' //id-предмета, забудь указать в кавычках ид
local integer i=0 //для цикла
local integer c=0 //кол-во предметов
local unit u = //нужно не забыть указать юнита
loop
    exitwhen i > 5

    if GetItemTypeId(UnitItemInSlot(u,i)) == id or GetItemCharges(UnitItemInSlot(u,i)) == 5 then //если тип в слоте такой, и и у этого итема зарядов равно 5
        set c = c + 1
    endif
    set i = i + 1
endloop
set u = null
Принятый ответ
1
15
7 лет назад
1
avuremybe:
проверяешь есть ли предмет "зелье жизни". если есть => проверяешь кол-во стаков
а если нужно проверить три типа предмета на их кол-во?
и я же просил в виде карты :( неужели вы такие ленивые...
5 пунктов от nvc123: 10.3 (ответ на вопрос есть в статьях) +10.2
4
6
7 лет назад
Отредактирован Pandemic
4
Лови наработку, на твоё счастье мне самому она будет не лишней.
И да, таки ленивый тут ты, ибо вместо чтения статей и других вопросов, дергаешь форумчан, чтоб они всю работу делали за тебя.
Steal nerves, на гуи это можно реализовать через pick item - drop item
Загруженные файлы
1
15
7 лет назад
1
Pandemic:
Лови наработку, на твоё счастье мне самому она будет не лишней.
И да, таки ленивый тут ты, ибо вместо чтения статей и других вопросов, дергаешь форумчан, чтоб они всю работу делали за тебя.
Steal nerves, на гуи это можно реализовать через pick item - drop item
это не ЛЕНЬ а обучение на практике!
теорию читать неинтересно
5
6
7 лет назад
5
Artyom18, ну с такой позицией скоро объем твоей минусовой кармы перестанет помещаться под аватаром.
0
27
7 лет назад
Отредактирован MpW
0
просто не хочу помогать наглым и ленивым привередам. То это тебе не нравится, то другое и прочее. Кучу карт с наработками накидаешь
раскрыть
там где с зарядами, подправь еще or в наработке, а то криво работает
if GetItemTypeId(UnitItemInSlot(u,i)) == id or GetItemCharges(UnitItemInSlot(u,i)) == 5 then
на and
if GetItemTypeId(UnitItemInSlot(u,i)) == id and GetItemCharges(UnitItemInSlot(u,i)) == 5 then
Загруженные файлы
1
15
7 лет назад
1
Pandemic:
Artyom18, ну с такой позицией скоро объем твоей минусовой кармы перестанет помещаться под аватаром.
я не просиживаю все дни на пролёт в XGM
поэтому не успеваю обзавестись положительной "кармой"
да и встречаются тут такие как ты, с неверной точкой зрения.
если ты учишь, то будь добр показать как и наглядно решить задачу (принцип работы Учителей)
а ни просто написать и всё.
тем более редакторы у всех разные и русификаторы тоже. и не надо мне говорить: Учи Англ. мне на Русском как-то хорошо.
5
32
7 лет назад
5
Artyom18:
Pandemic:
Artyom18, ну с такой позицией скоро объем твоей минусовой кармы перестанет помещаться под аватаром.
я не просиживаю все дни на пролёт в XGM
поэтому не успеваю обзавестись положительной "кармой"
да и встречаются тут такие как ты, с неверной точкой зрения.
если ты учишь, то будь добр показать как и наглядно решить задачу (принцип работы Учителей)
а ни просто написать и всё.
тем более редакторы у всех разные и русификаторы тоже. и не надо мне говорить: Учи Англ. мне на Русском как-то хорошо.
Слушай чувак, тебе подробно написали как, а ты за старое сделайте мне... Там делать нечего, есть такое действие в гуи - сколько предметов N типа в инвентаре, в разделе целочисленное сравнение, если ты это не понял - завязывай с модмейкерством и иди играй в еще одну карту...
Руссификаторы = зло, сноси все нах, а лучше вовсе переезжай с гуи на jass, статей с примерами на эту тему пруд пруди, выучишь синтаксис хотябы сможешь копипастить чужие наработки.
11
6
7 лет назад
11
quq_CCCP, этот парень необучаемый же. Срач разводить конечно весело, но если человек встал в позу, мол ничего делать и учить не хочу, подать мне всё готовое:
То пусть себе стоит оплёванный всем сообществом и без каких-то даже малейших результатов на ниве картостроя.
Этот комментарий удален
0
27
7 лет назад
0
вот
Загруженные файлы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.