32

» WarCraft 3 / Не берет москитных юнитов в группу

LainMikoroso, было бы прекрастно чтобы ты не маялся хренью и сделал на событии триггера...
function Find_Dummy takes nothing returns nothing
    return GetUnitTypeId(GetFilterUnit()) == 'hdum' //dummy (введи id своего даммика)
endfunction
...
call GroupEnumUnitsOfPlayer( grp, pl, Condition( function Find_Dummy ))
...
Данный код запишет в группу grp всех юнитов игрока pl с типом 'hdum' , моно использовать другие критерии отбора, вот только как ты будешь узнавать что они рядом?
Проблемно правда?
Мб все таки событие?
32

» WarCraft 3 / Не берет москитных юнитов в группу

LainMikoroso, это функция которая соберет в группу всех юнитов игрока, всех что у него сейчас под контролем (исключая дохлых) но включая москитов.
Для каждого игрока придется искать его москитов, потом смотреть где они.
Слушай ты точно осилишь?
32

» WarCraft 3 / Не берет москитных юнитов в группу

LainMikoroso, Это событие для триггера, оно вешается на конкретного юнита и срабатывает когда к нему подходят другие юниты, радиус настраиватеся. Вешаешь на даммиков это событие и проверяешь в условии триггера что подошел другой даммик и убиваешь его...
32

» WarCraft 3 / Проблема с отдачей приказа способности на основе Канала.

JackFastGame, боты могут не давать юзать скиллы как ты хочешь, у меня нейтралы в друг друга нехотя ледяные стрелы, не смотря на то что в целях разрешено...
32

» WarCraft 3 / Не берет москитных юнитов в группу

LainMikoroso, событие EventUnitsInRange (событие что 1 юнит подошел к другому, оно срабатыват на москитов)
32

» WarCraft 3 / Проблема с отдачей приказа способности на основе Канала.

JackFastGame, еще желательно чтобы реальных способностей, юзающих эти приказы не было на карте, а если и были то до канала..
Так же юзай проверку каста
if not IssueTargetOrder(юнит, приказ, цель) then
	call BJDebugMsg("Невозможно выполнить приказ!")
endif
Для проверки бага, нужен цикл с проверкой, можно ли кинуть во врага, можно ли кинуть в себя, можно ли кинуть под себя данный спелл...
32

» WarCraft 3 / Проблема с отдачей приказа способности на основе Канала.

JackFastGame, старый знакомый баг с каналом из доты, лекарство только одно применять для канала ID приказа которых больше не будет ни у 1 юнита, или все способности ID приказа которых ты копируешь для канала, должны появится у юнитов и быть применены до того как твои герои выучат способность на основе канала.
Движок вара кеширует приказ и тип цели для этого приказа, поэтому триггерно невозможно отдать приказ, у него по мнению движка другой тип цели.
Нельзя применить высасывание жизни на юнита, потому что записано что для этого приказа не требуется цель...
Подробности можно спросить у DracoL1ch.
32

» WarCraft 3 / Не берет москитных юнитов в группу

LainMikoroso, И не положено, на то они и москиты - с ними ничего не должно взаимодействовать.
Либо событие входа в регион либо GroupPickUnitsOfPlayer где в фильтре отсеиваешь даммиков по типу, а так же прочим параметрам.
32

» WarCraft 3 / Интерфейс

ImbaStyle, конечно нет, близзарды не для того их сделали, максимум сделать таблицу во весь экран и текстуру фона сменить на прозрачную, если это именно текстура и она одна для таблицы.
32

» WarCraft 3 / Рандомизация героев

EnergyFrost, Дело не в самом рандоме а в зерне геренатора рандома
native SetRandomSeed takes integer seed returns nothing
Нужно установить Random Seed чтобы было как можно меньше повторений, для этого нам нужно случайное целое число, желательно побольше (совсем большое 3242572438726738049568236)
Которое нам надо бы сгенерировать при старте игры, а как это сделать не юзая GerRanomInt\Real, GroupPickRandomUnits и тому подобное, подумайте на досуге...
32

» WarCraft 3 / Интерфейс

ImbaStyle, дгуи и мемхак не для маленьких, так что для вас это несбыточная мечта.
32

» WarCraft 3 / Как воскрешать умершего Героя способностью?

Дефолтное воскрешение сделано специально чтобы не воскрешать героев, там установлены хардкодные цели (т.е ваши настройки цели ни на что не влияют), увы это не единственная такая способность где нельзя заменить дефолтные цели, так что делаем триггерно.
32

» WarCraft 3 / Интерфейс

Ну без мультборда, значит в лейблборде, но зачем?
Что это даст? Баффы искать и абилки юнита можно искать мемхаком, но это ресурсоемко.
Да и как вы будите следить за хп\мп и баффами 10 юнитов? Вы похожи на это ?
Если у вас 1 герой то все просто, переодический таймер который будет заносить в таблицу значения всего что нужно, для баффов нужна база данных...
32

» WarCraft 3 / Магазин для локального игрока

Несколько юнитов, перенаправляй выбор ну или можно иначе, сам магазин сделать просто декором, а для продажи использовать даммиков.
Чтобы даммика мог выбрать только игрок - нужно создать дамми героя, вручить ему ульт панды пивовара с длительностью 0 и настройками где вызванное существо будет твой магазин, вуаля, при клике на иконку героя слева вверху ты будешь выделять свой магазин, а камеру триггерно переноси к другому "декоративному магазину", самих даммиков располагай за границами камеры, чтобы их было невозможно выделить другим способом.
32

» WarCraft 3 / Хак на память Warcraft3

Clamp, кстати вот обновленный мемхак а так же новые и обновленные функции:
Пока что все не разобрал и не заставил работать все в куче, нужно будет довырезать мусор и dota only код.
Тестмап с основными либами работает исправно.
Загруженные файлы
32

» WarCraft 3 / Разный загрузочный экран.

Загрузочный экран = модель с текстурами, можно сделать 100500 анимаций и улыбатся. тока что то некому это не надо, убить 5 мб на говно экран...
32

» WarCraft 3 / Вопрос о функциях

LainMikoroso, эмм не настолько чтобы отказываться от глобалок, да и создание 100500 локалок не есть хорошо.
Темболее не нужно заниматься такой фигней лучше сосредоточится на более важных вещях.
32

» WarCraft 3 / Как правильно инициализировать способности и юнитов в массиве?

Близзарды сделали способ для ленивых,
call PreloadGenClear()
call PreloadGenStart()
call CreateUnit(Player(0), ваш герой, 0.00, 0.00, 0.00 )
call TriggerSleepAction( 5.00 )
call PreloadGenEnd( "save\\MyData.pld" )
Этот код запишит в файл mydata.pld все что загружает в память движёк при создании этого юнита, далее этот код можно запустить функцией Preloader( путь до *.pld файла ), таким образом мы можем сделать N скриптов погрузки для каждого героя, в тавернах продавать даммиков и при покупке даммиков вызвать этот скрипт, потом через пару секунд создать героя.
Способности можно подгружать таким же способом, только нужно заставить героя выиучить их и пременить, очень быстро (кодом, а не руками) и в файл попадет все что грузил движок.
32

» WarCraft 3 / Вопрос о функциях

Diaboliko, если учитывать что движок ищет переменные методом перебора с конца, то последняя добавленная переменная будет найдена быстрее первой.
32

» WarCraft 3 / Использование SetUnitFlyHeight

Clamp:
щяс есть мемхак можно бы и заменить паузу
Нельзя бы, одним из важных моментов для фрога является независимость доты от патча.
Да с фрогом понятно, ему вовсе пох, ему кастом шипы кто то писал, там код явно не детсадовский конверт гуи в jass фрога, я про тех кто делает карты сейчас и собрался тоже избавится от дефолтных шипов (уж больно это корявый спелл, не стак, делает неуязвимым юнита).
32

» WarCraft 3 / Как правильно инициализировать способности и юнитов в массиве?

AntiMage, айсфрог больше не фаворит, не?
Создай их на карте изначально, потом удали при старте удали, время загрузки карты увеличится, зато не будет просадок фпс при выборе нового героя и так далее. Способности прелоадят с помощью preload, постепенно, как только появился герой которому нужны эти способности, то потихонечку подгружаются эффекты скиллов, создаются даммики которым по очереди с некоторым интервалов вручают по 1 скиллу героя + так же все вспомогательные дамми способности.