Да, тоже нашёл. Вот нельзя было это и в common.j написать?
интересно ограничение на все типы?
Эти способности есть только у рынка, который продаёт предметы и нейтральных юнитов, которые появляются на карте. Эти функции лишь ставят лимит на кол-во продаваемых предметов или нейтральных юнитов ожновременно.
После этих манипулиций на карте не будет юнитов, которые сами по себе грузят редактор, а также не останется специальных переменных, которые создаются при указании в гуи юнитов, стоящих на карте.
Эти переменные могут использоваться, потому стоит их оставить. А чтобы их окончательно удалить, нужно найти их в блоке globals, что в самом верху war3map.j.
Можно только зарегистрировать смерть виджета. Через custom script, конечно же. Если событие на приказ-цель, то можно узнать сразу цель-разрушаемый объект
Посмотри модель сферы тьмы, там у одного эффекта в качестве текстуры используется чёрный кружок с режимом modulate. Сохрани её и глянь, как она сделана. Я так когда-то сделал такую текстуру.
UPD: вот и сама модель.
Гхм, слишком сложно сделано.
Заведи себе глобальную переменную целочисленного типа. Назови её "Номер игрока". При срабатывании триггера на смерть делай следующее.
Номер игрока = номер игрока(игрок-владелец(умирающий юнит))
массив[Номер игрока] = массив[Номер игрока] - 1
В настройке переменной твоего массива нужно поставить изначальное значение 3, а размер массива на количество игроков в твоей карте.
появилась до того как я создал вот этот триггер с этой фотки.
Ты тут каждые 0.1 секунды увеличиваешь значение на 3. Зачем?
Ну вообще можно делать рамки в самом JNGP сразу с импортом в карту, для этого достаточно знать английский и прочитать этот мануал. Если не нравятся рамки, что он делает, их можно заменить в папке grimext.
Но лично я всё также делаю с помощтю Button Manager, так как мне сразу в карту импорт не нужен. Я в нём все стандартные рамки продублировал и кинул в кастомные, ибо у Button Manager есть баг у стандартных рамок: он всегда делает Disabled версию, хочешь ты этого или нет.
У тебя есть массив со смертями. Номер ячейки есть номер игрока
Также есть триггер, который регистрирует смерть героя.
В нём ты узнаёшь номер игрока-владельца умирающего героя, и уменьшаешь значение в нужной ячейке на 1 (массив[ячейка] = массив[ячейка] - 1). Обновляешь это значение в мультибоарде.
Если всё сделано так, но не работает, то скриншот триггера сюда.
Какой редактор используется?
Если JNGP, то пробовал ли делать карту без JNGP или с выключенным UMSWE? JNGP подгружает много всяких плагинов, которые могут быть и не нужны.
Ты же задавался уже этим вопросом, почему обрабатываются лишь юниты красного игрока, а остальных нет.
Гхм, залез в код, словил рофл от этого. Совсем не ожидал того, что внутри GroupAddGroup тоже будет проверятся этот флаг. Мда, ОЧЕНЬ много ошибок в лазурных башнях и в самих bj. 8gabriel8:
Речь о группе, когда юнитов создают
Тут совершенно верно замечено. Я изначально вёл речь о Pick every unit in group and do actions.
Обработает лишь красного игрока и удалит группу, а у остальных игроков юнитов нужного типа неоткуда будет брать.
Это было проверено на практике или нет?
Потому что по коду я вижу, что всё будет работать верно. Сначала сработает GetUnitsOfTypeIdAll(), и только потом ForGroupBJ(). Их код я кинул выше.
Если сконвертировать, то будет следующее.
call ForGroupBJ( GetUnitsOfTypeIdAll('hfoo'), function Trig_Untitled_Trigger_001_Func001A )
Это сработает так, как я сказал выше, потому что в JASS, как и во многих языках, передача по значению.
Так это что получается, нужно сначала присвоить глобальную переменную локальной группе, чтобы потом её удалить?
Нет, наоборот. Делаем переменную типа группа, в неё записываем нужную группу, после для неё вызываем Pick every unit in group and do actions, а затем удаляем. Это 3 строчки. Но зачем это, когда можно перед Pick every unit in group and do actions просто написать set bj_wantDestroyGroup = true с таким же результатом? И займет это 2 строчки.
Но это не работает с выбором всех юнитов определённого типа на карте.
Как я уже описал выше, работает, для практической проверки стоит посмотреть карту Лазурные башни, триггер Tech\Zenith Refresh.
Для событий "Юнит входит в радиус другого юнита" и "Юнит выходит из радиуса другого юнита" добавить следующий функционал:
native GetRegisteredUnit takes nothing returns unit // возвращает юнита, в радиус которого входят или выходят.
native GetRegisteredRange takes nothing returns real // возвращает расстояние, на которое нужно подойти или отойти для срабатывания.
Добавить функционал для event, в частности возможность удаления события:
Исправить ситуацию с коллизией триггеров при их динамическом удалении и создании, когда при создании нового триггера у него уже есть события, условия и действия. Однако мои тесты показывают, что такая ситуация невозможна на патче 1.26а, но не факт, что мои тесты верны. Больше об этой ситуации тут.
» WarCraft 3 / Некоторые функции юнитов
Вот нельзя было это и в common.j написать? Эти способности есть только у рынка, который продаёт предметы и нейтральных юнитов, которые появляются на карте. Эти функции лишь ставят лимит на кол-во продаваемых предметов или нейтральных юнитов ожновременно.
Ред. PT153
» WarCraft 3 / Некоторые функции юнитов
» WarCraft 3 / Некоторые функции юнитов
Осталось только выяснить, что делает эта функция.
» WarCraft 3 / Некоторые функции юнитов
Ред. PT153
» WarCraft 3 / Как можно узнать что декорация была атакована/выбрана
» WarCraft 3 / Как ускорить работу редактора карт?
» WarCraft 3 / Как можно узнать что декорация была атакована/выбрана
Если событие на приказ-цель, то можно узнать сразу цель-разрушаемый объект
» WarCraft 3 / Ауры
Ред. PT153
» WarCraft 3 / Создание модели искусственной тени
А по поводу видимости модели в белом тумане - виспов тоже в нём видно.
» WarCraft 3 / Создание модели искусственной тени
Ред. PT153
» WarCraft 3 / Создание модели искусственной тени
Ред. PT153
» WarCraft 3 / Создание модели искусственной тени
UPD: вот и сама модель.
Ред. PT153
» WarCraft 3 / Прошу помощи с мультибордом смертей...
Заведи себе глобальную переменную целочисленного типа. Назови её "Номер игрока". При срабатывании триггера на смерть делай следующее.
Ред. PT153
» WarCraft 3 / Иконки на заказ
Но лично я всё также делаю с помощтю Button Manager, так как мне сразу в карту импорт не нужен. Я в нём все стандартные рамки продублировал и кинул в кастомные, ибо у Button Manager есть баг у стандартных рамок: он всегда делает Disabled версию, хочешь ты этого или нет.
Ред. PT153
» WarCraft 3 / Прошу помощи с мультибордом смертей...
Также есть триггер, который регистрирует смерть героя.
В нём ты узнаёшь номер игрока-владельца умирающего героя, и уменьшаешь значение в нужной ячейке на 1 (массив[ячейка] = массив[ячейка] - 1). Обновляешь это значение в мультибоарде.
» WarCraft 3 / Как ускорить работу редактора карт?
Ред. PT153
» WarCraft 3 / Какой необходимый размер иконка как монета и дерево?
Путь: UI\Widgets\ToolTips\Human
Там же и остальные иконки для подсказок.
Путь: UI\Feedback\Resources
Там же и остальные иконки для верхней панели.
» WarCraft 3 / Иконки на заказ
» WarCraft 3 / Как ускорить работу редактора карт?
Если JNGP, то пробовал ли делать карту без JNGP или с выключенным UMSWE? JNGP подгружает много всяких плагинов, которые могут быть и не нужны.
Ред. PT153
» WarCraft 3 / Проблемы утечек
Мда, ОЧЕНЬ много ошибок в лазурных башнях и в самих bj.
8gabriel8:
Ред. PT153
» WarCraft 3 / Юнит как Герой + его позиция
Условия: Вошедший юнит такой-то.
Действия: Приказать вошедшему юниту такой-то приказ.
Приказ зависит от заклинания.
Ред. PT153
» WarCraft 3 / Проблемы утечек
Потому что по коду я вижу, что всё будет работать верно. Сначала сработает GetUnitsOfTypeIdAll(), и только потом ForGroupBJ(). Их код я кинул выше.
Если сконвертировать, то будет следующее.
» WarCraft 3 / Юнит как Герой + его позиция
Ред. PT153
» Мир безумного / WarCraft III Reforged - WE (что хотите увидеть?)
Предлагаю
Ред. PT153
» WarCraft 3 / Юнит как Герой + его позиция