11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

DopaMine, нашел? если не нашел, то вот тебе скрин где спрятан код
Да, нашёл) спасибо за подробности)) Я всё равно так и не понял, как это работает и главное: как это изучать((
11

» WarCraft 3 / Свои спеллы с нуля

ще как будут, ожидается овер 100500 правок и нововведений
НУ-НУ) не думаю, что сразу))
Ок, как раз смотрю, что там за статьи)
11

» WarCraft 3 / Свои спеллы с нуля

Мда, чувак тебе определенно читать статьи
Какие? Где?
quq_CCCP:
Под 1.31 рано чето делать, выдет рефордж и все твои труды в мусорку.
Как я понял, особо ничего не будут менять, ни формата файлов, ни встроенных редакторов.
Из-за чего именно может не работать на "новом" варкрафте?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

DopaMine, прежде всего, обрати внимание - у него карта в Lua режиме, а не JASS. Во-вторых весь код у него в кастом коде карты сверху.
Я сразу заметил, что в ЛУА...
prog:
Во-вторых весь код у него в кастом коде карты сверху.
У меня щас тоже в луа вроде как. Только не виден код никакой( Просто тупо действие Face2()
Я ж его карту скачал, вроде как в луа открылась.
У меня, мать его, даже в редакторе беты отображается как надо. Там точно луа. И нихрена не понятно, где эти функции? Не в ток-файле же...
А, В САМОй КАРТЕ ТОЖЕ МОЖНО ПИСАТЬ ЛОЛ ВТФ
Загруженные файлы
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Помогите плз разобраться в ЛОГИКЕ...
Почему у него в карте нет функций никаких... Есть только событие и...кастомный скрипт, в котором названия функций....КАК ЭТО. Я скачал карту из этого урока и у меня почему-то отображается этот паладин и всплывающая подсказка как у него на скриншоте. Я хотел посмотреть, что же там за функции - А ИХ НЕТУ...Помогите понять: как это?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

А дальше создаешь фрейм функцией создания фрейма.
Не нашёл функцию нигде, которая позволяет создать фрейм( Помогите плес
prog:
DopaMine, теперь ищи нативку создающую фрейм по айдишнику. Я не подскажу т.к. не помню уже какая именно нативка для этого используется, а заново искать по статьям здесь и на хайве мне лениво.
Эх. Ну хоть как её гуглить?(
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

И вот, что содержит ток файл:
war3mapImported\GlobalHeroMy.fdf
prog, эти глобалы сидит внутри движка =)
Взломать можете?:D
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

В общем, я щас пробую свой фрейм отобразить. У меня вот так пока код написан. Это верно?
function Trig_Frames_Actions takes nothing returns nothing
	call BlzLoadTOCFile("war3mapimported\\myframe.toc")
endfunction

//===========================================================================
function InitTrig_Frames takes nothing returns nothing
    set gg_trg_Frames = CreateTrigger(  )
    call TriggerAddAction( gg_trg_Frames, function Trig_Frames_Actions )
endfunction
Вопрос в том, какая команда позволит отобразить фрейм из этого ток файла. У меня и ток, и фдф импортированы в карту.
Загруженные файлы
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Хм, я, конечно, извиняюсь.
// -- INCLUDE FILES ---------------------------------------------

IncludeFile "UI\FrameDef\Glue\StandardTemplates.fdf",

// -- LOCAL TEMPLATES -------------------------------------------

Frame "POPUPMENU" "PlayerSlotPopupMenu" {
    Width 0.109,
    Height 0.025,
    PopupButtonInset 0.01,

    ControlBackdrop "PlayerSlotPopupMenuBackdrop",
    Frame "BACKDROP" "PlayerSlotPopupMenuBackdrop" {
        BackdropTileBackground,
        BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground.blp",
        BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
        BackdropCornerSize  0.016,
        BackdropBackgroundSize  0.032,
        BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
        BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder.blp",
    }

    ControlDisabledBackdrop "PlayerSlotPopupMenuDisabledBackdrop",
    Frame "BACKDROP" "PlayerSlotPopupMenuDisabledBackdrop" {
        BackdropTileBackground,
        BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground-Disabled.blp",
        BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
        BackdropCornerSize  0.016,
        BackdropBackgroundSize  0.032,
        BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
        BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder-Disabled.blp",
    }

    ControlPushedBackdrop "PlayerSlotPopupMenuPushedBackdrop",
    Frame "BACKDROP" "PlayerSlotPopupMenuPushedBackdrop" {
        BackdropTileBackground,
        BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground.blp",
        BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
        BackdropCornerSize  0.016,
        BackdropBackgroundSize  0.032,
        BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
        BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder-Down.blp",
    }

    PopupTitleFrame "PlayerSlotPopupMenuTitle",
    Frame "GLUETEXTBUTTON" "PlayerSlotPopupMenuTitle" INHERITS WITHCHILDREN "StandardPopupMenuTitleTemplate" {
    }

    PopupArrowFrame "PlayerSlotPopupMenuArrow",
    Frame "BUTTON" "PlayerSlotPopupMenuArrow" INHERITS WITHCHILDREN "StandardPopupMenuArrowTemplate" { 
    }
}

// -- FRAMES ----------------------------------------------------

Frame "CONTROL" "PlayerSlot" {
    Height 0.025,

    Frame "TEXT" "DownloadValue" INHERITS "StandardLabelTextTemplate" {
        Width 0.01,
        UseActiveContext,
        SetPoint LEFT, "PlayerSlot", LEFT, 0.0, 0.0,
    }

    Frame "POPUPMENU" "NameMenu" INHERITS WITHCHILDREN "PlayerSlotPopupMenu" {
        Width 0.153,
        UseActiveContext,
        SetPoint LEFT, "DownloadValue", RIGHT, -0.01, 0.0,

        PopupMenuFrame "NamePopupMenuMenu",
        Frame "MENU" "NamePopupMenuMenu" INHERITS WITHCHILDREN "StandardPopupMenuMenuTemplate" {
            UseActiveContext,
        }
    }

    Frame "POPUPMENU" "RaceMenu" INHERITS WITHCHILDREN "PlayerSlotPopupMenu" {
        Width 0.114,
        UseActiveContext,
        SetPoint LEFT, "NameMenu", RIGHT, 0.0, 0.0,

        PopupMenuFrame "RacePopupMenuMenu",
        Frame "MENU" "RacePopupMenuMenu" INHERITS WITHCHILDREN "StandardPopupMenuMenuTemplate" {
            UseActiveContext,

            MenuItem "RANDOM",     -2,
            MenuItem "HUMAN",      -2,
            MenuItem "ORC",        -2,
            MenuItem "UNDEAD",     -2,
            MenuItem "NIGHT_ELF",  -2,
        }
    }

    Frame "BUTTON" "TeamButton" {
        Height 0.025,
        Width 0.087,
        UseActiveContext,
        SetPoint LEFT, "RaceMenu", RIGHT, 0.0, 0.0,

        ControlBackdrop "TeamButtonBackdrop",
        Frame "BACKDROP" "TeamButtonBackdrop" {
            UseActiveContext,
            BackdropTileBackground,
            BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground.blp",
            BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
            BackdropCornerSize  0.016,
            BackdropBackgroundSize  0.032,
            BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
            BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder.blp",
        }

        ControlDisabledBackdrop "TeamButtonDisabledBackdrop",
        Frame "BACKDROP" "TeamButtonDisabledBackdrop" {
            UseActiveContext,
            BackdropTileBackground,
            BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground-Disabled.blp",
            BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
            BackdropCornerSize  0.016,
            BackdropBackgroundSize  0.032,
            BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
            BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder-Disabled.blp",
        }

        Frame "TEXT" "TeamButtonTitle" {
            UseActiveContext,
            SetPoint LEFT, "TeamButton", LEFT, 0.01, 0.0,
            DecorateFileNames,
            FrameFont "MasterFont",0.011,"",
            FontFlags "FIXEDSIZE",
        }

        Frame "BACKDROP" "TeamButtonArrow" { 
            UseActiveContext,
            Height 0.011,
            Width 0.011,
            SetPoint RIGHT, "TeamButton", RIGHT, -0.008, 0.0,
            BackdropBlendAll,
            BackdropBackground "UI\Widgets\Glues\GlueScreen-Pulldown-Arrow.blp",
        }

    }

    Frame "BUTTON" "ColorButton" {
        Height 0.025,
        Width 0.04,
        UseActiveContext,
        SetPoint LEFT, "TeamButton", RIGHT, 0.0, 0.0,

        ControlBackdrop "ColorButtonBackdrop",
        Frame "BACKDROP" "ColorButtonBackdrop" {
            UseActiveContext,
            BackdropTileBackground,
            BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground.blp",
            BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
            BackdropCornerSize  0.016,
            BackdropBackgroundSize  0.032,
            BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
            BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder.blp",
        }

        ControlDisabledBackdrop "ColorButtonDisabledBackdrop",
        Frame "BACKDROP" "ColorButtonDisabledBackdrop" {
            UseActiveContext,
            BackdropTileBackground,
            BackdropBackground  "UI\Widgets\Glues\GlueScreen-Button1-BackdropBackground-Disabled.blp",
            BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R",
            BackdropCornerSize  0.016,
            BackdropBackgroundSize  0.032,
            BackdropBackgroundInsets 0.004 0.004 0.004 0.004,
            BackdropEdgeFile  "UI\Widgets\Glues\GlueScreen-Button1-BorderedBackdropBorder-Disabled.blp",
        }

        Frame "BACKDROP" "ColorButtonValue" {
            UseActiveContext,
            Height 0.0125,
            Width 0.0125,
            SetPoint LEFT, "ColorButton", LEFT, 0.007, 0.0,
        }

        Frame "BACKDROP" "ColorButtonArrow" { 
            UseActiveContext,
            Height 0.011,
            Width 0.011,
            SetPoint RIGHT, "ColorButton", RIGHT, -0.008, 0.0,
            BackdropBlendAll,
            BackdropBackground "UI\Widgets\Glues\GlueScreen-Pulldown-Arrow.blp",
        }

    }

    Frame "GLUEPOPUPMENU" "HandicapMenu" INHERITS WITHCHILDREN "PlayerSlotPopupMenu" {
        Width 0.054,
        UseActiveContext,
        SetPoint LEFT, "ColorButton", RIGHT, 0.0, 0.0,

        PopupMenuFrame "HandicapPopupMenuMenu",
        Frame "MENU" "HandicapPopupMenuMenu" INHERITS WITHCHILDREN "StandardPopupMenuMenuTemplate" {
            UseActiveContext,

            MenuItem "PERCENT_100",    -2,
            MenuItem "PERCENT_90",     -2,
            MenuItem "PERCENT_80",     -2,
            MenuItem "PERCENT_70",     -2,
            MenuItem "PERCENT_60",     -2,
            MenuItem "PERCENT_50",     -2,
        }
    }

    Frame "TEXT" "PingValue" INHERITS "StandardLabelTextTemplate" {
        Width 0.0225,
        Height 0.0125,
        
        FrameFont "MasterFont",0.011,"",
        FontFlags "FIXEDSIZE",
            
        UseActiveContext,
        SetPoint LEFT, "HandicapMenu", RIGHT, 0.0, 0.0,
    }
}

// -- TEAMCOLORMENU ----------------------------------------------------

Frame "CONTROL" "TeamColorMenu" {
    Width 0.18,
    Height 0.2,
    UseActiveContext,

    ControlBackdrop "TeamColorMenuBackdrop",
    Frame "BACKDROP" "TeamColorMenuBackdrop" INHERITS "StandardBorderedButtonBackdropTemplate" {
        UseActiveContext,
    }

    Frame "SCROLLBAR" "TeamColorMenuScrollBar" INHERITS WITHCHILDREN "StandardScrollBarTemplate" {
        SetPoint TOPRIGHT, "TeamColorMenu", TOPRIGHT, 0.0, 0.0,
        UseActiveContext,
    }
}
Где здесь id фрейма?((
prog:
люди обычно включают мозг и смотрят по содержимому похож ли фрейм на то что они ищут, если похож, то проверяют уже на практике, если нет, то ищут дальше.
Мне б сократить диапазон поиска. К примеру - 2 папки внутри framedef: "ui" и "glue". Как-то отсортированы фреймы по этим папкам или просто в две кучи всё намешано?
А ещё в framedef.toc есть такие 4 строки:
UI\FrameDef\GlobalStrings.fdf
UI\FrameDef\InfoPanelStrings.fdf
UI\FrameDef\NetworkStrings.fdf
UI\FrameDef\DateStrings.fdf
Этих файлов нет ни в одной из двух вышеперечисленных папок. А где они тогда?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

(и, естественно, есть стандартные фреймы в которых это уже сделано).
И, естественно, как их искать - никто не знает:D
Тогда вот вопрос: а как я хотя бы могу проверить, тот ли фрейм я просматриваю или не тот? Тупо изменить что-то в нём, сохранить в свой toc файл, импортировать в карту, загрузить с помощью нативки - и посмотреть, что поменялось в интерфейсе. Только так?
И я чёт не уловил: вот у меня к примеру свой скопированный и немножко изменённый(на одну цифру) фрейм. Я его загружу, допустим(с помощью команды) - он заменит стандартный или последний надо спрятать, прежде чем отобразить мой?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Есть даже событие клика на кнопку в фрейме, если я правильно помню.
То есть, всё-таки есть понятие "кнопка" внутри фрейма? Или это неточно)
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Ну или найти кого-то кто уже находил нужный тебе фрейм.
АХАХ, так и думал, что в итоге только гуглить по форумам:DDDDD
prog:
Именно. Я же предупреждал что это сложно...
Хмм, ну, у меня не то чтобы прям целые абилки были вставлены в эти ячейки...Но если есть команды на жассе, позволяющие получить координаты мыши или нажатие "горячих клавиш", то с этим попроще будет. Дичь в том, что искать, что за фрейм.
Proshel_Doty:
А ещё можно заглянуть сюда xgm.guru/p/wc3/frame
А здесь нет указаний, какой fdf файл за что отвечает? Я пока в понятиях не совсем разобрался. Константы, функции. Это, как я понял, для работы с отображением готовых фреймов в самом редакторе уже.
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

нельзя просто поменять панель заклинаний...
Ну хотя бы, как это всё описывается мне же надо знать? Чтоб сделать такую же, к примеру, но свою с нуля.
То есть, эта новая панель - просто картинка типо и любое взаимодействие с нею нужно писать? Типо если игрок - владелец юнита навёл мышь на такую-то ячейку, то вывести описание способности, если он нажал левую кнопку мыши, то...
Так?Оо
DopaMine:
Чтоб сделать такую же, к примеру, но свою с нуля.
Тут я имею в виду именно визуально такую же.
prog:
DopaMine, я тебе уже говорил - нельзя просто поменять панель заклинаний... Тебе нужна своя отдельная панель, не связаная со способностями юнитов...
В рефоргеде будет проще сделать или так же?:D
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

DopaMine, toc файл это список fdf файлов. В архивах игры есть war3.w3mod:ui\framedef\framedef.toc, в который можно заглянуть чтобы понять как должен выглядеть toc файл внутри.
А, понял. А как мне понять, какой именно fdf файл отвечает за панель с заклинаниями?(
Если я константу знаю: "ORIGIN_FRAME_COMMAND_BUTTON"
Proshel_Doty:
А ещё можно заглянуть сюда xgm.guru/p/wc3/frame
Спасибо! Заглядывал, не поверите! т
Там начинается не с того, что я не знаю, а дальше...
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Оо~prog:
пример toc файла смотри в архивах игры
Не понял, toc файл - это папка с fdf файлами?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

тебе нужен toc файл и fdf файл с твоим фреймом, оба импортированные в карту
Что такое toc и откуда импортировать эти оба файла?
native BlzGetOriginFrame takes originframetype frameType, integer index returns framehandle
Эта функция импортирует?
prog:
fdf файл с твоим фреймом
И тут имеется в виду, что он уже изменён где-то или "твой фрейм" - это тот, который надо изменить уже в самом редакторе?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Тебя интересует ui\framedef в war3.w3mod.
Отлично, спасибо! А теперь немножко теории плз:D Это файлы игры как бы. По какой логике я могу изменённые файлы сохранить не в папке Data, а как бы только в своей карте, чтоб у других игроков отображалось всё, как я настрою?
Bergi_Bear:
и всё разжевали xgm.guru/p/wc3/frame
И из статей вот вопрос: это лишь отображение интерфейса или фактически изменённый интерфейс? То есть панели делаются прозрачными и сквозь них нельзя кликнуть по игровой области, чтоб выбрать юнита, к примеру или эти панели именно удаляются?
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Просто если в рефорджеде новых возможностей не будет, то всё равно менять интерфейс - лучше щас разобраться.
prog:
Нет, вся папка Data это один большой распределенный CASC-архив
Нет, вся папка Data это один большой распределенный CASC-архив
В этой папке фреймворки все?
Загруженные файлы
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

DopaMine, в 1.31 карта осталась в формате mpq, а архив игры теперь в CASC, для вытаскивания файлов из CASC есть соответствующая программа cascview.
Должен быть файл в формате .casc? Нету такого.
Bergi_Bear:
DopaMine, casc жи есть
и всё разжевали xgm.guru/p/wc3/frame
Статьи посмотрел, там команды какие-то. А где сами файлы fdf/casc и где их менять?(
Подскажите вот, что: откуда инфа, что в рефорджеде будет проще менять интерфейс(будет вообще что-то новое на этот счёт)? Я не боюсь сложностей, просто если я это всё равно переделывать на рефорджед буду, то щас лучше характеристики персов, баланс, абилки дописать.
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Стандартные файлы лежат в архиве игры
МПКу? Программа нужна, чтоб их открывать? И в 1.31+ вроде нет мпку.
А если не мпку, то непонятно тогда, в архиве с игрой нету fdf(
11

» WarCraft 3 / Изменить интерфейс в карте 1.31+

Нет смысла заниматься этим на 1.31, потому что он всё-таки ещё корявый, особенно, когда вообще не шаришь в этом. Как уже ответили выше —
prog:
это сложно
Во-первых, мне в 2011 было ГУИ очень сложно и непонятно. А щас уже свои абилки пишу на жассе.
Proshel_Doty:
да в принципе без разницы. что тут что там нет смысла делать чего-то крутого, потому что оно пропадает ещё в зародыше, когда понимаешь, что в конечном итоге это время потраченное впустую, ну только если тебя от этого не прёт как кого-нибудь от спайсухи.
Здесь не было вопроса о том, как определить, стоит ли делать карту или нет. Здесь собрались те, кто для себя уже всё поняли, не так ли?:D
Doc:
Но я уже сделал несколько вполне законченных проектов-модов, в т.ч. проект, который принес приличный доход и собрал игроков, больше чем у 99% инди игр. И все это один и в целом благодаря вк3 моддингу. Про детские фантазии не нужно мне тут заливать. Твоих игр я пока не вижу в стиме на верхних строчках. Недавно вон авточесс собрали миллионы долларов, но у тебя же тут пришло понимание реальной картины, мудрец.
Плз ссылочки на проекты. И вопрос: если не секрет, откуда деньжата с проектов на ВЕ? Или вы как первую доту перенесли на другой движок, сделав игру с нуля?
Proshel_Doty:
Doc:
Что ты там делал я тоже не вижу. Если уж говоришь, то давай хоть какие-то отсылки. Или ты думаешь я с рождения слежу за твоей жизнью?
Doc:
Твоих игр я пока не вижу в стиме на верхних строчках
А если бы увидел охерел?)
Что за авточесс в душе не чаю, опять же где хоть какие-то отсылки. Ну т.е. я может догадываюсь слегка о чём идёт речь. но только слегка, потому что ни разу даже в то не играл
Не совсем понял, к чему мериться яйцами)
Obelick:
Отлов нажатия, подсказки описания, эффекты - это танцы с бубном, совершенно не юзерфрендли.
У меня и так вся эта "книга заклинаний" написана на жассе, там вставлены только иконки. А нажатия по ним полностью на жассе написаны. Так что это не проблема.
Obelick:
На хайве тем временем уже куча наработок. Заходи и смотри, как там сделано. Но все это настолько неудобно, что плакать хочется.
Не знаю, что такое хайв. Ссылочку плз.
Doc:
Называется хобби, зачем мне это трахание с игрой, я хочу один все сделать и чтобы было красиво. С игрой такое не прокатит.
Плюсую)
Я нигде не могу найти эти файлы fdf, стандартные есть где-то? Или с нуля писать?
Proshel_Doty:
Лучше уж подождать рефорджа, чтобы мутить подобные штуки
Или можно подумать, что в твоей мапе всё готово, осталось только это сделать?
Ну в идеале сразу рассчитывать либо на все 14 заклинаний, либо на 11. От этого будет геймплей зависеть.
11

» WarCraft 3 / Как указать минимальную дистанцию применения способности по обл.

надо расстояние проверять между двумя точками при отдаче приказа, типа:
Спасибо! Помогло PauseUnit))) И это, мне надо при бОльшей дистанции движение юнита к максимальной допустимой) Так что d> 500 не надо) Спасибо)
ArtoniX:
По моему тебе нужен вот этот скрипт: xgm.guru/p/wc3/simerror
Да, отлично) То, что надо) спасибо!
11

» WarCraft 3 / Как указать минимальную дистанцию применения способности по обл.

Когда юнит начинает кастовать абилку - вычисляешь дистанцию между юнитом и целью, и если она меньше 400 - отдаешь приказ stop.
А кастер в этом случае побежит до минимальной дистанции приказа? Я уже только что решил по-своему. Но хочу узнать новое
ArtoniX:
Когда юнит начинает кастовать абилку - вычисляешь дистанцию между юнитом и целью, и если она меньше 400 - отдаешь приказ stop.
А, не так понял. А как вывести стандартное сообщение со звуком, типо "цель слишком близко". Только через триггерное проигрывание звука?
11

» WarCraft 3 / Бета версия Warcraft III Reforged 1.32

Разжевывать не буду, еще в 1.31 добавили новые функции, чтобы работать с интерфейсом. Не думаю, что на текущий момент они есть в ГУИ, но это в планах.
про плагины ничего не знаю на данный момент, полагаю это будет ближе к релизу
Плз прокомментируйте в моём вопросе, буду ждать!