J
expert
offline
Опыт:
48,447Активность: |
Цитата:
Это если использовать: Pick every unit in region... А если использовать просто отдавания призаза групе (Отряд - Issue Order Targeting A Unit), то приказ идет всей групе (но макс. 12 юнитам) |
|
12.05.2006, 21:30 | #21
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
felix_ff
offline
Опыт:
757Активность: |
0pJl9!Ta а собсна чем тебя группа не устраивает? если каждый раз приходится создавать группу и вылавливать оттуда юнита (допустим в цикле) то постарайся поставить вейт на некоторое время..хотя как знать.. у мну в одном спелл как раз такое: что каждые 0.10 секунды создается группа и из нее выбирается один юнит.. потом идут действия потом все ето ремувится... вроде не очень грузно получаецца.
|
12.05.2006, 22:01 | #22
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Celebrate
offline
Опыт:
849Активность: |
0pJl9lTa зачем извращаться? Всё и так норм. работает. Особых тормозов я не замечал.
|
12.05.2006, 22:13 | #23
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
0pJl9lTa
offline
Опыт:
3,397Активность: |
felix_ff В асе сказжу :)
Celebrate хз, там много маленьких траблов, в результате которых группа не подходит. Насчет радиуса бред, ибо мне не вжно кол-во юнитов, мне важно юниты каких игроков тут присутствуют. Вот :) З.Ы. ай молодцы, уже 2 страницы наговорили :) |
12.05.2006, 22:48 | #24
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
Цитата:
FellGuard добавил: 0pJl9lTa, что конкретно тебе нужно? Отлавливать кол-во юнитов в радиусе от точки? |
|
12.05.2006, 22:52 | #25
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
0pJl9lTa
offline
Опыт:
3,397Активность: |
FellGuard отлавливаться владельцев, юниты которых расположены в радиусе от точки.
|
12.05.2006, 23:18 | #26
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
0pJl9lTa как варант - создать регион(можно круг) и отлавливать перемещения юнитов в этом регионе. В этом случае группы могут не понадобиться. Кстати говоря этот регион можно перемещать - то есть точка может быть динамической(хотя при этом группы могут быть более оптимальным решением)
|
12.05.2006, 23:35 | #27
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Celebrate
offline
Опыт:
849Активность: |
0pJl9lTa кстати да, если у тебя юниты берутся в неизменяющейся зоне, то лучше будет создать регион и повесить на него триггеры.
|
13.05.2006, 01:09 | #28
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
0pJl9lTa
offline
Опыт:
3,397Активность: |
Celebrate Зона к сожалению изменяица :(
|
13.05.2006, 07:22 | #29
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Цитата:
ну и перемещай регион центром в позицию юнита в каждые 0.05 сек. хотя имхо групой проще и лучше. |
|
13.05.2006, 08:29 | #30
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
0pJl9lTa если размеры не меняются или меняются незначительно то все же можно использовать этот вариант вкупе с проверками расстояния типа IsUnitInRange
|
13.05.2006, 12:03 | #31
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
0pJl9lTa
offline
Опыт:
3,397Активность: |
Кстати не понял идею с регионами. Смысл то какой? Все равно группа будет учавствовать.
Вообще ладно - оставлю с группами, но если ктото чтото придумает, буду благадарен если выложат :) |
13.05.2006, 13:05 | #32
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
0pJl9lTa, если у тебя не регион а радиус, то помести невидимого, с "локастом" юнита-дамми в нужную точку и повесь на него триггер с условиями
С - UnitWithinRange (удг_переменна, означающая радиус) У - (что-то о юнитах, я так и не понял, чего тебе надо :)) Д - что хош делай, заноси юнита в группу, индексируй через массив. все одно. Можно, опять же, создать регион и таскать его раз в сколько-то времени за юнитом (CenterRectOnAPoint), проверяя кол-во юнитов в нем (можно, кстати, присвоить этому кол-ву юнитов переменную, и при ее изменении при проверке запускать какого-то рода действия). Наверное, тут никак без цикла вида (PickEveryUnitInRect_And_DoAct). Можно отрисовывать математически регион раз в ед. времени - Сall DestroyRect(udg_Rect_Var) Set udg_Rect_Var = (minX(...)minY(...)maxX(...)maxY(...)) на месте троеточих - Х,У юнита плюс сколько-то ед. Вот вроде все, что думалось написал. Пойду еще думать :) |
13.05.2006, 14:05 | #33
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
0pJl9lTa
offline
Опыт:
3,397Активность: |
FellGuard хз, событие юнит в некотором ренже - аццки глючное, и мне кажеца еще сильнее тормозит чем пик груп. Да и юнита двигать каждый раз.... + условия...
Не убивайтесь уж так :) Через недельку скажу что нада была точна. |
13.05.2006, 17:02 | #34
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
Цитата:
FellGuard добавил: Лучше уж покажеш результат :) |
|
13.05.2006, 17:25 | #35
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Регион - и отлавливать события входа в регион и выхода из него. В этом случае группы совсем не понадобяться
FellGuard слишком геморройные и неэффективные выходы предлагаешь, а вопрос как раз в эффективности и оптимальности |
13.05.2006, 23:18 | #36
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
exploder
iOS zealot
offline
Опыт:
19,394Активность: |
Может можно перебирать юнитов по их хэндлам (а дальше банальное сравнение координат)? Они вроде как последоватьно выдаются (я правда за этим не следил... помнится делал мапу для интрерса хэндлы выводил, но могу и ошибатся)? |
14.05.2006, 00:42 | #37
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
NETRAT, просто написал первое, тчо пришло в голову. С регионом уже советовали, вот я и не стал. ПИК ЭВРИ ЮНИТ - это цикл, не группа, я знаю. Просто, я так и не понял, чего же собственно от нас хочет 0pJl9lTa =)
|
14.05.2006, 12:16 | #38
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
felix_ff
offline
Опыт:
757Активность: |
Цитата:
Да но пикает то он все равно по группе. или я в чем то ошибаюсь? |
|
14.05.2006, 12:42 | #39
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Celebrate
offline
Опыт:
849Активность: |
Цитата:
А разве при перемещении региона триггер регистрется на его новое положение? Цитата:
Код:
<_< |
||
14.05.2006, 20:12 | #40
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|