Пордон, там мой косяк. Давно на GUI не работал. Вот так верно.
теперь кастом скрипт таков
call UnitAddItemToSlotById(GetManipulatingUnit(),'id вашего предмета',GetForLoopIndexA()-1)
я просто предмет сравнивал с предметом (1=1?)
а надо было 1=x?
в общем щас правльно
карту еще прикрепил. С тебя "+"
Я же не бог. Не могу идеально интерпретировать, и понимать, перевод с переводчика.
Я со временем рихтую текстовой документ с переводом триггеров, да и сам запоминаю слова.
Но ещё раз говорю, я не бог. Не могу сразу выучить английский.
Ps. : Час убил.
Я хрен его знает откуда ты взял этот триггер. Но ни в "Тредмет ...", ни в "Герой ...", ни в "Боевая единица ..."я ничего такого не нашёл.
nvc,это можно было сделать на обычном Jass и не так помпезно ), но 10 секунд старания достойны плюсика. Щас я тебе на обычный Jass переведу
function ItemReplace takes unit a, item b ,integer d returns nothing
local integer c=5;
loop
if (UnitItemInSlot(a,c)==b)
call RemoveItem(b);
call UnitAddItemToSlotById(a,d,c)
set c=0;
endif
exitwhen c==0
set c=c-1
endloop
endfunction
Для того, чтобы ее использовать просто набери call ItemReplace(Юнит,итем,айдиитем)
айдиимет который нужно добавить
юнит-манипулитедюнит
итем-гетманипулитед
Я вот только не знаю, будет ли работать эта система если у героя 6> слотов
А на гуи это будет так
Строка кастом скрипта : call UnitAddItemToSlotById(GetManipulatingUnit(),'id вашего предмета',GetForLoopIndexA())
Будет работать или нет, я не знаю, но попробуй
Дик, во-первых, всё там влезает, просто каретку двигать надо. Во-вторых, ты серьезно хочешь использовать джасс вместо гуи??? Вот эту ересь вместо одной гуи-строчки?
ты нахер копируешь всю функцию :D
ты видешь как я тебе на гуи сделал? SomeFire:
Дик, во-первых, всё там влезает, просто каретку двигать надо. Во-вторых, ты серьезно хочешь использовать джасс вместо гуи??? Вот эту ересь вместо одной гуи-строчки?
я тебя не понимаю. GUI - это Jass, только с графическим интерфейсом и дебильным компилятором, утечками etc.
Пордон, там мой косяк. Давно на GUI не работал. Вот так верно.
теперь кастом скрипт таков
call UnitAddItemToSlotById(GetManipulatingUnit(),'id вашего предмета',GetForLoopIndexA()-1)
я просто предмет сравнивал с предметом (1=1?)
а надо было 1=x?
в общем щас правльно
карту еще прикрепил. С тебя "+"
EnergyFrost, конкретно в данном случае ты используешь кастомскрипт вместо обычного гуишного вызова, который при компиляции карты превращается в ту же самую строчку кода.
Более того, если уж ты считаешь, что такая смесь лучше чистого гуи - преобразуй триггер в чистый джасс. Довольно легко заметить, что примитивный цикл с условием там записан чересчур сложно.
EnergyFrost, конкретно в данном случае ты используешь кастомскрипт вместо обычного гуишного вызова, который при компиляции карты превращается в ту же самую строчку кода.
Более того, если уж ты считаешь, что такая смесь лучше чистого гуи - преобразуй триггер в чистый джасс. Довольно легко заметить, что примитивный цикл с условием там записан чересчур сложно.
Я знаю. Я просто не нашел такой нативы в gui списке и решил написать, как я предпочитаю
заносим в локалку
удаляем итем
добавляем артефакт в слот который записан в локалке
Ред. SANTIMEL
UnitAddItemToSlotById
хоть иногда список нативок смотри перед тем как вопросы задавать
Ред. SANTIMEL
Я со временем рихтую текстовой документ с переводом триггеров, да и сам запоминаю слова.
Но ещё раз говорю, я не бог. Не могу сразу выучить английский.
Я хрен его знает откуда ты взял этот триггер. Но ни в "Тредмет ...", ни в "Герой ...", ни в "Боевая единица ..."я ничего такого не нашёл.
nvc123, ты ему ещё какую-нибудь cjass систему напиши для этого.
Ред. nvc123
хорошая идея
эта функция заменяет предмет
Ред. EnergyFrost
function ItemReplace takes unit a, item b ,integer d returns nothing
local integer c=5;
loop
if (UnitItemInSlot(a,c)==b)
call RemoveItem(b);
call UnitAddItemToSlotById(a,d,c)
set c=0;
endif
exitwhen c==0
set c=c-1
endloop
endfunction
Для того, чтобы ее использовать просто набери call ItemReplace(Юнит,итем,айдиитем)
айдиимет который нужно добавить
юнит-манипулитедюнит
итем-гетманипулитед
Я вот только не знаю, будет ли работать эта система если у героя 6> слотов
А на гуи это будет так
Строка кастом скрипта : call UnitAddItemToSlotById(GetManipulatingUnit(),'id вашего предмета',GetForLoopIndexA())
Будет работать или нет, я не знаю, но попробуй
Ред. SANTIMEL
В графу "Значение" у кустом скрипта, не влезает этот скрипт
call UnitAddItemToSlotById(GetManipulatingUnit(),'id вашего предмета',GetForLoopIndexA())
ты видешь как я тебе на гуи сделал?
SomeFire: я тебя не понимаю. GUI - это Jass, только с графическим интерфейсом и дебильным компилятором, утечками etc.
Ред. SANTIMEL
call UnitAddItemToSlotById(GetManipulatingUnit(),'id вашего предмета',GetForLoopIndexA()-1)
я просто предмет сравнивал с предметом (1=1?)
а надо было 1=x?
в общем щас правльно
карту еще прикрепил. С тебя "+"
Более того, если уж ты считаешь, что такая смесь лучше чистого гуи - преобразуй триггер в чистый джасс. Довольно легко заметить, что примитивный цикл с условием там записан чересчур сложно.
Да и какая разница? Все ведь работает
Ред. SomeFire
EnergyFrost, тебе особенно "^_^"