![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
Устанавливайте ее значение, это и значит "поднять или опустить флаг".
Кстати, я проверил - это правда:
|
![]() |
#21
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
Melissa:
А в общем ладно, я вынес хил в отдельный триггер и всё теперь действительно работает.
DarkRaven Best добавил:
ADOLF:
Увы, моя проблема в том, что я пока не понимаю синтаксиса Jass, и только примерно понимаю за что каждая строчка отвечает. |
![]() |
#22
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Doc
![]() offline
Опыт:
63,163Активность: |
Какая же правда если потоков никаких нет... Напротив все прямолинейно, наносим урон, из этого же "потока" дергаются все ивент лисенеры на получение урона, дальше возвращаемся в первоначальную функцию и продолжаем выполнение. |
![]() |
#23
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DioD
![]() ![]() offline
Опыт:
45,134Активность: |
в варе поток всего один, вызов метода "нанести урон" включает в себя вызов всех листенеров и по результату нанесение урона, если бы можно было вызвать (на самом деле кастом нативки в помощь) стек трейс, вы бы это прекраснейшим образом увидели.
альтернативная реализация этого механизма - всё работает в кучу потоков, которые собирают данные и потом когда наступает следующий тик нулевого потока, изменения применяются к игровым объектам из нулевого потока обработчиками нулевого потока.
наносится урон, выполняются приказы и прочее. при такой реализации, правила были бы совершенно другие, так как нанося урон в некотором методе, вы не только после этой строки не увидите, сколько хп забрало, сколько хп теперь, так и события будут вызваны совсем с другого места и несколько позже.
DioD добавил:
а что касается тех умных людей, которые считают что паузить триггер это норма. вы когда за рулём едите, на светофорах и вообще когда надо остановится, глушите машину на ходу или всё таки нажимаете педаль тормоза? |
![]() |
#24
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
Суть-то примерна такая-же. Хотя интереса ради можно написать тест с использованием лимита операций: если лимит операций у потока, который стартует от триггера на получение вреда свой, то скорее всего таки там стартует новый поток, если общий - значит все исполняется в одном. Я говорю про условные такие потоки, вы меня поняли. Никакой параллельности конечно нет.
А что, есть какие-либо проблемы с отключение триггера из его-же потока? |
![]() |
#25
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DioD
![]() ![]() offline
Опыт:
45,134Активность: |
тем что другой точно такой же триггер который сделает точно так же вызовет неопределённое состояние. и вместо игнора одного события на урон, вы можете прощелкать все полимеры на свете, если поток оборвётся то триггер никогда не будет включен. |
![]() |
#26
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
quq_CCCP
Я белый и пушистый!
![]() ![]() offline
Опыт:
93,467Активность: |
Таймеры в помощь или городим сложные условия, не позволяющие триггеру сработать многократно... |
![]() |
#27
+0/−2
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Doc
![]() offline
Опыт:
63,163Активность: |
quq_CCCP, сложные условия:
if (flag) |
![]() |
#28
+2/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
DioD:
Да, возможно ты прав, что такое может случится. Так как это скилл массового юнита. Но как делать флаги для триггров, вы можете объяснить? Или есть какая-нибудь статься, в которой ИМЕННО ЭТО подробно расписано?
DarkRaven Best добавил: Да и обидно, что с данной системой урона нельзя сделать клейв. Ну или я не знаю как его реализовать. Скорее всего придётся найти системы, которые позволяют устанавливать урон юнита в игре на желаемое значение, а таких, я увы, нигде не нашёл. |
![]() |
#29
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Borodach
![]() offline
Опыт:
5,837Активность: |
DarkRaven_Best, Вариант 1) Логическая. В условии добавляешь проверку, если ЛОГИЧЕСКАЯ = да. В триггере перед уроном установить ЛОГИЧЕСКОЙ = нет, а после установить ЛОГИЧЕСКОЙ = да. Вариант 2) Числовой,более функционален. В условии добавляешь проверку, если ЦЕЛОЧИСЛЕННАЯ (или РЕАЛЬНАЯ) равна нужному значению. И когда нужно приостановить установить нужное значение |
![]() |
#30
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
Borodach:
А можно по подробнее что и куда выставлять? Вернее где поставить проверку переменной и где приравнивание значения переменной.
DarkRaven Best добавил: Вот так? |
![]() |
#31
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Melissa
Я всегда хочу как лучше!
![]() ![]() offline
Опыт:
31,696Активность: |
не совсем. Условие частное а не общее. |
![]() |
#32
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
Нужно общее? Хм, тогда придётся делать отдельный триггер? |
![]() |
#33
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Melissa
Я всегда хочу как лучше!
![]() ![]() offline
Опыт:
31,696Активность: |
да нет же, лол, нанести урон если чек=0, условие вместе с действием запихни в if then else |
![]() |
#34
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
Melissa:
Сейчас попробую.
DarkRaven Best добавил: Вот так? |
![]() |
#35
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DioD
![]() ![]() offline
Опыт:
45,134Активность: |
книжки почитай, в гугле вбей, на бумажке нарисуй, никто не будет учить лодырей. |
![]() |
#36
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
DioD:
Раздел в котором создана эта тема называется АКАДЕМИЯ ФОРМУ ДЛЯ ВОПРОСОВ, разве нет? Разве здесь создают темы не для того, чтобы получить ответы от знающих людей на заданный вопрос, а не фразу иди поищи где-нибудь? |
![]() |
#37
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DioD
![]() ![]() offline
Опыт:
45,134Активность: |
дальше названия раздела не читал?
мои соболезнования 2.1 Перед созданием новой темы не поленитесь открыть FAQ, базу статей и поискать ответ на свой вопрос. А также воспользоваться поиском по сообщениям, так как тогда Вам не придется ждать, пока на Ваш вопрос ответят - Вы сразу найдете готовое решение. |
![]() |
#38
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DarkRaven Best
![]() ![]() offline
Опыт:
8,116Активность: |
DioD:
Друг мой, читал, и перед тем как создавать тему, я ищу похожие темы, которые кто-то создавал раньше и читаю, гайды и пособия. В данном случае я не могу найти то что ищу и мне нужна помощь знающих людей, чтобы узнать как правильно сделать. |
![]() |
#39
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Melissa
Я всегда хочу как лучше!
![]() ![]() offline
Опыт:
31,696Активность: |
Скажу по секрету - тема исчерпана. Здесь нечего БОЛЬШЕ добавлять. Способы перед тобой, используй как религия больше одобрит. |
![]() |
#40
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|