vfinsider
offline
Опыт:
740Активность: |
Ссылаемся к функции
Как ссылатся к функции, которая находится в одном блоке триггера, из второго блока триггера. Например:
1 блок============================
function first takes ................. retrun ......
local ...... call ....... set ....... endfunction . . . 2 блок=============================
function second takes ............. return ........ local ...... call first(..) вот как раз тут и идет ссылка (как это реализовать?) set.... endfunction . . . |
22.05.2011, 19:07 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
alexprey
познающий Unity
offline
Опыт:
68,501Активность: |
vfinsider, так и пиши =) Но не факт что будет работать. Лучше это все реализовывать через библиотеки на vJass
|
22.05.2011, 19:09 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Nekit1234007
offline
Опыт:
11,916Активность: |
Используйте библиотеки vJass'a
|
22.05.2011, 19:10 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
library first
function first ... endlibrary library second requires first
function second ... call first(...) ... endlibrary. Пашет когда это в одном блоке написано. А я хочу все часто использумеые функции загнать все в один блок а походу ссылатся на них из других блоков ну что не заграможать весь код одними повторениями одних и тех же действий. |
22.05.2011, 19:21 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Nekit1234007
offline
Опыт:
11,916Активность: |
Вы проверили, прежде чем написать это? |
22.05.2011, 19:35 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
|
22.05.2011, 21:27 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
Как вы думаете последние версии доты писалась на vjass? Имхо больше нету способов реализовать ссылку к функциям находящиеся в отдельном блоке?
vfinsider добавил: Кстати сколько не пытался скачать не качает vJass. В чем дело может кто нить скинуть загрузить свой vJass, или дать ссылку где можно скачать? |
23.05.2011, 00:20 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
что за бред, вжасс не добавляет новых фич, все это реализуемо на стандарте, тот код, что выше вызывается кодом, что ниже, вжасс просто перемещает код библиотеки выше остального. сжасс не переделанный компилятор сжасс, это вообще не компилятор, а препроцессор. |
23.05.2011, 00:41 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FKoFF
Venomancer 89lvl. Europe
offline
Опыт:
5,975Активность: |
бредотема какая то, что мешает так и написать? по факту можешь триггер отдельный сделать, пихнуть его в самый верх, назвать, напирмер, "Libs_Ur_Lib", и туда загнать все свои функции для удобного использования.. |
23.05.2011, 04:56 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
Ссылаемся к функции 2
1 блок============================
function first takes ................. retrun ...... local ...... call ....... set ....... endfunction . . . 2 блок============================= function second takes ............. return ........ local ...... call FIRST(..) вот как раз тут и идет ссылка (как это реализовать?) set.... endfunction . . Это два разных блока!!! Т.е не находтся в одномо место. А при проверке карты компилятор пишет что функции "first" не сущетсвует хоть тот блок в котором находится функция "first" находится ВЫШЕ и ВКЛЮЧЕНА. Пробовал писать специально на чистой карте - такой способ не возможен. В чем может быть причина, или такое практическа не возможно? [+] замечание от Hanabishi: Дубль темы. Нельзя чтоли попросить старую открыть?
|
24.05.2011, 19:50 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Clamp
Lost in space
offline
Опыт:
71,258Активность: |
код обоих блоков сюда, полюбому у тебя регистр неверно стоит где нибудь. |
24.05.2011, 20:03 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
Всмысле регистр?
p.s Пожалуйста приведи пример в карте или хоть тут, буду благодарен. vfinsider добавил:
Ну вот например. Тоже не пашет. В ОДНОМ БЛОКЕ==========================
function Trig_qwe1_Actions takes unit u returns nothing
call KillUnit( u) endfunction function InitTrig_qwe1 takes nothing returns nothing
endfunction В ДРУГОМ БЛОКЕ==========================
function Trig_qwe2_Actions takes nothing returns nothing
call Trig_qwe1_Actions( GetTriggerUnit() ) endfunction function InitTrig_qwe2 takes nothing returns nothing set gg_trg_qwe2 = CreateTrigger( ) call TriggerRegisterEnterRectSimple( gg_trg_qwe2, gg_rct_000 ) call TriggerAddAction( gg_trg_qwe2, function Trig_qwe2_Actions ) endfunction Отредактировано vfinsider, 25.05.2011 в 17:11. |
25.05.2011, 16:50 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
В ОДНОМ БЛОКЕ==========================
function Trig_qwe1_Actions takes unit u returns nothing
call KillUnit( u ) endfunction function InitTrig_qwe1 takes nothing returns nothing
endfunction В ДРУГОМ БЛОКЕ==========================
function Trig_qwe2_Actions takes nothing returns nothing
call Trig_qwe1_Actions( GetTriggerUnit() ) ПИШЕТ ЧТО НЕТУ ТАКОЙ ФУНКЦИИ "Trig_qwe1_Actions" endfunction function InitTrig_qwe2 takes nothing returns nothing
set gg_trg_qwe2 = CreateTrigger( ) call TriggerRegisterEnterRectSimple( gg_trg_qwe2, gg_rct_000 ) call TriggerAddAction( gg_trg_qwe2, function Trig_qwe2_Actions ) endfunction да это не влияет он даже не дошла до этой функции
а пример как раз тот которые нужен чтоб показать в чем ошибка |
25.05.2011, 17:09 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
vfinsider, ну помести верхний код в library. |
25.05.2011, 17:17 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
без vjass можно? |
25.05.2011, 17:24 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
помести в custom code. |
25.05.2011, 17:27 | #16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
Не совсем понятно напиши пример |
25.05.2011, 17:35 | #17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
сверху списка триггеров иконка карты, нажми на нее - открывшееся поле для кода - custom code. |
25.05.2011, 17:40 | #18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
vfinsider
offline
Опыт:
740Активность: |
Гениально как всегда просто. Вот какой мне ответ был нужен. Огромное спасибо. |
25.05.2011, 17:50 | #19
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|