Вызываем этот код пред созданием героя, чуствуем просадку фпс, побегали, покастовали спеллы (вейт нужно подольше). Идем смотреть что в текстовик сохранилось, там будет полный список того что загружал движок.
Затем Preloader("save//mydata.pld") - это вызов этого скрипта, который загрузит в память все что указанно в этом скрипте.
Это используется в кампаниях.
Можно сделать триггер на команду в чат. Побегал за всех героев, покастовал все спелы, написал команду, файл сохранился.
PlealoadGen() сохраняет абсолютно всё: модельки звуки, текстуры.
Модели всё же стоит ещё и создавать.
Я просто беру всё то, что записал прелоад в файле, копирую в триггер, и все Preload заменяю на PreloadFile.
function PreloadFile takes string s returns nothing
local integer l = StringLength(s)
local string sub = SubString(s, l - 3, l - 1)
call Preload(s)
if sub == "md" or sub == "MD" then
call DestroyEffect(AddSpecialEffect(s, 0, 0))
endif
endfunction
Теперь пролагов при касте спелов и прочего не будет.
PlealoadGen(), насколько я знаю, не подгружает САМИ способности, поэтому их нужно добавлять.
Кривоватая подгрузка, удалять не обязательно. Лучше юзать preload без этаких костылей, темболее в JASS есть механизмы автоматического создания pld скриптов.
У меня в карте 100500 способностей. Можно ли их всех тупо добавить одному юниту для подгрузки (без удаления)?
Можешь глянуть, как я это реализовал. Тут правда используются предметы в качестве индикатора кд.
У башни есть крит, у которого кд 10 секунд. АА башни уменьшает кд на 1 секунду. Текущее кд отображается в иконке предмета. Там можно немного улучшить систему: таймер в 0.25 с 40 раз работает дольше, чем просто таймер 10 с.
Есть способность ANso, которой можно наложить немоту. Когда юнит использует способность, создаёшь даммика со способностью ANso, который кастует последнюю на юнита.
Можно просто удалять способности и добавлять их по истечению определённого времени с помощью таймера.
Так создай 2 предмета, 1 активный, другой неактивный... А события при нажатие предмета меняй на активную а также проверка маны чтобы вернуть в неактивный предмет.... Это даже ребенок может нарисовать алгоритм
Я так и сделал, спрашивал на тот случай, если всё-таки можно сделать по-другому.
Редактор объектов > Войска > Правой кнопкой мыши на воина/героя > Создать нестандартную боевую единицу. И редактируешь её.. Скилы,урон,имя и тд.
Сегодня делал так, создал так героя, для проверки добавил на карту, сохранил карту, зашел в варик вроде норм, но когда я опять зашел в World Editor у меня пропал этот герой
Делай все баффы и дебаффы и давай триггерно разные на основе ауры торнадо, она стакается разная
Это да, но ведь чтобы удалить, когда нужно, необходимо создавать таймер. А я хотел бы без них.
Сами баффы мне не нужны, мне нужно лишь сохранять некоторые значения в хеш-таблицу на время действия способности.
Ред. PT153
» WarCraft 3 / PreloadAbility( integer )
PlealoadGen() сохраняет абсолютно всё: модельки звуки, текстуры.
local integer l = StringLength(s)
local string sub = SubString(s, l - 3, l - 1)
call Preload(s)
if sub == "md" or sub == "MD" then
call DestroyEffect(AddSpecialEffect(s, 0, 0))
endif
endfunction
» WarCraft 3 / PreloadAbility( integer )
» WarCraft 3 / Как делать спеллы в предметах?
» WarCraft 3 / Как сделать пассивку с перезарядкой?
У башни есть крит, у которого кд 10 секунд. АА башни уменьшает кд на 1 секунду. Текущее кд отображается в иконке предмета.
Там можно немного улучшить систему: таймер в 0.25 с 40 раз работает дольше, чем просто таймер 10 с.
Ред. PT153
» WarCraft 3 / Быстрый импорт
Так, разобрался, спасибо.
» WarCraft 3 / Быстрый импорт
» WarCraft 3 / Немота
Можно просто удалять способности и добавлять их по истечению определённого времени с помощью таймера.
» WarCraft 3 / Способность с указанием цели, без анимации каста
» WarCraft 3 / Разница в объявлении real
» WarCraft 3 / Лучший способ отправить юнитов в атаку
» WarCraft 3 / Изменяемая иконка у предмета
» WarCraft 3 / Почему иконка зеленая?
» WarCraft 3 / Удаление юнита
» WarCraft 3 / Башня-герой?
А где-то писали, что из обычного юнита нельзя сделать героя.
Ред. PT153
» WarCraft 3 / Hashtable или array
» WarCraft 3 / Как создать своего героя и добавить его в свою карту?
» WarCraft 3 / Управление уровнем рельефа и водой
Там есть то, что ищешь. Если нужно, конвертируешь в JASS.
» WarCraft 3 / Критические ошибки
» WarCraft 3 / Таргетные способности с таймером
Сами баффы мне не нужны, мне нужно лишь сохранять некоторые значения в хеш-таблицу на время действия способности.
» WarCraft 3 / Критические ошибки
Из-за хеш-таблицы могут быть утечки?
» WarCraft 3 / Критические ошибки
» WarCraft 3 / Критические ошибки
» WarCraft 3 / Критические ошибки