nazarpunk, Я вот щас подумал, вот стоит у меня 1000 юнитов с аурами в кучке, сначало, просчитается 999+1 юнит, а потом ещё 999*(999+1), то есть всего 1.000.000, а что если некому будет просчитываться
Можно создать 1000 точек (по точке под каждым юнитом), потом 1 раз взять группу GroupEnumUnitsInRange, в ней окажутся все эти 1000 юнитов, сохранить их и удалить, и тогда все остальные GroupEnumUnitsInRange вокруг оставшихся точек, не просчитают ни одного юнита, а потом всех этих сохранённых юнитов вернуть со всеми их приказами и прочей фигнёй
P.S. Я незнаю насколько сильно будет нагружать удаление и создание юнитов, вообще главная задача сделать так чтобы GroupEnumUnitsInRange не проверял юнита, а для этого нужно чтобы либо 1. Юнит перестал быть юнитом 2. Юнита не было
Ну вот короче мой вариант, скорее всего фегня, есть идея с созданием тектуры карты, но я не знаю как в варкрафте делать текстуры на ходу
nazarpunk, Опиши задачу пожалуйста поподробней, ни разу не слышал о ней, что нужно сделать, чтобы например при 20 юнитах с аурами и например ещё 30 без ауры, стоящими рядом/или не совсем рядом (рандомно), каждый юнит просчитывался только 1 раз? А не каждый раз от каждой ауры, я правильно понял?
Карту в студию, а вообще скорее всего не тот ивент, третья способность явно "Канал", для неё нужно другое событие, а именно EVENT_PLAYER_UNIT_SPELL_CHANNEL
IzobretatelBoom, я на своей карте через дамми-кастера проверяю, нанесён урон магией или нет, если урон от дамми-кастера, значит магией, если нет, значит тычка от юнита
Второй способ это через UjAPI, там вроде есть способы отловить то что нужно
P.S. Мега-хорош, лайк
Svintus, допустим есть число 28437, в цикле она получает первую цифру из числа 28437, то есть цифру "2", после чего конвертирует её в строку и складывает строки, потом берёт следующую цифру "8", опять конвертирует, складывает, получается уже "28", ну и делает это до тех пор, пока не получится строка "28437", а затем возвращает её
Она так же работает и с отрицательными числами
Как сказали выше "Запускаешь таймер и на его хэндл сохраняешь юнита." Внутри таймера собственно урон и наносишь
А чтобы горение обновлялось, сохраняешь сам таймер на хендл горящего юнита и при попадании скилла удаляешь таймер (старый) и запускаешь новый, тем самым огонь обновится
Да, но только в редакторе объектов, максимальной угол крена и максимальный угол поворота нужно установить в отрицательные значения, функции
SetWidgetYaw()
SetWidgetPitch()
SetWidgetRoll()
SetUnitYaw()
SetUnitPitch()
SetUnitRoll() из UjAPI - НЕ РАБОТАЮТ, проверял сейчас
И функции из мемхака не работали (проверял давно)
Makeba, Отрицательные вероятности нужны, чтобы юнит с вероятностями ничего не получил, при получении предмета/баффа/способности, добавляющие ему вероятности
» WarCraft 3 / Как сделать триггерный поджог?
Можно создать 1000 точек (по точке под каждым юнитом), потом 1 раз взять группу GroupEnumUnitsInRange, в ней окажутся все эти 1000 юнитов, сохранить их и удалить, и тогда все остальные GroupEnumUnitsInRange вокруг оставшихся точек, не просчитают ни одного юнита, а потом всех этих сохранённых юнитов вернуть со всеми их приказами и прочей фигнёй
P.S. Я незнаю насколько сильно будет нагружать удаление и создание юнитов, вообще главная задача сделать так чтобы GroupEnumUnitsInRange не проверял юнита, а для этого нужно чтобы либо 1. Юнит перестал быть юнитом 2. Юнита не было
Ну вот короче мой вариант, скорее всего фегня, есть идея с созданием тектуры карты, но я не знаю как в варкрафте делать текстуры на ходу
» WarCraft 3 / Как сделать триггерный поджог?
» WarCraft 3 / Даммик не кастует способность
» WarCraft 3 / Даммик не кастует способность
» WarCraft 3 / UjAPI Как создать свой первый фрейм?
» WarCraft 3 / Даммик не кастует способность
» WarCraft 3 / Даммик не кастует способность
» WarCraft 3 / Даммик не кастует способность
» WarCraft 3 / Даммик не кастует способность
» WarCraft 3 / возможно ли такое пофиксить?
» WarCraft 3 / Как сделать триггерный поджог?
Второй способ это через UjAPI, там вроде есть способы отловить то что нужно
P.S. Мега-хорош, лайк
» WarCraft 3 / Вывод сообщения на экран о количестве юнитов (I2S не работает в ИИ)
» WarCraft 3 / Вывод сообщения на экран о количестве юнитов (I2S не работает в ИИ)
» WarCraft 3 / Вывод сообщения на экран о количестве юнитов (I2S не работает в ИИ)
Она так же работает и с отрицательными числами
» WarCraft 3 / Как сделать триггерный поджог?
А чтобы горение обновлялось, сохраняешь сам таймер на хендл горящего юнита и при попадании скилла удаляешь таймер (старый) и запускаешь новый, тем самым огонь обновится
Ред. Tredor46
» WarCraft 3 / Вывод сообщения на экран о количестве юнитов (I2S не работает в ИИ)
» WarCraft 3 / Вывод сообщения на экран о количестве юнитов (I2S не работает в ИИ)
» WarCraft 3 / Есть ли возможность развернуть юнита вокруг своей оси?
SetWidgetYaw()
SetWidgetPitch()
SetWidgetRoll()
SetUnitYaw()
SetUnitPitch()
SetUnitRoll() из UjAPI - НЕ РАБОТАЮТ, проверял сейчас
И функции из мемхака не работали (проверял давно)
» WarCraft 3 / В какие моменты имя функции конвертируется в число?
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2
» WarCraft 3 / Функция сложения или вычитания шансов по Формуле убывающей полезности из Dota 2