LastUchiha, да, вполне ) можно так вообще в самой игре все юниты абилки и прочее поменять на свои
Путь к модели юнита не там, он в unit ui.slk, в столбце file
LastUchiha, там должны быть ещё txt файлы, в них имена, названия и описания, и пути к иконкам и снарядам, типа unitfunc.txt unitstrings.txt, или файл .wts
nazarpunk, Не знаю, на джассе написана наверно
Автор пишет на гуях, значит умеет он писать только на гуях и ответ ему нужен на гуях либо если охота, можешь сделать автору системку на джассе, со всеми триггерами, впихнуть её в карту-пример и разжевать, как её активировать на гуях )
nazarpunk, ну и что, это привязка к юниту, что ли? Он прыгать будет с места на место, если ему периодически координаты менять, а автор просил именно привязку. Тем более автор на Гуи делает
Даже если каждые 0,01 сек ему позицию менять, все равно это заметно, некрасиво выходит. Да и утечно на гуях получится
Тексттагам можно задать только определённое прямое движение и стартовые координаты, привязать к юниту, как эффект, не выйдет. Можно, конечно периодически ими спамить, каждую секунду, но 1 - их все не будет видно, 2 - громоздкая система получится
Во-первых, сообщество XGM настоятельно рекомендует перестать использовать эти решения из 2007-го, с даммиками, вызывающими даммиков, сейчас есть возможность сделать лучше.
Во-вторых, сообщество XGM настоятельно рекомендует перейти на Ujapi и AngelScript.
Не припомню такое голосование на XGM, где проголосовало 51% пользователей и где было принято решение советовать перестать делать даммики и переходить на ujapi и angelscript. 20 - 50 человек из сотен людей - это не сообщество XGM.
Говорите за себя, а не за всех )
MrSaW, с локальными попробуй, там переменные не перезаписываются. Изначально и подразумевалось, что триггер под них сделан. И там без разницы, есть вэйт или нет, ведь юниты записаны. Но это на джассе.
Centyrion, ну, либо 2 цикла, либо огромная бд на один цикл, с учётом всех 6 слотов, что также будет большой цикл, из за данных х 6, что по итогу выльется в ещё больше строк кода )
Centyrion, Попробуй тогда вариант специально под массив. В игре я это не проверял, если что, так что подправь, если потребуется.
function SbornItemArray takes unit hero, integer indMin, integer indMax, integer maxkolvo returns boolean
// indMin - минимальный индекс куска массива, indMax - конечный индекс куска массива
local integer index = 0
local integer arrayindex = 0
local integer kolvo = 0
local integer ItemId = 0
loop
exitwhen kolvo == maxkolvo or index >= bj_MAX_INVENTORY
set ItemId = GetItemTypeId ( UnitItemInSlot ( hero, index) )
set arrayindex = indMin
if ItemId > 0 then
loop// цикл по массиву. Ид предметов в массиве должны располагаться друг за другом, на каждый сборный предмет свой кусок массива.
exitwhen arrayindex > indMax
if ItemId == Item[arrayindex] then
set kolvo = kolvo + 1
endif
set arrayindex = arrayindex + 1
endloop
endif
set index = index + 1
endloop
if kolvo == maxkolvo then
return true
endif
return false
endfunction
Вот тебе готовая протестированная в разных комбинация функция по проверке всех нужных предметов. Проверяет кол-во, и все ид предметов. Нужно также задать макс кол-во. Если не хватает предметов и инвентаре, или другие предметы, хоть 1, или и то и другое, будет false. Если все предметы есть, в любом порядке, будет true.
function SbornItem takes unit hero, integer iditem1, integer iditem2, integer iditem3, integer iditem4, integer iditem5, integer iditem6, integer maxkolvo returns boolean
local integer index = 0
local integer kolvo = 0
local integer ItemId = 0
loop
exitwhen kolvo == maxkolvo or index >= bj_MAX_INVENTORY
set ItemId = GetItemTypeId ( UnitItemInSlot ( hero, index) )
if ItemId > 0 then
if ( ItemId == iditem1 or ItemId == iditem2 ) or ( ItemId == iditem3 or ItemId == iditem4 ) or ( ItemId == iditem5 or ItemId == iditem6 ) then
set kolvo = kolvo + 1
endif
endif
set index = index + 1
endloop
if kolvo == maxkolvo then
return true
endif
return false
endfunction
Амулет, я так понимаю, пассивный, правильно? Тогда попробуй что нибудь вроде:
Амулету дать ауру с баффом (если он предмет и носится на герое и действует на соседних юнитов) или сделать пустышку (если он просто абилка)
Также нужно сделать эти абилки 2х уровневыми
Юнит любой кастует спелл
Если у цели каста есть бафф или пустышка
----Если уровень её равен 1
-------То не кастовать триггерный спелл или кастовать даммикаст очищение на цель
--------Найти героя с аурой или цель
--------Поставить левелы абилки на 2
--------Подождать n секунд
--------Вернуть левелы абилки обратно на 1
----endif
endif
Чтобы не возиться с переменными, лучше исполнить это на джассе.
MpW, Всё правильно. В начале атаки запускается триггер, и тут можно сделать несколько проверок, чтобы не было ложных срабатываний (например сразу выдавать цели спец абилку пустышку и потом убирать её), отсрочку по времени итд итп. Просто я самый базовый вариант описал, без доработок.
В идеале, конечно же было бы хорошо повесить это на триггер "юнит получает урон", но программисты близов поленились сделать такое событие на Любого юнита, а сделали только на конкретного.
А разве в абилке Ракеты нельзя настроить кол-во целей? Вроде как можно. По умолчанию там 3 стоит. Вместо 3 можно 6 выставить. Так же ещё у самого танка альянсовского посмотреть, сколько целей разрешено для его атаки по воздуху. Правда, тут ракеты одновременно запускаются...
ScorpioT1000, Попробовал. Установил видеонастройки на минимум, убрал нормал маппинг у террейна. Итого - ФПС - на пустом месте 40-50, на городе - 6,7, с видом от 3 лица - 2,5 ! Меньше 2,5 не упало.
Поюзал программку. Для скриншотов красивых - самое то, особенно если модели лучше стандартных, тени прямо супер прорисовывает. Выглядит, как почти современная игра. (Ну, середины нулевых :D) Сочетается с кастомным глобальным освещением и погодными эффектами. Но для игры не годится, начинаются лютые тормоза, FPS падает в 8 !!! раз примерно (и это при том, что комп у меня тянет ведьмака 3 и гта 5 на нормальных настройках!). Если при этом включить свободную камеру, то 1 - перестают работать jass скрипты, связанные с камерой и зумом, 2 - если поставить камеру, как при виде от 3 лица, FPS падает еще в 1,5 раза.
FPS при обычном запуске (обведен в красную рамку)
FPS при запуске с Рендер Едже - видно карты нормалей у террейна, динамические тени и измененный угол глобального освещения. (ФПС обведен в красную рамку)
Ред. EugeAl
» WarCraft 3 / Как взломать карту Warcraft 3?
можно так вообще в самой игре все юниты абилки и прочее поменять на свои
Путь к модели юнита не там, он в unit ui.slk, в столбце file
» WarCraft 3 / Как взломать карту Warcraft 3?
» WarCraft 3 / Как привязать ТЕКСТАГ в юниту???
» WarCraft 3 / Как привязать ТЕКСТАГ в юниту???
Автор пишет на гуях, значит умеет он писать только на гуях и ответ ему нужен на гуях
либо если охота, можешь сделать автору системку на джассе, со всеми триггерами, впихнуть её в карту-пример и разжевать, как её активировать на гуях )
Ред. EugeAl
» WarCraft 3 / Как привязать ТЕКСТАГ в юниту???
» WarCraft 3 / Как привязать ТЕКСТАГ в юниту???
» WarCraft 3 / Пулемётный огонь веером
» WarCraft 3 / Пулемётный огонь веером
Говорите за себя, а не за всех )
Ред. EugeAl
» WarCraft 3 / Циклы и их лимиты (+ способы обхода лимитов)
Ред. EugeAl
» WarCraft 3 / Где находятся спецэффекты, появляющиеся на земле
» WarCraft 3 / Как настроить антимагический амулет?
» WarCraft 3 / Оптимизация Выполнения Последовательности Кода
Ред. EugeAl
» WarCraft 3 / Оптимизация Выполнения Последовательности Кода
» WarCraft 3 / Оптимизация Выполнения Последовательности Кода
» WarCraft 3 / Оптимизация Выполнения Последовательности Кода
Ред. EugeAl
» WarCraft 3 / Оптимизация Выполнения Последовательности Кода
» WarCraft 3 / Как настроить антимагический амулет?
Амулету дать ауру с баффом (если он предмет и носится на герое и действует на соседних юнитов) или сделать пустышку (если он просто абилка)
Также нужно сделать эти абилки 2х уровневыми
Если у цели каста есть бафф или пустышка
----Если уровень её равен 1
-------То не кастовать триггерный спелл или кастовать даммикаст очищение на цель
--------Найти героя с аурой или цель
--------Поставить левелы абилки на 2
--------Подождать n секунд
--------Вернуть левелы абилки обратно на 1
----endif
endif
Ред. EugeAl
» WarCraft 3 / пассивная способность "кража маны" при атаке
» WarCraft 3 / Не могу придумать, как сделать ракетный залп - залпом
Ред. EugeAl
» WarCraft 3 / пассивная способность "кража маны" при атаке
Юнит атакован
Если у атакующего есть пассивка пустышка Кража маны (уровень абилки больше 0)
То Назначить кол-во маны атакуемому - его текущая мана минус кол-во украденной маны
И Назначить кол-во маны атакующему - его текущая мана плюс кол-во украденной маны
» RenderEdge / [RenderEdge] Графическая модификация для WarCraft III
» RenderEdge / [RenderEdge] Графическая модификация для WarCraft III
» RenderEdge / [RenderEdge] Графическая модификация для WarCraft III
FPS при обычном запуске (обведен в красную рамку)
» WarCraft 3 / способность "защитная аура"
» Хроники Вальдиона. Начало / Модели зданий людей