Novikov
Kicked by GadenbIsh
offline
Опыт:
417Активность: |
Неправильно работает native GroupRemoveUnit
Здравствуйте. У меня опять вопросы :) В карте, которую вы видите в приложении происходит следующее:
1)Первый триггер записывает в глобальную переменную Gr (типа «отряд») юнитов, находящихся возле паладина.
2)Второй триггер создаёт локальную переменную g (типа «отряд»), и в неё передаёт то, что было записано в глобальной переменной Gr. А затем из локальной переменной g удаляется юнит, который был атакован (удаляется с помощью native GroupRemoveUnit). 3)Третий триггер убивает всех юнитов, входящих в группу Gr, если паладин применяет какое-нибудь заклинание. Но юниты, которые до этого подвергались атаки, не умирают. А это значит, что native GroupRemoveUnit удалил этих юнитов не только из локального отряда g, но и из глобальной группы Gr… Вопрос такой: можно ли удалить юнита из g (в которую передавалось значение из Gr) чтобы при этом Gr не изменялось? |
27.07.2011, 21:21 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DotaMaster666
Silenced by GadenbIsh
offline
Опыт:
1,259Активность: |
Уже из поста понятно, что вы путаете понятие переменной и понятие объекта. Если знакомы с программированием - то в Jass все переменные - указатели, и при перезаписи из одной переменной на другую конструктор копирования вызван не будет. Одним словом в вашем случае обе переменные ссылаются на одну и ту же группу. Возможно надо создавать новую группу, копировать туда юнитов за исключением удаляемого. |
27.07.2011, 21:35 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Novikov
Kicked by GadenbIsh
offline
Опыт:
417Активность: |
Всё, я понял, спасибо, DotaMaster. Нужно было создавать новую группу не так:
local group g = udg_Gr а так: local group g = CreateGroup() call GroupAddGroup( udg_Gr , g ) |
27.07.2011, 22:21 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
silumin
offline
Опыт:
11,153Активность: |
Цитата:
Или пикнуть локальную группу заново... |
|
27.07.2011, 22:21 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|