DioD
offline
Опыт:
45,134Активность: |
Функции фильтров
IsUnitType(GetFilterUnit(),UNIT_TYPE_HERO)
IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit())) Смысл вопроса в том, что эти функции
returns boolean а интересная функция
native And takes boolexpr operandA,boolexpr operandB returns boolexpr требует нечто непонятное Существует ли способ составить такую функцию с двумя условиями? function return endfunction |
11.06.2006, 14:41 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
felix_ff
offline
Опыт:
757Активность: |
function Condition takes nothing returns boolean
return IsUnitType(GetFilterUnit(),UNIT_TYPE_HERO) and IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit())) endfunction как я понял такое надо? |
11.06.2006, 14:49 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
Большое спасибо но вопрос идёт по функции And(), которую как видимо ты не задействовал. |
11.06.2006, 14:57 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
zibada
offline
Опыт: отключен
|
function filter1 takes nothing returns boolean
return IsUnitType(GetFilterUnit(),UNIT_TYPE_HERO) endfunction function filter2 takes nothing returns boolean return IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit())) endfunction ну и далее юзать как-то так: call GroupEnumUnitsInRect(g, r, And(Condition(function filter1), Condition(function filter2))) т.е. собирать условия из нескольких функций.. нафиг с этим заморачиваться, когда можно просто написать еще одну функцию, которая делает return filter1() and filter2(), не очень ясно, но наверное, иногда смысл в этом есть... |
11.06.2006, 15:22 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
Ясно, большое спасибо. |
11.06.2006, 15:48 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|