Сейчас 01:32:10 Суббота, 28 декабря, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Проценты жизни юнита
DreiiДата: Четверг, 10 Февраля 2011, 18:29:48 | Сообщение # 1
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
Code
local unit u=GetTriggerUnit()
local unit a=GetAttacker()
if IsUnitAlly(u,GetOwningPlayer(a))==true and GetWidgetLife(u)>10 then
call IssueImmediateOrder(a,"stop")
endif

имеем код. Как видно он запрещает атаку по своим юнитам,но если уних больше 10 хп,а мне нужно что бы было больше 10 процентов


 

DAJДата: Четверг, 10 Февраля 2011, 19:05:21 | Сообщение # 2
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Я в Джассе конечно не силён, но можно ли создать глобальную переменную - Максимальное здоровье юнита делённая на 10 ? И подставить просто?
 

lawsonДата: Четверг, 10 Февраля 2011, 21:56:46 | Сообщение # 3
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Dreii)
не нужно что бы было больше 10 процентов

if GetUnitLifePercent(u) > 10 then
Quote (DAJ)
Максимальное здоровье юнита делённая на 10

или макс хп умножить на 0.1.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

AjaccioДата: Четверг, 10 Февраля 2011, 22:11:15 | Сообщение # 4
7 уровень
Группа: Проверенные
Сообщений: 299
Награды: 1
Репутация: 239
Блокировки:
Здоровье в % есть отношение текущего запаса к максимальному:

Code
GetWidgetLife(unit) / GetUnitState(unit, UNIT_STATE_MAX_LIFE) - текущее здоровье в процентах от 0 до 1

Тогда в условии должно быть:

Code
GetWidgetLife(unit) / GetUnitState(unit, UNIT_STATE_MAX_LIFE) < 0.1


XOR EAX, EAX
MOV EAX, 00H ;; NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.
 

lawsonДата: Четверг, 10 Февраля 2011, 22:14:08 | Сообщение # 5
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Ajaccio)
GetWidgetLife(unit) / GetUnitState(unit, UNIT_STATE_MAX_LIFE) < 0.1

Это и есть в укороченном виде GetUnitLifePecent()


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz