Делаешь глобальный массив логических PlayerInGame и на инициализации пишешь в него true, если игрок есть.
Номера игроков начинаются с нуля.
local integer a=0
loop
exitwhen a>7
set p=Player(a)
if GetPlayerSlotState(p)==PLAYER_SLOT_STATE_PLAYING then
set PlayerInGame[a]=true
endif
set a=a+1
endloop
После этого создаёшь массив целых числел и записываешь туда действующих игроков.
local integer array players
local integer a=0
local integer n=-1
local integer vampireplayer=0
loop
exitwhen a>7
if PlayerInGame[a] then
set n=n+1
set players[n]=a
endif
set a=a+1
endloop
После выбираешь рандомного.
set vampire=players[GetRandomInt(0,n)] Как распространить форматирование на несколько строк?
Нужно пересмотреть триггер, который отвечает за передвижения крипов.
Юниты посылаются через IssuePointOrder сразу в конечную точку. Если юниту отдаётся приказ скастовать спел, то по окончанию каста опять отдаётся приказ IssuePointOrder. 8gabriel8:
Попробуй дать юнитам способность "Дух (видимый)".
А тогда зачем все эти танцы с бубнами с рунами, когда можно просто давать герою или воину эту способность и удалять через не которое время, используя таймеры?
В одном триггере создаёшь таймер Т с периодом 0.01.
В этом триггере даёшь событие Timer T Expired.
Когда нужно, пишешь действие PauseTimer(t) или DestroyTimer(T). ApoloZ2:
я не люблю jass
А зря, то, что ты написал на гуи тут, весьма ужасно на самом деле.
Гуи делает ужасные if конструкции.
Зачем используешь группу игроков?
Не используй периодический таймер в событиях. Лучше сделай периодический таймер и событие Timer expired. а лучше перейти на JASS и написать таймер к функции.
Когда нужно удаляешь таймер или ставишь на паузу, и триггер перестаёт срабатывать.
Делаешь триггерно событие на получение урона с условием, что источник урона имеет эту способность
В некоторых ситуациях этого будет достаточно. Можно давать разным способностям разный урон.
Вообще, ты прав, но только сначала накладывается бафф, а потом урон, или наоборот? Стоит ещё помнить, что событие на получение урона (Takes Damage) срабатывает до того, как урон действительно получается
Честно, что-то такое слышал, но не проверял. Если это верно, то да, надо ставить 0.01. Но тогда спел будет сбивать поддерживаемые способности. Можно попробовать ещё с Ensnare.
в условиях еще наличие баффа проверять.
А это зачем?
Thunderbolt
Так, это бред, лучше использовать Acid Bomb. Только нужно оставить значение Damage Interval не нулевым.
Можно сделать с помощью Thunderbolt с длительностью стана 0 и уроном 0.01. Делаешь триггерно событие на получение урона с условием, что источник урона имеет эту способность (уровень способности больше 0) и урон больше 0 (это важно, так как при наложении и убирание баффов юнит получает 0 урона). В действиях создаёшь даммика, который кастует твой спел.
Scenario>Force Properties>галка Use Custom Forces. Если поставить её, то возникнет ошибка, которая описана в вопросе. Если её убрать, то всё вновь начнёт работать верно.
На самом деле, была проблемы в галке Shared Vision и нахождением противника в том же Force, что и игрок.
Извините, если я не в тему, так как не понимаю что за Calculate Extents в ME, но, по-моему, вы речь ведёте об этом: xgm.guru/p/wc3/hpbar
3-ий способЕсли хотите отдельных юнитов - меняйте значение в РО. В РО у юнита меняйте размер шкалы выбора (полоски), высоту выбора зажимайте shift и меняйте.
Графика - высота выбора не поможет? Или это только на круг выбора распространяется? На всякий случай, попробуйте.
Только на круг выбора. Я меняю модель, где я нажал calculate Extents, и хп бар на месте. Меня вообще больше волнует, почему после Calculate Extents размер модели уменьшается.
Я нашёл корень этой проблемы. Проблемы с возможностью получения урона Faerie Dragon, пока тот находится под действием Phase Shift.
Scenario>Force Properties>галка Use Custom Forces. Если поставить её, то возникнет ошибка, которая описана в вопросе. Если её убрать, то всё вновь начнёт работать верно. А я из-за этого сидел и новый ландшафт рисовал... Э-эх.
У меня все переменные созданы в графе Globals, а не в меню редактора. Хотя роли это не играет, функция создания и так включена. Меня больше волнует ландшафт, ибо я его долго делал. Не увидел ответ NekoriDes по поводу ландшафта. Завтра уже этим займусь.
Дело, видимо, в карте. Только вот чем это могло быть вызвано? Так, можно же импортировать данные из РО и ред. триггеров в новую карту без каких-либо потерь? А ландшафт можно?
может время совпадает с перезарядкой башни, и в дракончика летит уже следующий снаряд?
Ну я же не глупый, там он в астрале секунд 6 (я так настроил), а у башни кд 0,9.
Карту сейчас кину.
Это смешно.
Я из карты удалил абсолютно всё: все триггеры, всех кастомных юнитов, звуки, импорт - а эта фигня всё равно не исчезла.
Если, как я понимаю, это способность ночных эльфов, то юнит должен становиться неуязвимым на 1.5 сек. при настройках по умолчанию. Может, урон наносится триггерно, или с задержкой, или от другого юнита? У меня всегда нормально работала эта способность.
Я в своей карте поставил дракончика за себя (красный) и поставил за синего башню людей. Все эти юниты без каких либо изменений и триггеров, кроме того, что дракону я увеличил время пребывание в астрале. Так вот, башня бьет дракона, пока тот в астрале. Создал полностью новую карту, сделал тоже самое - башня не бьёт, как и должно быть.
В константах всё чисто, я даже их обнулял.
Ред. PT153
» WarCraft 3 / Как сделать триггер на рандом выбор.
Номера игроков начинаются с нуля.
loop
exitwhen a>7
set p=Player(a)
if GetPlayerSlotState(p)==PLAYER_SLOT_STATE_PLAYING then
set PlayerInGame[a]=true
endif
set a=a+1
endloop
local integer a=0
local integer n=-1
local integer vampireplayer=0
loop
exitwhen a>7
if PlayerInGame[a] then
set n=n+1
set players[n]=a
endif
set a=a+1
endloop
set vampire=players[GetRandomInt(0,n)]
Как распространить форматирование на несколько строк?
» WarCraft 3 / Массивы
Ред. PT153
» WarCraft 3 / Как увеличить урон боевой единице с помощью триггера?
» WarCraft 3 / Столкновения юнитов
8gabriel8: А тогда зачем все эти танцы с бубнами с рунами, когда можно просто давать герою или воину эту способность и удалять через не которое время, используя таймеры?
Ред. PT153
» WarCraft 3 / Столкновения юнитов
» WarCraft 3 / Удаление события, созданного с помощью "Add New Event"
Ред. PT153
» WarCraft 3 / Проблема с Every 0.01 seconds of game time
В этом триггере даёшь событие Timer T Expired.
Когда нужно, пишешь действие PauseTimer(t) или DestroyTimer(T).
ApoloZ2:
Гуи делает ужасные if конструкции.
Зачем используешь группу игроков?
Ред. PT153
» WarCraft 3 / Проблема с Every 0.01 seconds of game time
а лучше перейти на JASS и написать таймер к функции.
Когда нужно удаляешь таймер или ставишь на паузу, и триггер перестаёт срабатывать.
» WarCraft 3 / Jass New Gen Pack - Rebuild 1.4
» WarCraft 3 / Триггерное изменение индексов атаки
» WarCraft 3 / движение через ( X . y )
Ред. PT153
» WarCraft 3 / Как сделать чтобы у способности без снаряда летел снаряд?
Вообще, ты прав, но только сначала накладывается бафф, а потом урон, или наоборот? Стоит ещё помнить, что событие на получение урона (Takes Damage) срабатывает до того, как урон действительно получается
Ред. PT153
» WarCraft 3 / Как сделать чтобы у способности без снаряда летел снаряд?
» WarCraft 3 / Как сделать чтобы у способности без снаряда летел снаряд?
» WarCraft 3 / Изменение положения полоски здоровья
» WarCraft 3 / Phase Shift
» WarCraft 3 / Изменение положения полоски здоровья
Calculate Extents - рассчитать границы.
» WarCraft 3 / Изменение положения полоски здоровья
Меня вообще больше волнует, почему после Calculate Extents размер модели уменьшается.
» WarCraft 3 / Phase Shift
Scenario>Force Properties>галка Use Custom Forces. Если поставить её, то возникнет ошибка, которая описана в вопросе. Если её убрать, то всё вновь начнёт работать верно.
А я из-за этого сидел и новый ландшафт рисовал... Э-эх.
» WarCraft 3 / Phase Shift
» WarCraft 3 / Phase Shift
Не увидел ответ NekoriDes по поводу ландшафта. Завтра уже этим займусь.
» WarCraft 3 / Phase Shift
Так, можно же импортировать данные из РО и ред. триггеров в новую карту без каких-либо потерь? А ландшафт можно?
Ред. PT153
» WarCraft 3 / Phase Shift
Карту сейчас кину.
Это смешно.
Я из карты удалил абсолютно всё: все триггеры, всех кастомных юнитов, звуки, импорт - а эта фигня всё равно не исчезла.
» WarCraft 3 / Phase Shift
В константах всё чисто, я даже их обнулял.
» WarCraft 3 / Phase Shift