Добавлен
Чем отличаются функции
GetUnitState(u,UNIT_STATE_LIFE)
и
GetWidgetLife(u)

Принятый ответ

предвещая возможные вопросы - чем меньше передается аргументов в функцию, тем она быстрее, но разница настолько незначительна, что даже в 300 вызовах не отличима. Поэтому оптимизация здесь минимальная, к примеру, но как минимум не вредная.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
19
6 лет назад
0
Похожие вопросы:

ответ
N7 Molot:
Новые функции в ГУИ, к примеру перемещение точек и их удаление, так же проверка скриптов, если будет ошибка в скрипте, он выдаст ошибку. Можно изменить ID объекта, удобная вещь, не запутаешься, когда переносишь скрипты со строками фиксации (к примеру точка (массив)), если нет её в проекте, она появится автоматически (удобно для переноса скрипта с болванки на проект). Оптимизация. И это ещё не все функции.
На мой взгляд удобно, но есть один минус, когда копируешь текст, он выдаёт не понятные иероглифы, приходится пару раз изменить текст, потом брать его в буфер обмена.
ответ
Некрофрегианец, любая карта оригинальной игры работает в дополнении, но не наоборот
ответ
Сильный ии при отсутствии расходов получает по 20 единиц золота за раз. Это можно увидеть просматривая реплеи сражений, проведенных против сильного компьютера. К тому же, если посмотреть код ии, да и просто понаблюдать за поведением слабого компьютера и сильного/среднего, то можно заметить, что слабый бот начинает крипиться с задержкой, по сравнению со своими средней и сильной версиями. Сильный бот начинает апргейдить главное здание раньше, чем средний и слабый, следовательно, и исследования некоторые у него проходят раньше, второй/третий герой появляются раньше и здания соответствующие. Так же слабый не строит оборонительные сооружения на дополнительных рудниках. Как то так. К тому же, насколько я помню, слабый вроде бы вообще исследований не проводит. Ну и естественно, не всегда все работает в строгости с тем, как я описал и это верно не для всех ии, мое описание больше по ии Орды. Остальных помню плохо. Поведение ии зависит и от карты и от типов точек на ней и от того, как складывается сражение. Слабый ии вполне может обогнать по развитию среднего в некоторых случаях и так далее.
ответ
Есть же вроде проверка на Allianse state
 native GetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting returns boolean
Проверь, работает без изьянов?
ответ
нужно поменять в "Сценарий - Параметры карты":
набор игровых констант - стандартный (сражение) поменять на сражение (последняя версия)

2
8
6 лет назад
2
Все юниты - виджеты, но не все виджеты юниты. Т.е. GetWidgetLife может проверить здоровье еще и предметов, и разрушаемых объектов.
8
16
6 лет назад
8
предвещая возможные вопросы - чем меньше передается аргументов в функцию, тем она быстрее, но разница настолько незначительна, что даже в 300 вызовах не отличима. Поэтому оптимизация здесь минимальная, к примеру, но как минимум не вредная.
Принятый ответ
0
29
6 лет назад
Отредактирован Волчачка
0
GetWidgetLife(u) быстрее, есть некая погрешность, если юнит мертв, то вернёт 0.405 хп
GetUnitState(u,UNIT_STATE_LIFE) - медленнее, точнее.
Ну и то, что сказали uranus и тот, что выше меня комментарием.
0
8
6 лет назад
0
если юнит мертв, то вернёт 0.405 хп
Разве это не для юнита, который перерождается?
0
29
6 лет назад
Отредактирован Волчачка
0
uranus:
если юнит мертв, то вернёт 0.405 хп
Разве это не для юнита, который перерождается?
Даже если он не перерождается, всё равно вернёт это же значение. Иначе, как бы работал ульт Паладина или то же Оживление Мёртвых, ну и пр. что оперирует с трупами. Труп тоже виджет.
1
16
6 лет назад
1
чо?
хп любого МЕРТВОГО объекта, неважно, реинкарнация или че, всегда равны 0. Просто при падении ниже 0.405 игра автоматически в ноль округляет.
0
32
6 лет назад
0
uranus, эмм у дохлых всегда хп ровно 0, никак не регенится и так далее, только хп перевалит за 0.405 сразу же юнит умирает и хп 0.00 остается пока он не реснется, реинкарнация работает точно так же, но там большое НО. событие EVENT_UNIT_DEATH не срабатывает на юнитов с перерождением, на него срабатывает лиш событие EVENT_WIDGET_DEAH, т.е это самое падение хп до 0.405 еще до реальной смерти, в этот самый момент за фрейм до того как сработает событие смерти и юнит станет дохлым, снего снимаются все баффы и блочатся часть абилок, это важно, т.к выдача некоторых бонусов дохлым заканчивается фаталом.
От себя добавлю что - GetWidgetLife писать короче чем GetUnitState.
0
26
6 лет назад
0
DracoL1ch, но ведь мёртвые юниты могут иметь больше 0 хп... и больше .405
0
16
6 лет назад
0
могут, но это твои проблемы, что ты испоьлзуешь багованные абилки варкрафта. В доте такое не случается, например
0
26
6 лет назад
Отредактирован Extremator
0
DracoL1ch:
могут, но это твои проблемы, что ты испоьлзуешь багованные абилки варкрафта. В доте такое не случается, например
Так дело то не в абилках совсем...
0
29
6 лет назад
0
Extremator, ты лучше с ним не спорь, это напрасная трата времени.
Кстати, мертвым юнитам можно регенить HP. Это ещё один из багов варика. Хотя, такое вроде только с виджетом канает.
0
27
6 лет назад
Отредактирован MpW
0
тоже тестил давно перерождение, и даже сравнивал с обычной смертью, всегда ноль возвращает. откуда берется интересное число 0.405? у меня один раз выскочило это число при абилке перерождения минотавра (и то не всегда что-то, например у лучницы)
кстати есть же проверка классификацией Dead, там точно можно узнать мертв или нет. эх любите оптимизировать все до дыр
0
26
6 лет назад
Отредактирован Extremator
0
Extremator, ты лучше с ним не спорь, это напрасная трата времени.
KingMaximax, а в чём спор то? просвяти
0
32
6 лет назад
0
Единственный случай обмануть смерть - морф в Юнита с бонусом хп, который установит максимум хп ниже 0,405 и Юнит будет не убиваем.
0
12
6 лет назад
0
quq_CCCP:
Единственный случай обмануть смерть - морф в Юнита с бонусом хп, который установит максимум хп ниже 0,405 и Юнит будет не убиваем.
Я проводил тесты и к моему удивлению не все юниты -герои умирают на 0.405.Здоровье 0.405 на грани смерти , а вот 0.404 точно уже умер
Чтобы оставить комментарий, пожалуйста, войдите на сайт.