21

» WarCraft 3 / иконки

удали war3important и подпиши
ReplaceableTextures\CommandButtonsDisabled\DISBTN****
( вместо звездочек - имя твоей картинки disbtn)
21

» WarCraft 3 / Модели оружия

Да удали его нафиг через mdlvis
и меняй оружие через сферу молнии
21

» WarCraft 3 / Помогите скачать

Да ну нафиг - там какой то exe файл скачивается - так только вирусы передают.
Лучшие модели для варкрафта на Хайве и Xgm!))
21

» WarCraft 3 / Zyxel hero siege Пришло время узнать все !

ssbbssc:
SсRealm:
ты упоролся? засунь все под спойлер!
Ну что не так , я просто хочу узнать,что означает этот код?
Все такие умные, великие айсфроггеры,но разобраться со скриптом никто не может
21

» WarCraft 3 / Где -то видел в обсуждении но не могу сейчас найти

Darknessay:
"под ногами" - это где? Либо добавь магазину способность "выбор героя", чтобы он не выбрасывал итемы, а клал в инвентарь, либо книге дай свойства руны и галочку "используется сразу"(если ты имеешь ввиду те книги, о которых я думаю)
Любая книга не изчезает, а уменьшается и валяется маааааленькая.
Несколько вопросов назад я видел как кто то писал функцию,как ее убрать,но что то не могу найти
Теперь новая проблемма - если дать ей свойства руны - то действия в триггере,после при приобретения это книги не защитыватся .Только если убрать у нее свойства руны.Что за фигня?
21

» WarCraft 3 / Zyxel hero siege Пришло время узнать все !

Naadir:
А там именно диалоговое окно открывается или моделька диалогового окна?
Диалоговое окно.Там открывается и нажимаешь на кнопки - от них добавляется сила разум лоскость или здоровье - только там тупо сделано через книжки и я не пойму ,зачем проигрывать триггер который ничего не делает,вместо того что бы просто ничего не делать?
И зачем нужен этот СКРИПТ?
Ладно, просто расскажите ,для чего вот это, раз никто не хочет открывать карту
Code

//SuperIKI's Dialog Engine v3.0

//     enjoy!


//For help on the dialog engine, go to http://www.superiki.de/war3/
//For help on the optional variables, get the sample map from the website
//and look at the trigger 'How to use the dialog engine'

  // Optional variable 'GetLastClicker'
function setGetLastClicker takes player p returns nothing
    set udg_GetLastClicker=p
endfunction


  // Optional variable 'GetLastClickedButtonIndex'
function setGetLastClickedButtonIndex takes integer i returns nothing
    set udg_GetLastClickedButtonIndex=i
endfunction


  // Optional variable 'DialogString'
function getDialogString takes integer i returns string
    return udg_DialogString[i]
//    return ""
endfunction
function setDialogString takes integer i, string s returns nothing
    set udg_DialogString[i]=s
endfunction


  // Optional variable 'dialoginput_buttontext'
function getdialoginput_buttontext takes integer i returns string
    return udg_dialoginput_buttontext[i]
//    return ""
endfunction
function setdialoginput_buttontext takes integer i, string s returns nothing
    set udg_dialoginput_buttontext[i]=s
endfunction


  // Optional variable 'dialoginput_clickedtrigger'
function getdialoginput_clickedtrigger takes integer i returns trigger
    return udg_dialoginput_clickedtrigger[i]
//    return null
endfunction
function setdialoginput_clickedtrigger takes integer i, trigger t returns nothing
    set udg_dialoginput_clickedtrigger[i]=t
endfunction


  // Optional variable 'dialoginput_hotkey'
function getdialoginput_hotkey takes integer i returns string
    return udg_dialoginput_hotkey[i]
//    return ""
endfunction
function setdialoginput_hotkey takes integer i, string s returns nothing
    set udg_dialoginput_hotkey[i]=s
endfunction


  // Optional variable 'dialoginput_playerswhocansee'
function getdialoginput_playerswhocansee takes nothing returns force
    return udg_dialoginput_playerswhocansee
//    return null
endfunction
function setdialoginput_playerswhocansee takes force f returns nothing
    set udg_dialoginput_playerswhocansee=f
endfunction


  // Optional variable 'dialoginput_title'
function getdialoginput_title takes nothing returns string
    return udg_dialoginput_title
//    return ""
endfunction
function setdialoginput_title takes string s returns nothing
    set udg_dialoginput_title=s
endfunction


  // Optional variable 'dialoginput_buttoncount'
function getdialoginput_buttoncount takes nothing returns integer
    return udg_dialoginput_buttoncount
//    return 0
endfunction
function setdialoginput_buttoncount takes integer i returns nothing
    set udg_dialoginput_buttoncount=i
endfunction


//  That's it. No more optional variables.
//  You don't need further on. Take care for your eyes :)



//______________________________ The End _______________________________


function endlessremover takes nothing returns nothing
    loop
        call TriggerSleepAction( 1 )
        exitwhen GetTriggerExecCount(GetTriggeringTrigger()) > 1
    endloop
    call TriggerSleepAction( 2 )
    call DestroyTrigger(GetTriggeringTrigger())
endfunction

function endlessloop takes nothing returns nothing
    local trigger clicked
    local string clickedstring
    local player clicker
    local integer buttonindex
    local trigger removeloops
    if GetTriggerExecCount(GetTriggeringTrigger())==1 then

        set clicked=bj_meleeVisibilityTrained
        set clickedstring=bj_cineFadeContinueTex
        set clicker=bj_groupEnumOwningPlayer
        set buttonindex=bj_groupEnumTypeId
        set removeloops=bj_cineSceneBeingSkipped

        loop
            call TriggerSleepAction( 0.1 )
            exitwhen GetTriggerExecCount(GetTriggeringTrigger()) > 1
            exitwhen GetTriggerExecCount(removeloops) > 1
        endloop
        if GetTriggerExecCount(GetTriggeringTrigger()) > 1 then
            call setGetLastClicker(clicker)
            call setGetLastClickedButtonIndex(buttonindex)
            if clicked!=null then
                call TriggerExecute(clicked)
            elseif clickedstring!="" then
                call ExecuteFunc(clickedstring)
            endif
            call TriggerExecute(removeloops)
        endif
        call DestroyTrigger(GetTriggeringTrigger())
    endif
endfunction

function ResetDialogStuff takes nothing returns nothing
    local integer i=0
    loop
        exitwhen i==13 //!!! 0-12
        call setDialogString(i,"")
        set i=i+1
    endloop
    set i=0
    loop
        exitwhen i==12
        call setdialoginput_buttontext(i,"")
        call setdialoginput_clickedtrigger(i,null)
        call setdialoginput_hotkey(i,"")
        set i=i+1
    endloop
    call setdialoginput_playerswhocansee(null)
    call setdialoginput_title("")
    call setdialoginput_buttoncount(0)
endfunction

function buttontriggerstringf takes integer i returns string
    return getDialogString(i+1)
endfunction

function DialogEngine_CreateDialog takes integer pid, string title, string bt0, string bt1, string bt2, string bt3, string bt4, string bt5, string bt6, string bt7, string bt8, string bt9, string bt10, string bt11, trigger btr0, trigger btr1, trigger btr2, trigger btr3, trigger btr4, trigger btr5, trigger btr6, trigger btr7, trigger btr8, trigger btr9, trigger btr10, trigger btr11 returns nothing
    local dialog d
    local integer i=0
    local string array bt
    local trigger array btr
    local string array btrstring
    local integer array bh
    local trigger trg
    local trigger loopremover
    set bt[ 0]=bt0
    set bt[ 1]=bt1
    set bt[ 2]=bt2
    set bt[ 3]=bt3
    set bt[ 4]=bt4
    set bt[ 5]=bt5
    set bt[ 6]=bt6
    set bt[ 7]=bt7
    set bt[ 8]=bt8
    set bt[ 9]=bt9
    set bt[10]=bt10
    set bt[11]=bt11
    set btr[ 0]=btr0
    set btr[ 1]=btr1
    set btr[ 2]=btr2
    set btr[ 3]=btr3
    set btr[ 4]=btr4
    set btr[ 5]=btr5
    set btr[ 6]=btr6
    set btr[ 7]=btr7
    set btr[ 8]=btr8
    set btr[ 9]=btr9
    set btr[10]=btr10
    set btr[11]=btr11
    set btrstring[ 0]=buttontriggerstringf(0)
    set btrstring[ 1]=buttontriggerstringf(1)
    set btrstring[ 2]=buttontriggerstringf(2)
    set btrstring[ 3]=buttontriggerstringf(3)
    set btrstring[ 4]=buttontriggerstringf(4)
    set btrstring[ 5]=buttontriggerstringf(5)
    set btrstring[ 6]=buttontriggerstringf(6)
    set btrstring[ 7]=buttontriggerstringf(7)
    set btrstring[ 8]=buttontriggerstringf(8)
    set btrstring[ 9]=buttontriggerstringf(9)
    set btrstring[10]=buttontriggerstringf(10)
    set btrstring[11]=buttontriggerstringf(11)
    set bh[ 0]=bj_randDistID[ 0]
    set bh[ 1]=bj_randDistID[ 1]
    set bh[ 2]=bj_randDistID[ 2]
    set bh[ 3]=bj_randDistID[ 3]
    set bh[ 4]=bj_randDistID[ 4]
    set bh[ 5]=bj_randDistID[ 5]
    set bh[ 6]=bj_randDistID[ 6]
    set bh[ 7]=bj_randDistID[ 7]
    set bh[ 8]=bj_randDistID[ 8]
    set bh[ 9]=bj_randDistID[ 9]
    set bh[10]=bj_randDistID[10]
    set bh[11]=bj_randDistID[11]
    set d=udg_Dialog[pid]
    call DialogClear(d)
    call DialogSetMessage(d,title)
    set loopremover=CreateTrigger()
    call TriggerAddAction( loopremover, function endlessremover )
    call TriggerExecute(loopremover)
    loop
        exitwhen bt[i]==""
        exitwhen i>=12
        set trg=CreateTrigger()

        set bj_meleeVisibilityTrained=btr[i]
        set bj_cineFadeContinueTex=btrstring[i]
        set bj_groupEnumOwningPlayer=Player(pid)
        set bj_groupEnumTypeId=i
        set bj_cineSceneBeingSkipped=loopremover

        call TriggerAddAction( trg, function endlessloop )
        call TriggerExecute(trg)
        call TriggerRegisterDialogButtonEvent( trg, DialogAddButton( d, bt[i], bh[i] ) )
        set i=i+1
    endloop
    call ResetDialogStuff()
    call DialogDisplay(Player(pid), d, true)
endfunction

function MakeDialog12 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5, string title6, trigger trig6, string title7, trigger trig7, string title8, trigger trig8, string title9, trigger trig9, string title10, trigger trig10, string title11, trigger trig11 returns nothing
    call DialogEngine_CreateDialog(pid,dialogtitle, title0, title1, title2, title3, title4, title5, title6, title7, title8, title9, title10, title11, trig0, trig1, trig2, trig3, trig4, trig5, trig6, trig7, trig8, trig9, trig10, trig11 )
endfunction

function MakeDialog11 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5, string title6, trigger trig6, string title7, trigger trig7, string title8, trigger trig8, string title9, trigger trig9, string title10, trigger trig10 returns nothing
    call MakeDialog12(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, title7,trig7, title8,trig8, title9,trig9, title10,trig10, "",null )
endfunction

function MakeDialog10 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5, string title6, trigger trig6, string title7, trigger trig7, string title8, trigger trig8, string title9, trigger trig9 returns nothing
    call MakeDialog11(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, title7,trig7, title8,trig8, title9,trig9, "",null )
endfunction

function MakeDialog9 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5, string title6, trigger trig6, string title7, trigger trig7, string title8, trigger trig8 returns nothing
    call MakeDialog10(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, title7,trig7, title8,trig8, "",null )
endfunction

function MakeDialog8 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5, string title6, trigger trig6, string title7, trigger trig7 returns nothing
    call MakeDialog9(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, title7,trig7, "",null )
endfunction

function MakeDialog7 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5, string title6, trigger trig6 returns nothing
    call MakeDialog8(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, "",null )
endfunction

function MakeDialog6 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4, string title5, trigger trig5 returns nothing
    call MakeDialog7(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, "",null )
endfunction

function MakeDialog5 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3, string title4, trigger trig4 returns nothing
    call MakeDialog6(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, "",null )
endfunction

function MakeDialog4 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2, string title3, trigger trig3 returns nothing
    call MakeDialog5(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, "",null )
endfunction

function MakeDialog3 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1, string title2, trigger trig2 returns nothing
    call MakeDialog4(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, "",null )
endfunction

function MakeDialog2 takes integer pid, string dialogtitle, string title0, trigger trig0, string title1, trigger trig1 returns nothing
    call MakeDialog3(pid,dialogtitle, title0,trig0, title1,trig1, "",null )
endfunction

function MakeDialog1 takes integer pid, string dialogtitle, string title0, trigger trig0 returns nothing
    call MakeDialog2(pid,dialogtitle, title0,trig0, "",null )
endfunction

function clearHotkeys takes nothing returns nothing
    local integer i=0
    loop
        exitwhen i==12
        set bj_randDistID[i]=0
        set i=i+1
    endloop
endfunction

function setHotkeys takes integer hotkey0, integer hotkey1, integer hotkey2, integer hotkey3, integer hotkey4, integer hotkey5, integer hotkey6, integer hotkey7, integer hotkey8, integer hotkey9, integer hotkey10, integer hotkey11 returns nothing
    call clearHotkeys()
    set bj_randDistID[0]=hotkey0
    set bj_randDistID[1]=hotkey1
    set bj_randDistID[2]=hotkey2
    set bj_randDistID[3]=hotkey3
    set bj_randDistID[4]=hotkey4
    set bj_randDistID[5]=hotkey5
    set bj_randDistID[6]=hotkey6
    set bj_randDistID[7]=hotkey7
    set bj_randDistID[8]=hotkey8
    set bj_randDistID[9]=hotkey9
    set bj_randDistID[10]=hotkey10
    set bj_randDistID[11]=hotkey11
endfunction

function MakeDialog9h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2, string title3, trigger trig3, integer hot3, string title4, trigger trig4, integer hot4, string title5, trigger trig5, integer hot5, string title6, trigger trig6, integer hot6, string title7, trigger trig7, integer hot7, string title8, trigger trig8, integer hot8 returns nothing
    call setHotkeys(hot0, hot1, hot2, hot3, hot4, hot5, hot6, hot7, hot8, 0,0,0)
    call MakeDialog9(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, title7,trig7, title8,trig8 )
endfunction

function MakeDialog8h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2, string title3, trigger trig3, integer hot3, string title4, trigger trig4, integer hot4, string title5, trigger trig5, integer hot5, string title6, trigger trig6, integer hot6, string title7, trigger trig7, integer hot7 returns nothing
    call setHotkeys(hot0, hot1, hot2, hot3, hot4, hot5, hot6, hot7, 0,0,0,0)
    call MakeDialog8(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6, title7,trig7 )
endfunction

function MakeDialog7h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2, string title3, trigger trig3, integer hot3, string title4, trigger trig4, integer hot4, string title5, trigger trig5, integer hot5, string title6, trigger trig6, integer hot6 returns nothing
    call setHotkeys(hot0, hot1, hot2, hot3, hot4, hot5, hot6, 0,0,0,0,0)
    call MakeDialog7(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5, title6,trig6 )
endfunction

function MakeDialog6h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2, string title3, trigger trig3, integer hot3, string title4, trigger trig4, integer hot4, string title5, trigger trig5, integer hot5 returns nothing
    call setHotkeys(hot0, hot1, hot2, hot3, hot4, hot5, 0,0,0,0,0,0)
    call MakeDialog6(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4, title5,trig5 )
endfunction

function MakeDialog5h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2, string title3, trigger trig3, integer hot3, string title4, trigger trig4, integer hot4 returns nothing
    call setHotkeys(hot0, hot1, hot2, hot3, hot4, 0,0,0,0,0,0,0)
    call MakeDialog5(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3, title4,trig4 )
endfunction

function MakeDialog4h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2, string title3, trigger trig3, integer hot3 returns nothing
    call setHotkeys(hot0, hot1, hot2, hot3, 0,0,0,0,0,0,0,0)
    call MakeDialog4(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2, title3,trig3 )
endfunction

function MakeDialog3h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1, string title2, trigger trig2, integer hot2 returns nothing
    call setHotkeys(hot0, hot1, hot2, 0,0,0,0,0,0,0,0,0)
    call MakeDialog3(pid,dialogtitle, title0,trig0, title1,trig1, title2,trig2 )
endfunction

function MakeDialog2h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0, string title1, trigger trig1, integer hot1 returns nothing
    call setHotkeys(hot0, hot1, 0,0,0,0,0,0,0,0,0,0)
    call MakeDialog2(pid,dialogtitle, title0,trig0, title1,trig1 )
endfunction

function MakeDialog1h takes integer pid, string dialogtitle, string title0, trigger trig0, integer hot0 returns nothing
    call setHotkeys(hot0, 0,0,0,0,0,0,0,0,0,0,0)
    call MakeDialog1(pid,dialogtitle, title0,trig0 )
endfunction

function MakeDialog takes integer pid, string dialogtitle, string title0, string title1, string title2, string title3, string title4, trigger trig0, trigger trig1, trigger trig2, trigger trig3, trigger trig4, integer hot0, integer hot1, integer hot2, integer hot3, integer hot4 returns nothing
    call MakeDialog5h(pid,dialogtitle, title0,trig0,hot0, title1,trig1,hot1, title2,trig2,hot2, title3,trig3,hot3, title4,trig4,hot4 )
endfunction


function clearTriggerStrings takes nothing returns nothing
    local integer i=0
    loop
        exitwhen i==12
        call setDialogString(i,"")
        set i=i+1
    endloop
endfunction

function setTriggerStrings takes string s0, string s1, string s2, string s3, string s4, string s5, string s6, string s7, string s8, string s9, string s10, string s11 returns nothing
    call clearTriggerStrings()
    call setDialogString(1,s0)
    call setDialogString(2,s1)
    call setDialogString(3,s2)
    call setDialogString(4,s3)
    call setDialogString(5,s4)
    call setDialogString(6,s5)
    call setDialogString(7,s6)
    call setDialogString(8,s7)
    call setDialogString(9,s8)
    call setDialogString(10,s9)
    call setDialogString(11,s10)
    call setDialogString(12,s11)
endfunction

function MakeDialog12S takes integer pid, string title, string buttontitle0, string buttontitle1, string buttontitle2, string buttontitle3, string buttontitle4, string buttontitle5, string buttontitle6, string buttontitle7, string buttontitle8, string buttontitle9, string buttontitle10, string buttontitle11, string buttontriggerstring0, string buttontriggerstring1, string buttontriggerstring2, string buttontriggerstring3, string buttontriggerstring4, string buttontriggerstring5, string buttontriggerstring6, string buttontriggerstring7, string buttontriggerstring8, string buttontriggerstring9, string buttontriggerstring10, string buttontriggerstring11 returns nothing
    call setTriggerStrings(buttontriggerstring0,buttontriggerstring1,buttontriggerstring2,buttontriggerstring3,buttontriggerstring4,buttontriggerstring5,buttontriggerstring6,buttontriggerstring7,buttontriggerstring8,buttontriggerstring9,buttontriggerstring10,buttontriggerstring11)
    call DialogEngine_CreateDialog(pid,title, buttontitle0, buttontitle1, buttontitle2, buttontitle3, buttontitle4, buttontitle5, buttontitle6, buttontitle7, buttontitle8, buttontitle9, buttontitle10, buttontitle11, null,null,null,null,null,null,null,null,null,null,null,null )
endfunction

function hotkeystring2int takes string s returns integer
    local string array a
    local string array b
    local integer i

    set a[48]="0"
    set a[49]="1"
    set a[50]="2"
    set a[51]="3"
    set a[52]="4"
    set a[53]="5"
    set a[54]="6"
    set a[55]="7"
    set a[56]="8"
    set a[57]="9"

    set b[65]="A"
    set b[66]="B"
    set b[67]="C"
    set b[68]="D"
    set b[69]="E"
    set b[70]="F"
    set b[71]="G"
    set b[72]="H"
    set b[73]="I"
    set b[74]="J"
    set b[75]="K"
    set b[76]="L"
    set b[77]="M"
    set b[78]="N"
    set b[79]="O"
    set b[80]="P"
    set b[81]="Q"
    set b[82]="R"
    set b[83]="S"
    set b[84]="T"
    set b[85]="U"
    set b[86]="V"
    set b[87]="W"
    set b[88]="X"
    set b[89]="Y"
    set b[90]="Z"

    set i=48
    loop
        exitwhen i>90
        if i==58 then
            set i=65
        endif
        if a[i]==s then
            return i
        endif
        if i>=64 and i<=90 and b[i]==s then
            return i
        endif
        set i=i+1
    endloop
    if s=="@" then
        return 512
    endif
    return 0
endfunction

function DialogEngine_executeString takes string param returns nothing
    local integer buttoncount=1
    local string array buttontexts
    local string array triggertexts
    local string array hotkeys
    local integer array ihotkeys
    local integer pindex
    local string title=""

    local string s=param
    local string s2=""
    local string c
    local integer i
    local integer BUTTONTEXT=0
    local integer TRIGGERTEXT=1
    local integer PLAYERINDEXTEXT=2
    local integer TITLETEXT=3
    local integer mode=PLAYERINDEXTEXT
    local boolean nextisspecial=false
    local boolean nextishotkey=false

    set i=0
    loop
        exitwhen i==12
        set buttontexts[i]=""
        set triggertexts[i]=""
        set hotkeys[i]=""
        set i=i+1
    endloop

    set i=1
    loop
        set c=SubStringBJ(s,i,i)
        exitwhen c==""
        if nextishotkey then
            set hotkeys[buttoncount-1]=c
            if c!="@" then
                set c="|c00ffffff"+c+"|r"
            else
                set c=""
            endif
            set nextishotkey=false
        endif
        if nextisspecial then
            set nextisspecial=false
            if c=="h" then
                set c=""
                set nextishotkey=true
            else
                set c="|"+c
            endif
        endif
        if c=="|" and mode==BUTTONTEXT then
            set c=""
            set nextisspecial=true
        endif
        if c==" " and mode==TRIGGERTEXT then
            set c="_"
        endif
        if c=="=" and mode==BUTTONTEXT then
            set buttontexts[buttoncount-1]=s2
            set c=""
            set s2=""
            set mode=TRIGGERTEXT
        endif
        if c==";" and mode==TRIGGERTEXT then
            set triggertexts[buttoncount-1]=s2
            set c=""
            set s2=""
            set mode=BUTTONTEXT
            set buttoncount=buttoncount+1
        endif
        if c==":" and mode==PLAYERINDEXTEXT then
            set pindex=S2I(s2)-1
            set c=""
            set s2=""
            set mode=TITLETEXT
        endif
        if c==":" and mode==TITLETEXT then
            set title=s2
            set c=""
            set s2=""
            set mode=BUTTONTEXT
        endif
        set s2=s2+c
        set i=i+1
    endloop
    set triggertexts[buttoncount-1]=s2
    set i=0
    loop
        exitwhen i>=buttoncount
        set triggertexts[i]="Trig_"+triggertexts[i]+"_Actions"
        set i=i+1
    endloop

    set i=0
    loop
        exitwhen i==12
        set ihotkeys[i]=hotkeystring2int(hotkeys[i])
        set i=i+1
    endloop

    call setHotkeys( ihotkeys[0], ihotkeys[1], ihotkeys[2], ihotkeys[3], ihotkeys[4], ihotkeys[5], ihotkeys[6], ihotkeys[7], ihotkeys[8], ihotkeys[9], ihotkeys[10], ihotkeys[11] )

    call MakeDialog12S(pindex,title, buttontexts[0], buttontexts[1], buttontexts[2], buttontexts[3], buttontexts[4], buttontexts[5], buttontexts[6], buttontexts[7], buttontexts[8], buttontexts[9], buttontexts[10], buttontexts[11], triggertexts[0], triggertexts[1], triggertexts[2], triggertexts[3], triggertexts[4], triggertexts[5], triggertexts[6], triggertexts[7], triggertexts[8], triggertexts[9], triggertexts[10], triggertexts[11] )
endfunction

function DialogEngine_showPickedPlayer takes nothing returns nothing
    local integer array h
    local integer i=0
    loop
        exitwhen i==12
        set h[i]=hotkeystring2int(getdialoginput_hotkey(i))
        set i=i+1
    endloop
    call setHotkeys(h[0], h[1], h[2], h[3], h[4], h[5], h[6], h[7], h[8], h[9], h[10], h[11])
    call DialogEngine_CreateDialog( GetPlayerId(GetEnumPlayer()), getdialoginput_title(), getdialoginput_buttontext(0), getdialoginput_buttontext(1), getdialoginput_buttontext(2), getdialoginput_buttontext(3), getdialoginput_buttontext(4), getdialoginput_buttontext(5), getdialoginput_buttontext(6), getdialoginput_buttontext(7), getdialoginput_buttontext(8), getdialoginput_buttontext(9), getdialoginput_buttontext(10), getdialoginput_buttontext(11), getdialoginput_clickedtrigger(0),getdialoginput_clickedtrigger(1),getdialoginput_clickedtrigger(2),getdialoginput_clickedtrigger(3),getdialoginput_clickedtrigger(4),getdialoginput_clickedtrigger(5),getdialoginput_clickedtrigger(6),getdialoginput_clickedtrigger(7),getdialoginput_clickedtrigger(8),getdialoginput_clickedtrigger(9),getdialoginput_clickedtrigger(10),getdialoginput_clickedtrigger(11))
endfunction

function DialogEngine_massVar takes nothing returns nothing
    local integer i
    set i=getdialoginput_buttoncount()
    loop
        exitwhen i>=12
        call setdialoginput_buttontext(i,"")
        call setdialoginput_clickedtrigger(i,null)
        call setdialoginput_hotkey(i,"")
        set i=i+1
    endloop
    call ForForce( getdialoginput_playerswhocansee(), function DialogEngine_showPickedPlayer )
endfunction

function InitDialog takes nothing returns nothing
    local integer pid = GetPlayerId(GetEnumPlayer())
    local dialog dia=DialogCreate()
    set udg_Dialog[pid]=dia
    call DialogClearBJ( dia )
    call DialogSetMessageBJ( dia, "test" )
endfunction

function Trig_Dialog_Actions takes nothing returns nothing
//Initialization:
    if GetTriggerExecCount(GetTriggeringTrigger())==1 then
        call ForForce( GetPlayersByMapControl(MAP_CONTROL_USER), function InitDialog )
        call setDialogString(0,"")
        return
    endif
//Calling the engine to show a dialog:
    if getDialogString(0)!="" then
        call DialogEngine_executeString(getDialogString(0))
    else
        call DialogEngine_massVar()
    endif
endfunction

//===========================================================================
function InitTrig_stats_up takes nothing returns nothing
    set gg_trg_stats_up = CreateTrigger(  )
    call TriggerRegisterTimerEventSingle( gg_trg_stats_up, 0.00 )
    call TriggerAddAction( gg_trg_stats_up, function Trig_Dialog_Actions )
endfunction
21

» WarCraft 3 / Zyxel hero siege Пришло время узнать все !

quq_CCCP:
Что то я там jass не увидел, обычная олдовая гуи карта, у автора было много времени и терпения... (скока триггеров по 1-2 действия)
Я там отметил ,- же где jass папка tips кажется, посмотри пожалуйста?
21

» WarCraft 3 / Мощь гор

Можно изменить в настройках модели.Что бы проигрвалась анимация мощь гор.
Можно тупо дать заклинание неуязвимость к магии и изменить внешность через mdlvis
или просто увеличить действие заклинания мощь гор на очень долгий срок
Вроде больше других идей в голову не
идет
21

» WarCraft 3 / Точка приложения Аттачмента

JesusHipster:
Нет, можно только приделать новый аттачмент поинт уже к модели
Можешь ссылку дать или подсказать как?
21

» WarCraft 3 / Смена оружия.

Создай Логическую переменную = ДА ,если имеет предмет второго уровня и при подборе такого же предмета выбросить )
Ну и целочисленную под уровень изменить
21

» WarCraft 3 / Озвучка для сериала "Страж" (изменено)

Ну,тогда ладно.Есть у меня один мужик - охотник.И голос боевой -но он не захочет за просто так озвучивать.И текст он читает а не рассказывает.Я пробовал к себе на канал на ю-тубе позвать.Не получилось.
Удачи вам в проекте))
21

» WarCraft 3 / Сборка как в доте

AlexSan:
Покупка рун/юнитов и триггерное выдавание предметов + "Предметы записываются в переменные и убираются,а потом даются обратно"?
Аааа. Ясно все.А я уже союрался велосипед изобретать!))
21

» WarCraft 3 / Переменные боевая единица

Melissa, Melissa, Блин, я не могу найти событие юнит получает урон!
Это в jngp?!
SсRealm:
Melissa, Melissa, Блин, я не могу найти событие юнит получает урон!
Это в jngp?!
SсRealm:
Melissa, Melissa, Блин, я не могу найти событие юнит получает урон!
Это в jngp?! ...А нет. все. Нашел!))))
21

» WarCraft 3 / Как сделать чтобы работник мог носить и использовать предметы?

Tumart:
А добавить ему возможную способность Предметы(герой) не судьба?
Tumart:
А добавить ему возможную способность Предметы(герой) не судьба?
Вы забыли - что тогда он может схватить книгу заклинаний и будет фаталл еррор!
21

» WarCraft 3 / Динамическая погода

Да вы что ёлки- палки грузитесь!
Закрывайте вопрос уже!
Загруженные файлы
21

» WarCraft 3 / Замена анимации юнита

nvc123:
Suite, вот только придётся каждый раз вручную юзать этот спелл
SсRealm, ты вопрос прочти прежде чем писать всякий бред
нормальным способом момент добычи отловить нельзя
недавно кидали костыль позволяющий отловить удар по дереву но он тут не особо поможет
ибо анимации будут перебивать друг друга
в общем как и сказал Suite меняй это в самой модели
Я правильно написал как проигрывать анимации .Насчет того,можно ли отловить удар по дереву я не знаю
а что анимации перебивают друг друга - у меня такого не было( едиственный раз случилось у героя и то получилось ,что он как будто танцует, впрочем тебе не понять)
21

» WarCraft 3 / Замена анимации юнита

Создаешь триггер,изначально выключен , каждые 0.50 сек
пишешь такую команду
call SetUnitAnimationByIndex(udg_Hero,2)
где udg_Hero- переменная твой герой
цифра- это порядковый номер анимации
( можешь методом тыка менять цифры или посмотреть в mdlvis)
Включаешь триггер при необходимости))
21

» WarCraft 3 / Динамическая погода

Напиши в личку. У меня есть наработка динамическая смена погоды