Надо статью чтоли написать, что чтобы поменять модель там или вовсе все статы герою нужно:
Сделать 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() Ты серьезно ни гугу?
Блин, я не знаю у вас что фантазии нету?
Сделай абилку на основе Змеиная ловкость (или чего то другого, что ничего ни делает) сделай у этой способности несколько уровней (допустим 5)
У апгрейдов есть свойство повышать уровень способности у всех юнитов игрока, используй это.
Периодически выбирай в группу всех юнитов игрока с такой то способностью, потом добавляй игроку скока там золота X уровень способности за каждую ферму.
Рикошет это тип атаки(тип оружия - edited), такой, у охотниц Лунный чакрум нифига не дает, просто иконка, сам эффект вызван переключением атаки.
Это делает либо апгрейдом либо морфом юнита, так же подсовыванием (убиранием абилки с орб эффектом) ВНИМАНИЕ - тип атаки снаряд рикошет не сочетается с большинством орб эффектов.
Как, интересно, камера может вызвать десинхронизацию?
Ну если в перемещение камеры запихать создание локейшена ( у гуишников вроде такое было, берет локейшен от локальной камеры), сама по себе камера безопасна в этом плане.
о боже, руна виндвалка и триггер с ивентами юнит отдал приказ, юнит сдох, юнит. Условие что приказ не равен Attack Once (этот приказ нельзя отдать в ручную, тока триггерно) собственно проверяем отдавая приказ, не отменил ли его юнит, если отменил удаляем бафф виндвалка и даем его снова только когда юнит решит атаковтаь, после отдаем приказ Attack once.
Метот с руной защитит от промахов но на этот удар не сработают орбы. Недавно делал блинкстрайк с фикс.дмг, могу кинуть код если интересно, метод исполнения VJASS\\
quq_CCCP, да взломали, потому что плохая там система была.
Я же предлагаю сделать проверку
if StringHash(GetPlayerName(p)) == 123456 and StringHash(GetEventPlayerChatString()) == 23456 then
call activate_VIP(p)
endif
Очевидный плюс - из кода карты невозможно будет определить ник и пароль.
Хеш от строки вроде не зависит от содержания строки, аналог функции на RB S2Ix которая возвращает номер строки в таблице строк, но вот нет гарантий что по этому адресу всегда будет ник игрока.
Ред. 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()
Ты серьезно ни гугу?
» WarCraft 3 / Какие нужны триггеры(примерные) для моего нестандарт. инкома?
Сделай абилку на основе Змеиная ловкость (или чего то другого, что ничего ни делает) сделай у этой способности несколько уровней (допустим 5)
У апгрейдов есть свойство повышать уровень способности у всех юнитов игрока, используй это.
Периодически выбирай в группу всех юнитов игрока с такой то способностью, потом добавляй игроку скока там золота X уровень способности за каждую ферму.
Ред. Melissa
» WarCraft 3 / Рикошет
Это делает либо апгрейдом либо морфом юнита, так же подсовыванием (убиранием абилки с орб эффектом)
ВНИМАНИЕ - тип атаки снаряд рикошет не сочетается с большинством орб эффектов.
» WarCraft 3 / Десинк
» WarCraft 3 / Как создать способность,усиливающую (1!) следующую атаку.
Метот с руной защитит от промахов но на этот удар не сработают орбы.
Недавно делал блинкстрайк с фикс.дмг, могу кинуть код если интересно, метод исполнения VJASS\\
» WarCraft 3 / Десинк
В доте или моей карте это работает без дисинхов.
Ред. quq_CCCP
» WarCraft 3 / Система VIP
Второе не проверял, поэтому хз.
» WarCraft 3 / Система VIP