Здравствуйте, зарание извиняюсь, но как сделать триггерно чтобы герой покупал предметы? Я уже буквально весь сайт облазил и нативки смотрел и особенно вот это xgm.guru/p/wc3/warden-buyitem.
Но что-то ничего не понятно, гуглил на англоязычных сайтах там еще непонятнее. Мне бы лучше пример конкретный накидать, скажем, событие - Тралл подходит к лавке гоблина, и покупает свиток телепортации. Можно тригерами, можно написать через JASS. Главное именно с этими именами и названиями, Траллом и свитком, ну или с любыми другими, чтобы я как по шаблону понял куда свое подставить. Буду очень благодарен, если кто поможет.
Но что-то ничего не понятно, гуглил на англоязычных сайтах там еще непонятнее. Мне бы лучше пример конкретный накидать, скажем, событие - Тралл подходит к лавке гоблина, и покупает свиток телепортации. Можно тригерами, можно написать через JASS. Главное именно с этими именами и названиями, Траллом и свитком, ну или с любыми другими, чтобы я как по шаблону понял куда свое подставить. Буду очень благодарен, если кто поможет.
Принятый ответ
function BuyItem takes unit FromShop,integer ItemID,unit ToUnit returns boolean
if IssueNeutralTargetOrder(GetOwningPlayer(ToUnit), FromShop, "smart", ToUnit) or IssueTargetOrder(FromShop, "smart", ToUnit) then
return IssueNeutralImmediateOrderById(GetOwningPlayer(ToUnit), FromShop, ItemID) or IssueImmediateOrderById(FromShop, ItemID)
endif
return false
endfunction
function Trig_Pokupka_Conditions takes nothing returns boolean
if ( not ( GetTriggerUnit() == gg_unit_Othr_0049 ) ) then
return false
endif
return true
endfunction
function Trig_Pokupka_Actions takes nothing returns nothing
call BuyItem(ТВОЙ_МАГАЗ, ИД_СВИТКА, gg_unit_Othr_0049)
endfunction
===========================================================================
function InitTrig_Pokupka takes nothing returns nothing
set gg_trg_Pokupka = CreateTrigger( )
call TriggerRegisterUnitInRangeSimple( gg_trg_Pokupka, 256, gg_unit_ngme_0056 )
call TriggerAddCondition( gg_trg_Pokupka, Condition( function Trig_Pokupka_Conditions ) )
call TriggerAddAction( gg_trg_Pokupka, function Trig_Pokupka_Actions )
endfunction
Ван Рок, ты задал много хороших вопросов и если почитаешь статьи о Jass, то узнаешь на них ответ. В представленном виде это не триггер с условиями и ивентом, это просто функция, которую можно вызвать.
Вызывать можно и в гуи через кастом скрипт
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
if ( not ( GetTriggerUnit() == gg_unit_Othr_0049 ) ) then
return false
endif
return true
endfunction
call IssueImmediateOrderBJ( gg_unit_Othr_0049, "spiritwolf" )
endfunction
function InitTrig_Pokupka takes nothing returns nothing
set gg_trg_Pokupka = CreateTrigger( )
call TriggerRegisterUnitInRangeSimple( gg_trg_Pokupka, 256, gg_unit_ngme_0056 )
call TriggerAddCondition( gg_trg_Pokupka, Condition( function Trig_Pokupka_Conditions ) )
call TriggerAddAction( gg_trg_Pokupka, function Trig_Pokupka_Actions )
endfunction
Отредактирован Ван Рок
Отредактирован Borodach
Герой трал входит в область "магазин"
Если у игрока золота больше стоимости свитка
создать герою предмет свиток
Отнять у игрока золото