Когда играл с друзьями герой выбирал героя и после выбора, у всех остальных играков почему умирал юнит который стоял рядом с таверной.
Так понимаю, у тебя посередине стоит таверна. А вокруг нее круги выбора, или, проще говоря, даймики от каждого игрока. Ты сделал 10 одинаковых триггеров выбора на каждого игрока. Когда даймик выбирает героя, то он сразу удаляется, появившийся герой сразу тпшется на базу. Самое печальное в этих триггерах нету проверки, чей герой входит в рект. Кому герой принадлежит? И так срабатывает 10 триггеров одновременно, и удаляет даймики. И еще триггеры можно уложится в 1 триггер
Ещё когда играли почему игрок из команды 2ой телепортировался на базу играков 1ой команды
Наверн произошла сработка 10 триггеров. По правде говоря, все триггеры не могут работать одновременно. Он работает последовательно, короче сработал 1 триггер, героя переместили на 1 базу, даймика удалили. Потом сработал второй триггер, наверн и переместили героя из 1-базы на 2-базу. И так со всеми 10 триггерами последовательно. Но мне подсказывает, что так и работает. так у вас, у вас нет проверок, что за юнит входит, поэтому и дергает бедного юнита.
Anzortrue, по-другому никак. надо запоминать в хэше какая активная игрушечная ферма в данный момент у кастера. И подменять на другая, если другая прожата. А так норм работает
Единственный минус: это ограничение кнопок. Не сбивающих скилов типа "безумие" не так много.
Anzortrue, можно сделать две кнопки: пустышку и таргетный оригинал пример
отслеживаем применения пустышки, отдаем игроку прожать горячую кнопку (hot key), активация таргетной абилы по hot key, и у вас прицел. я такой велосипед смастерил для игрушечных ферм. такие абилки, если всучить разом кастеру, не работают из-за одинакового приказа. Поэтому я частенько подменяю абилку игрушечной фермы.
у событии приказа тоже есть цель и id-приказ. id-приказ = id-абилы
событие - юнит отдал приказ цель - юнит
условие: id-приказ = равкоду абилки и тип цели = пехотинец (какое-то у вас особое условие должно быть)
действие:
пауза кастера
отдаем приказ стоп
отменяем паузу кастера
выдать системную ошибку, типа: "вы не можете каставать на этом юните" вместе со звуком
действие с паузой вам мб не понрав. В режиме паузы приказ стоп превращается в кратковременный стан. И юнит больше никуда не бегает. Возможны другие варианты типа приказы: стоп. В некоторых случаях приказ "стоп" не работает, пример приказы в точку. Отдаешь "стопе", а юнит все равно бежит, короче никак не отменяет текущий приказ (пример стройки). Пробовал приказ отдавать другой - приказ в точку кастера. Такое заставляет остановиться. Но это перебитие приказов заставляет юнита поворачиваться на месте.
И еще вопрос ранее думал об перебитии очереди приказов. пока до меня не дошло, что новый приказ в точку по любому собьет очередь. или не? короче на очередь забить пришлось
jesperx, приказом можно отменять. каст еще не начался, а юнит получает приказ. В этот момент приказ можно перебить. так делаю со строительством. а вот с абилами не пробовал. Однако, обычно при получении приказа, кастер поворачивается к цели и подходит поближе, у него кучу времени уходит. А значит, не успевает применить
PT153, не знал, что есть такое =)) warpar23, там еще есть фиксированные союзы. к примеру, у меня в клане 1 есть уже фикс настройки. мб из-за них не робит. я так думаю, но не знаю точно. поэтому я и не создавал кланы. а мб и мой рабочий вариант, и работает норм без этого. я не проверял как на кланах двухсторонние настройки аспекта идут. просто эти настройки надо проверять локально на двух машинах, чего просто лень делать
попробуй то что предложил PT153 там можно откл фиксирование параметров союзов. не знаю точно что это за штука
warpar23, там нужно обоюдный аспект делать. типа:
красный с синим откл союз
синий с красным откл союз
иначе хреново работает односторонний союз. По идее у меня красный и синий не в союзе, сделал откл союза красного с синем в одностороннем порядке. захожу, а там галочка вкл у обоих. А убрать галку никак. Если в двухстороннем порядке, то все норм
warpar23, может быть и я не прав. Надо больше тестить механику вара. Но это работает, я двум противникам поставил союз вкл, и никак не мог снять галочку.
Qulore, сколько было вопросов, хотя честно не смог найти ни одну тему.
вот пример просто пользователь ncv123 все объяснил и ссылку скинул на faq. хотя я тоже скидывал. и карта пример.
Как понять, что в таверне не должно быть войск, типо в редакторе в таверну войско не добавлять? А тогда как в таверну войско запихать?
Просто если в редакторе запихать войска на продажу. То их триггерно не удалишь отсюда, как и не добавить сюда будет никого триггером. Такая механика варика, с этим ничего не поделаешь. Совет: нужно удалить все войска на продажу в редакторе объектов, короче поле на продажу должно быть пустым. Добавлять триггерно нужно, чтобы убирать триггерно
знаю, что один из аспекта союза нативкой например выключает возможность оказывать финансовую помощь. то есть в разделе игрок ты ему уже никак не можешь передать ресурс. это 100% инфа. возможно и при заключении союза тоже можно выключить. смотрим что даст поиск или пробуем сами
настройки аспекта
в союзе аспекта можно выкл "союз о не нападении". короче выкл возможность совсем заключать союз. в меню вы не сможете заключить с игроком союз, нажав галочкой. у вас будет выключена любая возможность взаимодействия с этим игроком.
в союзе аспекта можно выкл "общие войска". короче выкл возможность отдавать под управление войска. вы не сможете ваши войска передать под управление игроку, сколько не нажимай, галочки не будет, и ваши войска не передадутся под контроль.
в союзе аспекта можно выкл "общие войска: все". короче выкл возможность отдавать под управление войска. здесь имеется в виду полное управление, может к примеру заказывать войска и прочее.
в союзе аспекта можно выкл "общий опыт". короче выкл возможность делить опытом с дружественными героями игрока
в союзе аспекта можно выкл "заклинания". короче выкл возможность оказывать вашими заклинаниями на дружественные войска того игрока
в союзе аспекта можно выкл "просьба о помощи". короче выкл возможность пинговать. подавать сигналы союзнику и прочее
в союзе аспекта можно выкл "оказание помощи". короче выкл возможность делиться в менюшке ресурсами
еще как вариант отключить интерфейс или сделать свой
там нужно триггерно добавить в начале, а после удалить триггерно. главная особенность в том, что в таверне в ро никаких юнитов в таверне не должно быть указано. Иначе не работает абилка продажа войск, такая механика
используется в варкрафте для генерации цветов ARGB.
AA : alpha value (альфа - прозрачность)
RR : red value (красный)
GG : green value (зеленый)
BB : blue value (синий)
Кодировка ARGB:
|c - открыть цветовой тег;
первые 2 символа - прозрачность;
вторые 2 символа - красный;
третьи 2 - зелёный;
последние 2 - синий.
|r - закрыть тег
Всего 4 значения (прозрачный, красный, зеленый, синий). Варьируются эти значения от 0 до 255 в 16-ричной системе счисления. Там в 16 ричной системе цвет обозначается двумя символами от 00 до FF (ff). Так 0 обозначают 00, а вот 16 обозначается в hex 10 , 128 обозначают 80, а вот 255 превращают в FF.
В большинстве случаев, вы делаете текст полностью видимым (255 = FF), используя FF как альфа. Прозрачным (0 = 00) текст трудно сделать в описании предметов и юнитов, пробовал. Но можно прозрачным сделать в текстагах. Хотя, у текстагов уже есть отдельные функции для смены цветов.
А что касается остальных, чем больше значения, тем светлее оттенок цвета, и наоборот.
FF000000 - черный цвет со значением 0 у цветов (red, gren and blue)
FFFFFFFF - белый цвет со значением 255 у всех цветов (red, gren and blue)
FFFF0000 - красный
FF00FF00 - зеленый
FF0000FF - синий
в рефордже все это есть, в редакторе объектов рефорджа можно цвета корректировать
или используй программы специальные, для изменения цвета. пример
там используют цветовой код RGB
ScorpioT1000, мне кажется, регионы он там не должен создавать =) вот точки да, а регионы же обычно берут из ныне существующих регионов. если создадим его в редакторе, его же и указывают в функции. ниче не создает.
такая гуи-команда странная, не помню такую в boolean. Типа ПРОВЕРКА что все юниты группы в регионе?
в скрине мб локалки не обнулены. там BJ-функции, раскрой и посмотри нет ли их. пример
советовал бы строить по-другому конструкцию.
если честно, не понятно, что за карту ты скинул. я тебе просто пример оптимизации на гуи показал. Но не решения ваших проблем. на jass этого бы не потребовалось, ибо на гуи приходится изворачиваться из-за ограничении команд и утечности bj-функции. там группы утекают, где-то не обнуляют/не удаляют.
Я короче более менее понял вашу ситуацию. 4триггер у вас не будет работать из-за переменной. там надо в фильтре вместо Picked unit ставить Matching Unit. С 4 примером я кажется ошибся. Там у меня по другому работает: выделяю всех из группы и нахожу рандомного юнита, а надо выделить вокруг гг, которые состоят в группе.
не знаю будет работать способ предоставленный на киберфоруме, если что стоит лучше поискать в инете. мб есть вариант получше
у здания обычно там не физ размер, у них это прямоугольная (квадратная) текстура пути. диагональ прямоугольника, а точнее квадрата наверн надо принимать за радиус?
JableNine, не за что =)
в ячейку можно сохранять спец нативками данные патче 1.24. Там на каждый тип своя нативка (типа сохранить молнию или сохранить юнита. ранее до хэш-таблицы использовали ретурн баг, где могли конвентировать любой объект (юнит, эффект, молнию итд) в число и обратно. но сюда и могли вирусняк записать, поэтому близзарды дали отдельные команды: сохранить/загрузить на каждый тип объекта), но сохранить можно что-то одно. Если там ничего не сохранено, вернет ноль или null. Кстати там есть проверки пустой ли хэндл, и прочее
Хэш-таблицу это можно представить как таблицу Excel. Каждая ячейка имеет свое местоположение в таблице: номер строки и номер столбца. В морской бой играли? или шахматы? Это как точка имеет свои координаты x,y.
Каждой ячейке еще можно задать тип данных: целое число, реальное число, строка и пр. В нашем случае можно добавлять юнита, эффекты, группы, таймеры и многое др.
Хэш-таблица имеет два ключа: key 1 - старший (родительский), и key 2 -младший. В Jass с этим все же попроще. В гуи там немного местами ключи перепутаны. Короче, данные объекта чаще всего записывают на хэндл - номер объекта в игре. Когда в игре создается футман, ему автоматом число присваивают N+0. Создают второго, и ему же присваивают номер N+1. Этот номер хэндла можно получить нативкой GetHandleId
GetHandleId(item) - хэндл итема
GetHandleId(unit) - хэндл юнита итд
key 1
GetHangleId(Item)
key 2
1
2
Итог
тип: таймер. таймер - время жизни итема
тип: целое число. игрок - кому принадлежит итем
пример выше, я на этот же хэндл могу записать два разных значения. Могу и больше значении записать в таблицу, но наглядная таблица получится огромной, поэтому остановился на двух. И потом выгрузить данные в переменные
методом сравнения, заводим переменную Max. Нам изначально макс число неизвестно, поэтому перед работой обнуляем переменную Max=0.
далее запускаем цикл A. будем перебирать каждого юнита в массиве, и проверять число.
If число > Max then
set Max = число в данном массиве
endif
Итак с каждым юнитом в цикле
Ред. MpW
» WarCraft 3 / Проблема с выбором героя в таверне.
Ред. MpW
» WarCraft 3 / Юнит начинает применять способность
Единственный минус: это ограничение кнопок. Не сбивающих скилов типа "безумие" не так много.
Ред. MpW
» WarCraft 3 / Юнит начинает применять способность
отслеживаем применения пустышки, отдаем игроку прожать горячую кнопку (hot key), активация таргетной абилы по hot key, и у вас прицел. я такой велосипед смастерил для игрушечных ферм. такие абилки, если всучить разом кастеру, не работают из-за одинакового приказа. Поэтому я частенько подменяю абилку игрушечной фермы.
Ред. MpW
» WarCraft 3 / Юнит начинает применять способность
Ред. MpW
» WarCraft 3 / Юнит начинает применять способность
условие: id-приказ = равкоду абилки и тип цели = пехотинец (какое-то у вас особое условие должно быть)
действие: действие с паузой вам мб не понрав. В режиме паузы приказ стоп превращается в кратковременный стан. И юнит больше никуда не бегает. Возможны другие варианты типа приказы: стоп. В некоторых случаях приказ "стоп" не работает, пример приказы в точку. Отдаешь "стопе", а юнит все равно бежит, короче никак не отменяет текущий приказ (пример стройки). Пробовал приказ отдавать другой - приказ в точку кастера. Такое заставляет остановиться. Но это перебитие приказов заставляет юнита поворачиваться на месте.
И еще вопрос ранее думал об перебитии очереди приказов. пока до меня не дошло, что новый приказ в точку по любому собьет очередь. или не? короче на очередь забить пришлось
Ред. MpW
» WarCraft 3 / Юнит начинает применять способность
Ред. MpW
» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9
» WarCraft 3 / После выбора героя он не проподает
Ред. MpW
» WarCraft 3 / Как отключить возможность заключать союзы через специальное окно
warpar23, там еще есть фиксированные союзы. к примеру, у меня в клане 1 есть уже фикс настройки. мб из-за них не робит. я так думаю, но не знаю точно. поэтому я и не создавал кланы. а мб и мой рабочий вариант, и работает норм без этого. я не проверял как на кланах двухсторонние настройки аспекта идут. просто эти настройки надо проверять локально на двух машинах, чего просто лень делать
попробуй то что предложил PT153 там можно откл фиксирование параметров союзов. не знаю точно что это за штука
Ред. MpW
» WarCraft 3 / Как отключить возможность заключать союзы через специальное окно
красный с синим откл союз
синий с красным откл союз
иначе хреново работает односторонний союз. По идее у меня красный и синий не в союзе, сделал откл союза красного с синем в одностороннем порядке. захожу, а там галочка вкл у обоих. А убрать галку никак. Если в двухстороннем порядке, то все норм
» WarCraft 3 / Как отключить возможность заключать союзы через специальное окно
» WarCraft 3 / Как отключить возможность заключать союзы через специальное окно
Ред. MpW
» WarCraft 3 / После выбора героя он не проподает
вот пример просто пользователь ncv123 все объяснил и ссылку скинул на faq. хотя я тоже скидывал. и карта пример.
Ред. MpW
» WarCraft 3 / Как отключить возможность заключать союзы через специальное окно
в союзе аспекта можно выкл "общие войска". короче выкл возможность отдавать под управление войска. вы не сможете ваши войска передать под управление игроку, сколько не нажимай, галочки не будет, и ваши войска не передадутся под контроль.
в союзе аспекта можно выкл "общие войска: все". короче выкл возможность отдавать под управление войска. здесь имеется в виду полное управление, может к примеру заказывать войска и прочее.
в союзе аспекта можно выкл "общий опыт". короче выкл возможность делить опытом с дружественными героями игрока
в союзе аспекта можно выкл "заклинания". короче выкл возможность оказывать вашими заклинаниями на дружественные войска того игрока
в союзе аспекта можно выкл "просьба о помощи". короче выкл возможность пинговать. подавать сигналы союзнику и прочее
в союзе аспекта можно выкл "оказание помощи". короче выкл возможность делиться в менюшке ресурсами
» WarCraft 3 / После выбора героя он не проподает
» WarCraft 3 / Большой радиус на выбор героя через таверну
» WarCraft 3 / Как сделать цветной текст?
AA : alpha value (альфа - прозрачность)
RR : red value (красный)
GG : green value (зеленый)
BB : blue value (синий)
Кодировка ARGB:
|c - открыть цветовой тег;
первые 2 символа - прозрачность;
вторые 2 символа - красный;
третьи 2 - зелёный;
последние 2 - синий.
|r - закрыть тег
Всего 4 значения (прозрачный, красный, зеленый, синий). Варьируются эти значения от 0 до 255 в 16-ричной системе счисления. Там в 16 ричной системе цвет обозначается двумя символами от 00 до FF (ff). Так 0 обозначают 00, а вот 16 обозначается в hex 10 , 128 обозначают 80, а вот 255 превращают в FF.
В большинстве случаев, вы делаете текст полностью видимым (255 = FF), используя FF как альфа. Прозрачным (0 = 00) текст трудно сделать в описании предметов и юнитов, пробовал. Но можно прозрачным сделать в текстагах. Хотя, у текстагов уже есть отдельные функции для смены цветов.
А что касается остальных, чем больше значения, тем светлее оттенок цвета, и наоборот.
FF000000 - черный цвет со значением 0 у цветов (red, gren and blue)
FFFFFFFF - белый цвет со значением 255 у всех цветов (red, gren and blue)
FFFF0000 - красный
FF00FF00 - зеленый
FF0000FF - синий
https://colorscheme.ru
Ред. MpW
» WarCraft 3 / Как сделать цветной текст?
или используй программы специальные, для изменения цвета.
пример
там используют цветовой код RGB
Ред. MpW
» WarCraft 3 / Не работает проверка условия регион в области юнита
такая гуи-команда странная, не помню такую в boolean. Типа ПРОВЕРКА что все юниты группы в регионе?
если честно, не понятно, что за карту ты скинул. я тебе просто пример оптимизации на гуи показал. Но не решения ваших проблем. на jass этого бы не потребовалось, ибо на гуи приходится изворачиваться из-за ограничении команд и утечности bj-функции. там группы утекают, где-то не обнуляют/не удаляют.
Ред. MpW
» WarCraft 3 / Pick every unit
у здания обычно там не физ размер, у них это прямоугольная (квадратная) текстура пути. диагональ прямоугольника, а точнее квадрата наверн надо принимать за радиус?
» WarCraft 3 / [lua] Всё о визуализации способностей в Warcraft3
Ред. MpW
» Мир безумного / МТС теперь на 5G
» WarCraft 3 / Hash (указать предмету целочисленное значение)
в ячейку можно сохранять спец нативками данные патче 1.24. Там на каждый тип своя нативка (типа сохранить молнию или сохранить юнита. ранее до хэш-таблицы использовали ретурн баг, где могли конвентировать любой объект (юнит, эффект, молнию итд) в число и обратно. но сюда и могли вирусняк записать, поэтому близзарды дали отдельные команды: сохранить/загрузить на каждый тип объекта), но сохранить можно что-то одно. Если там ничего не сохранено, вернет ноль или null. Кстати там есть проверки пустой ли хэндл, и прочее
Ред. MpW
» WarCraft 3 / Hash (указать предмету целочисленное значение)
Каждой ячейке еще можно задать тип данных: целое число, реальное число, строка и пр. В нашем случае можно добавлять юнита, эффекты, группы, таймеры и многое др.
GetHandleId(item) - хэндл итема
GetHandleId(unit) - хэндл юнита итд
Ред. MpW
» WarCraft 3 / Массив с наибольшим числом
далее запускаем цикл A. будем перебирать каждого юнита в массиве, и проверять число.
If число > Max then
set Max = число в данном массиве
endif
Итак с каждым юнитом в цикле