Че за бред с юнитом и добавлением в групу?
|
|
Borodach | Дата: Суббота, 24 Марта 2012, 15:12:42 | Сообщение # 1 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Создал дамми на основе "Альбатрос", вот и при столкновении друг с другом они должны умирать, но ......! он не пикается уже думал из-за москитов, но удалив все тот же результат Сделал отдельный триггер при истечении 3 сек: Code globals group GEU = CreateGroup() endglobals
local unit e call GroupEnumUnitsInRange(GEU,0.,0.,99999,null) loop set e=FirstOfGroup(GEU) exitwhen e==null if GetUnitName(e)=="Rocket" then call BJDebugMsg(GetUnitName(e)) call GroupRemoveUnit(GEU,e) //call UnitAddAbility(e,'S000') endif endloop Другие юниты показивает а этого нет. Из-за чего это может быть?
Karamba
Сообщение отредактировал Borodach - Суббота, 24 Марта 2012, 15:14:59 |
|
|
|
Ty3uK | Дата: Суббота, 24 Марта 2012, 15:28:27 | Сообщение # 2 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Сравнивай через GetUnitTypeId()
|
|
|
|
Borodach | Дата: Суббота, 24 Марта 2012, 15:31:15 | Сообщение # 3 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Ty3uK, Пробовал но ничего не получалось, после численых сравнений понял что юнита в условии удаляю. А можно как нибуть пикнуть юнита со способностью москиты?
Karamba
|
|
|
|
Ty3uK | Дата: Суббота, 24 Марта 2012, 15:34:13 | Сообщение # 4 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Думаю только при его создании занести в группу через GroupAddUnit()
|
|
|
|
Borodach | Дата: Суббота, 24 Марта 2012, 15:57:14 | Сообщение # 5 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Ty3uK, так все равно не отледить рядом ли они....
Karamba
|
|
|
|
Ty3uK | Дата: Суббота, 24 Марта 2012, 16:01:05 | Сообщение # 6 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Циклом пробежал по всей группе и сравнил расстояние между всеми юнитами. Функцию вычисления расстояния дать?
|
|
|
|
llka | Дата: Суббота, 24 Марта 2012, 16:01:16 | Сообщение # 7 |
4 уровень
Группа: Пользователи
Сообщений: 88
Награды: 0
Репутация: 34
Блокировки:
| Quote (Borodach) так все равно не отледить рядом ли они.... Quote (Ty3uK) через GroupAddUnit() Циклом по группе пройтись.
|
|
|
|
Ty3uK | Дата: Суббота, 24 Марта 2012, 16:02:14 | Сообщение # 8 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Если какие-то дополнительные условия выбора есть, то при создании на хэндл юнита сохраняй в хэш нужные значения, а при проверке циклом сверяй их
|
|
|
|
Borodach | Дата: Суббота, 24 Марта 2012, 16:05:17 | Сообщение # 9 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Ty3uK, У мнея еще идея двигать область с юнитом, и если входит то действие... Это будет хуже сравнений по цыклу?
Karamba
|
|
|
|
Ty3uK | Дата: Суббота, 24 Марта 2012, 16:06:51 | Сообщение # 10 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Цикл просто проще- одна группа и простая функция на геометрии. А у тебя- группа, область, событие (следовательно и триггер)
|
|
|
|
Borodach | Дата: Суббота, 24 Марта 2012, 16:36:10 | Сообщение # 11 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Тему клоз.
Karamba
|
|
|
|