13

» WarCraft 3 / Исцеляющий газ

Все прекрасно работает. Исцеляющий газ алхимика настроить с отрицательными значениями, а в целях прописать: Воздушные, Враги, Наземные, Организмы.
13

» WarCraft 3 / Кастомный blizzard.j

Можно, конфликта не будет, но поддержка мультиплеера будет под большим вопросом (AMAI устроен подобным образом, программа добавления модифицированного ИИ добавляет дополненный Blizzard.j, в результате чего можно только против ботов играть, с мультиплеером не катит).
13

» WarCraft 3 / Как в редакторе сменить ночь на день?

С помощью клавиши L (по умолчанию).
Эта кнопка регулирует яркость, а если время суток, то через Файл->Параметры->Визуальные->Фикс. время суток(...).
13

» WarCraft 3 / Колонна

Можно дать этим юнитам одинаковую скорость движения и двигать их по точкам, которые лежат на параллельных прямых. Также можно двигать только юнитов ближнего боя, а точку для лучников (за их спиной) рассчитывать через полярные координаты в виде startX+dist*Cos(angle); startY+dist*Sin(angle), где angle - угол между точками положений юнита ближнего и дальнего боя.
13

» WarCraft 3 / Как убрать звуки окружения

Звуки окружения - то есть наступление дня/ночи?
Можно удалить звуки, отвечающие за включаемые звуки при этом и удалить триггеры, которые анализируют смену суток в игре
	StopSound(bj_dawnSound,true,false)
	bj_dawnSound = null
	StopSound(bj_duskSound,true,false)
	bj_duskSound = null
	TriggerClearActions(bj_dncSoundsNight)
	DestroyTrigger(bj_dncSoundsNight)
	bj_dncSoundsNight= null
	TriggerClearActions(bj_dncSoundsDay)
	DestroyTrigger(bj_dncSoundsDay)
	bj_dncSoundsDay = null
	TriggerClearActions(bj_dncSoundsDawn)
	DestroyTrigger(bj_dncSoundsDawn)
	bj_dncSoundsDawn= null
	TriggerClearActions(bj_dncSoundsDusk)
	DestroyTrigger(bj_dncSoundsDusk)
	bj_dncSoundsDusk= null
13

» WarCraft 3 / Триггер

Событие: боевая единица умирает.
Условие: у боевой единицы был бафф (или же способность, если делать начисто через JASS).
Действие: какой-то спецэффект.
При наличии баффа его уровень будет отличным от 0.
13

» WarCraft 3 / Мапинг 1.26 /1.29

Обратной совместимости нет (карта, сделанная на 1.29 не будет работать на 1.26 ввиду большего количества игроков и новых функций), но карта, сделанная на 1.26 должна работать на 1.29.
13

» WarCraft 3 / Проверка на то, что юнит в воде.

UrsaBoss, это в зависимости, какая способность (если что-то типа ауры, то лучше через таймер), если же просто дать/забрать способность, то через входы/выходы.
13

» WarCraft 3 / Проверка на то, что юнит в воде.

UrsaBoss, вариант с областями - самый удобный, как по мне (потому что под любую карту сойдет, при инициализации достаточно создать регион WaterPlaces и добавлять области RegionAddRect(WaterPlaces,gg_rct_Water01), RegionAddRect(WaterPlaces,gg_rct_Water02), RegionAddRect(WaterPlaces,gg_rct_Water03), .... А потом проверять через IsUnitInRegion в глобальном таймере, который будет работать с группой юнитов, обладающих такой пассивкой (при изучении пассивки создать группу и добавить юнита, после чего запустить таймер, если юнит первый). Если группа пуста, то уничтожить таймер и удалить группу. Таким образом можно сымитировать действие этой пассивной способности.
13

» WarCraft 3 / Проверка на то, что юнит в воде.

UrsaBoss, разве что придумать костыльный алгоритм для определения (хотя, когда-то его уже придумали, вроде, просто точно попадалось что-то подобное, но не могу вспомнить где).
13

» WarCraft 3 / Проверка на то, что юнит в воде.

Создать обычные области в редакторе, после чего использовать функции RegionAddRect(регион, область). Если что-то лишнее (например, нужно из области вырезать область), то можно использовать RegionClearRect(регион, область. которая не будет учтена). Также используются RegionAdd/ClearCell - добавление определенной точки (минимальные ячейки, которыми могут быть области, размер 32х32, в редакторе обозначены серым цветом. На них можно основывать занятные алгоритмы нестандартных форм регионов (я так делал треугольники и круги).
13

» WarCraft 3 / Как сделать так ,что за убийство монстров,голда давалась всем

Есть триггерная команда, которая позволяет выдавать золото тем, кто убил юнита. Если нужно, чтобы выдача была всем, то можно установить систему отлова урона, с помощью которого ловить момент до убийства юнита, после чего переходить к моменту после этого находить изменение количества золота у игрока-убийцы (главное, чтобы после нанесения урона наступала смерть юнита). Осталось только поделить сумму между кол-вом игроков команды (например, 20 золота дали за убийство юнита, а в команде еще 3 игрока, то вычесть у первого 15 и раздать по 5 остальным). Это более сложный вариант решения, но, зато, более точный. Можно сделать, как сказано выше, но тогда придется делать базу данных на типы юнитов и сопоставлять каждому определенное количество золота (главное, перед этим исключить получение золота игроком-убийцей, так как начисление будет происходить ему дважды + эффект на месте погибшего в виде монеток можно добавить).
13

» WarCraft 3 / Нюанс в cJass

nvc123, большое спасибо за идею. Добавил немного условной компиляции. В итоге получилось так:
define{
    <FuncA> (a,b) = {
        #if a == SYSTEM_HASHTABLE
            Func##A(a,b)
        #else
            Func##B(a,b)
        #endif
    }
}
13

» WarCraft 3 / Как уменьшить кол-во даваемой exp за юнита

Можно настроить игровые константы, где описана схема получения опыта героем через таблицу (поэтому герои не могут качаться выше 5 уровня на монстрах в стандартных картах).
Вот так оно выглядит.
Загруженные файлы
13

» WarCraft 3 / Как сделать воскрешение героя которого выбрал в таверне?

Нужно два триггера. При покупке юнита, который герой (то есть выбор в таверне) - заносить его в переменную типа юнит-массив (можно даже в группу, если не нужно знать героя конкретно), и второй - который регистрирует смерть юнита (происходит проверка, что умерший юнит равен HeroUnits[0], HeroUnits[1] и т.д. или же просто юнит входит в группу Heroes = да).
13

» WarCraft 3 / ai > wai

ai - уже скомпилированный код ИИ и обратно в GUI-вариант не переводится (аналогичная ситуация с GUI-триггерами). Приказы для ИИ находятся в файле Scripts\common.ai.
13

» WarCraft 3 / Ограничение функции рельефа "повысить"

Нужно отредактировать файл MiscData, чтобы создавать более крутые склоны (тогда зависимость высоты от размера кисти уменьшится).
А именно строку "MaxSlope=50" на "MaxSlope=90".
13

» WarCraft 3 / Есть ли русификатор триггеров для версии 1.29

Это просто перевести тригегры 1.29 на русский (чтобы в редакторе они отображались на русском). Была идея такое воплотить, но то, что JNGP не поддерживается на этом патче - останавливает( Даете JNGP на 1.29-1.30, а то WEX меня не устраивает (без cjass и поддержки кириллицы - при сохранении русские строки зачищаются в коде).
13

» WarCraft 3 / Насчет ландшафта

Plague Doctor, потому что "Ввести" - это не личный сценарий (это дополнительное действие в редакторе триггеров, отвечающее за ввод чит-кода). Версия для личного сценария такая: call Cheat("ISeeDeadPeople")
13

» WarCraft 3 / Ошибка с абилкой

Обожал лепить подобные функции с таймингом (временная пауза, временная анимация и подобное). Один лишь минус - применение одной функции не исключает применения другой (например, удалить "Благодать" за 5 секунд и сразу запустить вторую, где ее удалить нужно через 0.5 секунд). Жаль, что нет функции перевода в равкод (хотя, насколько я помню мемхак, то там работа с данным типом велась напрямую; может, и перевод в равкод допилить там реально).
13

» WarCraft 3 / Текстура эффекта

Можно конвертировать модель в mdl и редактировать ее в текстовом редакторе, после чего превратить обратно в mdx.