Карта жуть, одни утечки - куча триггеров с переодиком, смотрел хоть Extrime Candy Wars (конфетные войны), там нормально сделаны триггерные скиллы и спавнинг мобов на гуи, без 100500 утечек?
То что есть в карте лучше удалить и написать за ново, с 0 и лучше всего без GUI (особенно если вы в нем так и не научились шарить, то уж лучше JASS )
На вид все должно работать, дебаг выводили что за юниты сидят в группе?
Может из за того что в гурупе сидят null'ы и всякие дохлые юниты, поток обрывается...
Добавь в группу действие вывести на экран текст с именем юнита и его ид
Ты что триггерно добавляешь способность юниту, ну значит как добавил там и создавай юнитов...
Вот пример, того как все прекрасно работает, причем не так как делал ты с тучей утечек и юнитом который может застопить твоего героя.
А почему это EVENT_UNIT_HERO_SKILL (получает способность) не работает? Как тока герой выучит способность, сработает триггер с этим событием, так же будет срабатывать каждый раз когда герой будет изучать скилл ибо повышать его уровень.
Надо статью чтоли написать, что чтобы поменять модель там или вовсе все статы герою нужно:
Сделать 2 вида (или больше героев, дефольный и разновидности, там с щитом, мечом, деревом )
Способность на основе 'Aave' - Сфинкс (avenger form), все параметры в 0, альтернативная форма - тот в кого хотим превратить, нормальная форма - тот кого превращаем или любой герой, это неважно - флаги неприрываемый, постоянный оставляем, остальные снимаем.
Сделаем руну с этой способностью (у руны лучше удалить модель) и будем вручать её герою, тут же удаляя - результат достигнут, герой тут же превратился в другого, не теряя приказа, баффов, хендла.
Чтобы вернуть все назад, нужен любой морф с таймером, хорошо подходит Эликсир ярости (chemical rage) , так же все параметры в 0, флаги убираем, альтернативная форма - дамми герой, какой неважно, нормальная форма - тот кто был, время длительности 0.01
Так же изготавливаем руну с этой способностью и вручаем герою, герой превратится в того кем был изначально. Мелкие полезные хитрости: - Перед морфом лучше выкладывать все предметы из инвентаря герою, а после морфа засовывать на свои места, так будут пересчитаны все бонусы правильно, без багов. - Морфы удаляют способности добавленные триггерно, но от этого есть лекарство UnitMakeAbilityPermanent, добавляя юниту спеллбук со способностями не забывайте сделать перманентным не только спеллбук, но и его содержимое. Для морфов лучше не использовать Метаморфозу иллидана (AEme), она багнутая и если вручить юниту руну с этой способностью вас может преследовать баг ликана из доты, герой будет выполнять первый отданный приказ пока не выполнит или не погибнет, игнорируя все и вся.
А то что у него ни дичь? В реплейсе хоть все работает как надо, есть утечки но не думаю что автора это волнует...
Хотите менять модель героя нужно только морфами, ибо только так можно сохранить юниту все баффы, хендл, приказы.
Кет, а ты попробуй использовать мою функцию и убедишься сам, я. не вызываю дважды эту функцию и не использую левый код,
на пустом карте пробовал все равно создает 2 юнитов nvc123, никто не заменил native CreateUnit функция работает нормально, ошибка только здесь....
вообщем я хотел подменить модель героя на другого не заметным сплсобом, удаляя старого героя и подменить на новую...
Для этого используют морфы а не то что ты налепил, и кстати для твоего подменить есть BJ ReplaceUnit - юзай уж тогда её чем делать такие городушки.
Вроде бы всё. В Ps смотрится приемлемо. Попытайся импортнуть и скажи что получилось.
На миникарте почти невидно, слишком прозрачна и размер не тот, вот скрин - даже не разберешь что на иконке... Сделай цвен понасыщенее и пожирнее руну, тонкие линии невидны.
quq_CCCP, что конкретно должна представлять из себя эта иконка? Стандартной. Понял.
Фиолетовое полупрозрачное солнышко, а не жирную желтую точку, UI\MiniMap\MinimapIcon\MinimapIconGold.blp я упомянул для размера иконки... quq_CCCP:
quq_CCCP, а что мешает взять стандартную иконку голда? Ее вроде как даже переделывать не надо.
А на миникарте отображать нейтральным зданием.
Стандартная иконка голда это жирная желтая точка, а мне нужно чтобы люди понимали что на карте в этом месте заспаунилась руна а не золтой рудник... Nosferoh:
Здравствуйте, нужна иконка стандартной руны warcraft 3, но не простая а для миникарты как UI\MiniMap\MinimapIcon\MinimapIconGold.blp
Есть идея отображать руны на миникарте, используя способность рудник - но подходящей иконки мне так и не удалось найти...
hadaev,
Ну jass, гуи ты не увидишь, а так там вполне все читабельно, даже имена триггеров не стерты, ну если вам jass непонятен то сразу забываем про свою затею, это не для вас ибо без знания jass че то там ломать и переделывать у вас не получится.
Мда, способность на основе ауры торнадо или пламя феникса, мобы будут аргится на того кто им первым нанес урон, а 'Aasl' (аура замедления, торнадо) - наносит 0.00 ед. урона когда на противнике появляется её бафф.
Так же можно использовать и другие пассивные способности наносящие урон юнитам в области.
Ну я не люблю дамми снаряды для направленных способностей, с ними много проблем... в общем юзаю кислотную бомбу и молот бурь, отлавливают попадание по урону в 0 ед. баффу.
Громовая поступь говённая способность для дамми скиллов, деформирует рельеф (это никак не убрать) лучше использовать молот бурь на каждого или ракетный удар, эти способности более гибкие в настройке и не дают не удаляемых эффектов.
Урон лучше всего наносить триггерно от имени кастера независимо что это может сделать и даммик, так сразу мы решим несколько багов - нейтралы будут разбегаться а не агрится на кастера (даммик то неуязвим), способности вроде Blade mail из доты (возвращает урон обратно) не будут работать корректно, а так же многое другое что проверяет убийцу и нанесшего урон.
Значит что нам нужно, летающий дамми юнит (делаем его из светлячка ночных эльфов) - модель Dummy.mdx (требуется скачать и импортировать в карту), обзор в 0, еду, стоимость в 0, хп\мп 1005000 (неважно), способности (москиты и усе, ну можно Неуязвимый нейтральный или как фрог маркер, чисто чтобы потом отьсеивать даммиков, магазины, и тому подобное проверяя на наличие этой способности)
Высота полета 0, тип летающий, угол крена в 0 град. убираем все спецэффекты при смерти и усе.
Триггерно двигай даммика прикрепив к нему спецэффект снаряда, когда до цели не останется расстояния убивай дамми и удаляй спецэффект, выбирай юнитов в области вокруг цели, потом исключи цель из группы и нанеси ей урон, после половинный (или какой там у тебя) урон всем остальным, потом создай даммика, вручи ему ракетный удар и прикажи выстрелить им по области под целью, все очень просто!
ну как как, запуском pld скрипта, через Preloader( путь к pld файлу )
Смотри устройство pld файла, там собственно через GetPlayerName - эксплуатирует возможность смены имени нейтральных игроков и вызова функции ExecinteFunc в коде карты из pld скрипта, испьзуется в DataManager
GameChache - эксплуатирует свойство кеша, кеш один на все потоки в игре, т.е для pld скрипта, аи скрипта или кода карты всегда один GameChache с одним и тем же именем, там все просто записываем данные в кеш прямо в плд скрипте, а потом выгружаем их в потоке карты (предварительно синхронизируя если это потребуется) Для использование кеша нужно чтобы в pld скрипте отсутствовал PreloadEnd, иначе ничего не получится...
quq_CCCP, ExecuteFunc стартует функцию которая ничего не берёт и ничего не возвращает
вейт берёт число
поток созданный через ExecuteFunc никак не связан с родительским потоком
ExecuteTrigger это совсем другое дело
Но вот TriggerSleepAction там работает исправно, вот ссылочка раздел 3, пункт 4 как бы намекает.
Запустишь.
Экзекуты даже наследуют свойства потока из которого запущены, ExecuteTrigger запущенный из потока триггера наследует его ивент, а так же знание связанным с ним функций, с таймерами и ExecuteFunc я не проверял...
Что качается вейтов в циклах, это убого из за неточности вейта + невозможности установки малого периода, о триггерном движении можно забыть.
Событие Pegedic Event - 30 сек.
Условия -
Дествия GroupPickUnitsOfPlayersMatched (или как то так, я гуи не помню)
-Условия ( уровень способности юнита выше 0, а так же юнит жив)
тогда
SetProperty золото. тек. Игрок какой вы изволите 10 * Уровень способности Mathing Unit
иначе
DoNothing() Ты серьезно ни гугу?
» WarCraft 3 / Нужна помощь
Ред. quq_CCCP
» WarCraft 3 / Просьба
То что есть в карте лучше удалить и написать за ново, с 0 и лучше всего без GUI (особенно если вы в нем так и не научились шарить, то уж лучше JASS )
» WarCraft 3 / Не хочет в отряд
Добавь в группу действие вывести на экран текст с именем юнита и его ид
» WarCraft 3 / Не хочет в отряд
» WarCraft 3 / Пассивный призыв война
Вот пример, того как все прекрасно работает, причем не так как делал ты с тучей утечек и юнитом который может застопить твоего героя.
» WarCraft 3 / Пассивный призыв война
» WarCraft 3 / почему функция создает два юнита по идее должен 1 создать?
Ред. quq_CCCP
» WarCraft 3 / почему функция создает два юнита по идее должен 1 создать?
Сделать 2 вида (или больше героев, дефольный и разновидности, там с щитом, мечом, деревом )
Способность на основе 'Aave' - Сфинкс (avenger form), все параметры в 0, альтернативная форма - тот в кого хотим превратить, нормальная форма - тот кого превращаем или любой герой, это неважно - флаги неприрываемый, постоянный оставляем, остальные снимаем.
Сделаем руну с этой способностью (у руны лучше удалить модель) и будем вручать её герою, тут же удаляя - результат достигнут, герой тут же превратился в другого, не теряя приказа, баффов, хендла.
Чтобы вернуть все назад, нужен любой морф с таймером, хорошо подходит Эликсир ярости (chemical rage) , так же все параметры в 0, флаги убираем, альтернативная форма - дамми герой, какой неважно, нормальная форма - тот кто был, время длительности 0.01
Так же изготавливаем руну с этой способностью и вручаем герою, герой превратится в того кем был изначально.
Мелкие полезные хитрости:
- Перед морфом лучше выкладывать все предметы из инвентаря герою, а после морфа засовывать на свои места, так будут пересчитаны все бонусы правильно, без багов.
- Морфы удаляют способности добавленные триггерно, но от этого есть лекарство UnitMakeAbilityPermanent, добавляя юниту спеллбук со способностями
не забывайте сделать перманентным не только спеллбук, но и его содержимое.
Для морфов лучше не использовать Метаморфозу иллидана (AEme), она багнутая и если вручить юниту руну с этой способностью вас может преследовать баг ликана из доты, герой будет выполнять первый отданный приказ пока не выполнит или не погибнет, игнорируя все и вся.
» WarCraft 3 / почему функция создает два юнита по идее должен 1 создать?
Хотите менять модель героя нужно только морфами, ибо только так можно сохранить юниту все баффы, хендл, приказы.
» WarCraft 3 / Модификаторы атаки
» WarCraft 3 / почему функция создает два юнита по идее должен 1 создать?
Ред. quq_CCCP
» WarCraft 3 / Иконки на заказ
» WarCraft 3 / Иконки на заказ
» WarCraft 3 / Иконки на заказ
quq_CCCP:
Nosferoh:
» WarCraft 3 / Иконки на заказ
Есть идея отображать руны на миникарте, используя способность рудник - но подходящей иконки мне так и не удалось найти...
» WarCraft 3 / Изменение файла .j = отсутствие игроков при выборе карт.
» WarCraft 3 / Как снять защиту с карты?
Ну jass, гуи ты не увидишь, а так там вполне все читабельно, даже имена триггеров не стерты, ну если вам jass непонятен то сразу забываем про свою затею, это не для вас ибо без знания jass че то там ломать и переделывать у вас не получится.
» WarCraft 3 / Как снять защиту с карты?
Вот внизу прикреплю опен-карта
А вот ссылочка на тулу для депротекта карт.
» WarCraft 3 / Приоритетность целей
Так же можно использовать и другие пассивные способности наносящие урон юнитам в области.
» WarCraft 3 / Как увеличить список построек у работника?
» WarCraft 3 / Тригерная способность
Высота полета 0, тип летающий, угол крена в 0 град. убираем все спецэффекты при смерти и усе.
Триггерно двигай даммика прикрепив к нему спецэффект снаряда, когда до цели не останется расстояния убивай дамми и удаляй спецэффект, выбирай юнитов в области вокруг цели, потом исключи цель из группы и нанеси ей урон, после половинный (или какой там у тебя) урон всем остальным, потом создай даммика, вручи ему ракетный удар и прикажи выстрелить им по области под целью, все очень просто!
Ред. quq_CCCP
» WarCraft 3 / Как считывать данные с preload.txt
Смотри устройство pld файла, там собственно через GetPlayerName - эксплуатирует возможность смены имени нейтральных игроков и вызова функции ExecinteFunc в коде карты из pld скрипта, испьзуется в DataManager
GameChache - эксплуатирует свойство кеша, кеш один на все потоки в игре, т.е для pld скрипта, аи скрипта или кода карты всегда один GameChache с одним и тем же именем, там все просто записываем данные в кеш прямо в плд скрипте, а потом выгружаем их в потоке карты (предварительно синхронизируя если это потребуется)
Для использование кеша нужно чтобы в pld скрипте отсутствовал PreloadEnd, иначе ничего не получится...
» WarCraft 3 / Разгадка злобного wait
» WarCraft 3 / Разгадка злобного wait
Экзекуты даже наследуют свойства потока из которого запущены, ExecuteTrigger запущенный из потока триггера наследует его ивент, а так же знание связанным с ним функций, с таймерами и ExecuteFunc я не проверял...
Что качается вейтов в циклах, это убого из за неточности вейта + невозможности установки малого периода, о триггерном движении можно забыть.
» WarCraft 3 / Какие нужны триггеры(примерные) для моего нестандарт. инкома?
Условия -
Дествия GroupPickUnitsOfPlayersMatched (или как то так, я гуи не помню)
-Условия ( уровень способности юнита выше 0, а так же юнит жив)
тогда
SetProperty золото. тек. Игрок какой вы изволите 10 * Уровень способности Mathing Unit
иначе
DoNothing()
Ты серьезно ни гугу?