[Статья]Упрощение в создании мультибоарда
|
|
Glaber | Дата: Понедельник, 29.08.2011, 21:05 | Сообщение # 1 |
| Автор:F@lk В этой статье я расскажу как облегчить и уменьшить затраченное время и силы в создании мультибоарда. Сначала обьясню на GUI Для начала создадим переменную у меня это GUIMB(целочисленная) И переменную MB - тип меню паузы(мультибоард) После сделаем тригер с событием о прошествии 5 секунд Действие - Создать меню паузы с 6 рядами и 6 колонками с названием GUI Занесем его в переменную MB После сделаем цикл который повторяется 7 раз в цикле действие - В MB показать текст и показать изображение в колонке GUIMB ряду 1 В MB ширина ячейки 1 ряда 1 4% Установить GUIMB = GUIMB + 1 Тем самым мы получим что вместо 6 строк мы сделали всего 2 и в колонке 1 весь ряд будет показывать и иконку и текст.. Делаем так же со всеми остальными рядами.. Вместо мороки с каждым рядом и строкой мы сделали все гораздо легче и быстрее Далее(пример) как добавить например иконку в эти столбцы Делаем все так же Но в дествии заставляем показывать иконку у меня это иконка из раздела предметы Таким образом вы уже и сами сможете добавить текст и прочее в МБ... JASS Код создания мультибоарда(с расширением ячеек и с показанием текста и иконки(как на гуе)) Code function Trig_Created_Actions takes nothing returns nothing local integer i = 0 local integer q = 1 local integer w = 1 call CreateMultiboardBJ( 5, 6, "TRIGSTR_066" ) set udg_MB = GetLastCreatedMultiboard()
loop exitwhen i > 7 call MultiboardSetItemStyleBJ( GetLastCreatedMultiboard(), q, w, true, true ) call MultiboardSetItemWidthBJ( GetLastCreatedMultiboard(), q, w, 9.00 ) set w = w + 1 set i=i+1 endloop
call TriggerSleepAction(0.10) set i=0 set w=1 set q = q + 1 loop exitwhen i > 7 call MultiboardSetItemStyleBJ( GetLastCreatedMultiboard(), q, w, true, true ) call MultiboardSetItemWidthBJ( GetLastCreatedMultiboard(), q, w, 8.00 ) set w = w + 1 set i=i+1 endloop //----------------------------------------------
call TriggerSleepAction(0.10) set i=0 set w=1 set q = q + 1 loop exitwhen i > 7 call MultiboardSetItemStyleBJ( GetLastCreatedMultiboard(), q, w, true, true ) call MultiboardSetItemWidthBJ( GetLastCreatedMultiboard(), q, w, 4.00 ) set w = w + 1 set i=i+1 endloop
call TriggerSleepAction(0.10) set i=0 set w=1 set q = q + 1 loop exitwhen i > 7 call MultiboardSetItemStyleBJ( GetLastCreatedMultiboard(), q, w, true, true ) call MultiboardSetItemWidthBJ( GetLastCreatedMultiboard(), q, w, 4.00 ) set w = w + 1 set i=i+1 endloop //------------------------------------------------
call TriggerSleepAction(0.10) set i=0 set w=1 set q = q + 1 loop exitwhen i > 7 call MultiboardSetItemStyleBJ( GetLastCreatedMultiboard(), q, w, true, true ) call MultiboardSetItemWidthBJ( GetLastCreatedMultiboard(), q, w, 4.00 ) set w = w + 1 set i=i+1 endloop
call TriggerSleepAction(0.10) set i=0 set w=1 set q = q + 1 loop exitwhen i > 7 call MultiboardSetItemStyleBJ( GetLastCreatedMultiboard(), q, w, true, true ) call MultiboardSetItemWidthBJ( GetLastCreatedMultiboard(), q, w, 4.00 ) set w = w + 1 set i=i+1 endloop //======================================================= endfunction
//=========================================================================== function InitTrig_Created takes nothing returns nothing set gg_trg_Created = CreateTrigger( ) call TriggerRegisterTimerEventSingle( gg_trg_Created, 1.00 ) call TriggerAddAction( gg_trg_Created, function Trig_Created_Actions ) endfunction
Это заставит в 1 колонке в 6 рядах показывать имена игроков
Code function Trig_Txt_Actions takes nothing returns nothing local integer pr = 0 local integer i = 0 local integer q = 1 local integer w = 1 loop exitwhen i>7 call MultiboardSetItemValueBJ( udg_MB, q, w, GetPlayerName(Player(pr)) ) set pr=pr+1 set i=i+1 set w=w+1 endloop endfunction
//=========================================================================== function InitTrig_Txt takes nothing returns nothing set gg_trg_Txt = CreateTrigger( ) call TriggerRegisterTimerEventSingle( gg_trg_Txt, 7.00 ) call TriggerAddAction( gg_trg_Txt, function Trig_Txt_Actions ) endfunction
Показывает кол-во килов совершонных героем и его лвл Code function Trig_TTTT_Actions takes nothing returns nothing local integer pr = 0 local integer i = 0 local integer e = 1 local integer q = 1 local integer w = 1 local integer ee = 0 local integer c1 = 0 local integer c2 = 0 local integer c3 = 0 loop exitwhen ee > 6 call MultiboardSetItemValueBJ( udg_MB, 4, e, I2S(udg_Kill[pr]) ) call MultiboardSetItemValueBJ( udg_MB, 5, e, I2S(udg_De[pr]) ) set pr=pr+1 set ee=ee+1 set e = e + 1 endloop call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 2, 1, GetHeroProperName(udg_A) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 2, 2, GetHeroProperName(udg_B) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 2, 3, GetHeroProperName(udg_C) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 2, 4, GetHeroProperName(udg_D) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 2, 5, GetHeroProperName(udg_E) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 2, 6, GetHeroProperName(udg_K) )
loop exitwhen i>6 set c1 = 100 set c2 = 50 set c3 = 25 call MultiboardSetItemColorBJ( udg_MB, q, w, c1, c2, c3, 0 ) set i=i+1 set w = w + 1 endloop set w = 0 set i = 0 set q = q + 1 loop exitwhen i>6 set c1 = 100 set c2 = 50 set c3 = 25 call MultiboardSetItemColorBJ( udg_MB, q, w, c1, c2, c3, 0 ) set i=i+1 set w = w + 1 endloop set w = 0 set i = 0 set q = q + 1 loop exitwhen i>6 set c1 = 100 set c2 = 50 set c3 = 25 call MultiboardSetItemColorBJ( udg_MB, q, w, c1, c2, c3, 0 ) set i=i+1 set w = w + 1 endloop call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 3, 1, I2S(GetUnitLevel(udg_A)) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 3, 2, I2S(GetUnitLevel(udg_B)) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 3, 3, I2S(GetUnitLevel(udg_C)) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 3, 4, I2S(GetUnitLevel(udg_D)) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 3, 5, I2S(GetUnitLevel(udg_E)) ) call MultiboardSetItemValueBJ( GetLastCreatedMultiboard(), 3, 6, I2S(GetUnitLevel(udg_K)) ) endfunction
//=========================================================================== function InitTrig_TTTT takes nothing returns nothing set gg_trg_TTTT = CreateTrigger( ) call TriggerRegisterTimerEventPeriodic( gg_trg_TTTT, 1.00 ) call TriggerAddAction( gg_trg_TTTT, function Trig_TTTT_Actions ) endfunction Иконки в 1-й из ряда дополнительно мечь 2-я иконка хз)) 3-я это иконка плюсика(желтого) и т.д
Code function Trig_Ic_Actions takes nothing returns nothing local integer i = 0 local integer w = 0 loop exitwhen i > 6 call MultiboardSetItemIconBJ( udg_MB, 1, w, "ReplaceableTextures\\WorldEditUI\\Editor-Force.blp" ) call MultiboardSetItemIconBJ( udg_MB, 2, w, "ReplaceableTextures\\WorldEditUI\\Editor-Ally-NoPriority.blp" ) call MultiboardSetItemIconBJ( udg_MB, 3, w, "ReplaceableTextures\\CommandButtons\\BTNStatUp.blp" ) call MultiboardSetItemIconBJ( udg_MB, 4, w, "ReplaceableTextures\\CommandButtons\\BTNShamanMaster.blp" ) call MultiboardSetItemIconBJ( udg_MB, 5, w, "ReplaceableTextures\\CommandButtons\\BTNImprovedUnholyStrength.blp" ) set w =w + 1 set i=i+1 endloop endfunction
//=========================================================================== function InitTrig_Ic takes nothing returns nothing set gg_trg_Ic = CreateTrigger( ) call TriggerRegisterTimerEventSingle( gg_trg_Ic, 7.00 ) call TriggerAddAction( gg_trg_Ic, function Trig_Ic_Actions ) endfunction
Карта пример внизу П.С мой следуший проэкт
|
|
| | | | |
Glaber | Дата: Понедельник, 29.08.2011, 21:28 | Сообщение # 5 |
| Quote (UZzip) Кто работал с циклом тот знал Ахах , все (ну почьти) работали с циклами , но не все додумывались как его использовать еще можно....
|
|
| | | | |
Glaber | Дата: Понедельник, 29.08.2011, 21:55 | Сообщение # 9 |
| UZzip, >_< найду скину епт...)))
|
|
| |
qwertyuiop | Дата: Среда, 25.01.2012, 21:57 | Сообщение # 10 |
| Да он использовал ) но там менее понятно чем тут ) спс Фалк
Есть два вида шпор мой друг, одни входят через дверь , другие через окно...
|
|
| |
|
|