Баг скила
|
|
| Дата: Суббота, 19.01.2013, 19:04 | Сообщение # 1 |
Лейтенант
Сообщений: 53
|
Скил робит норм, но трабла в том что когда я кастую способность рядом с умершими юнитами деревьев становить 100500. В чем дело? Вот скрин самого эффект : http://rghost.ru/43154025 а это нормальный вид : http://rghost.ru/43154156 Вот триггер : skill 83 События Боевая единица - Боевая единица Приводит способность в действие Условия (Ability being cast) равно Атака деревьев Действия Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия) Если - Условия (Level of Атака деревьев for (Triggering unit)) равно 1 То - Действия Jass-код: set bj_wantDestroyGroup = true Отряд - Pick every unit in (Units within 200.00 of (Position of (Triggering unit))) and do (Actions) Цикл - Действия Для каждого значения (Integer A) от 0 до 9 выполнить (Действия) Цикл - Действия Задать переменной PointFortress значение (Position of (Triggering unit)) Боевая единица - Create 1 Энт лвл 1 for (Owner of (Triggering unit)) at (PointFortress offset by 200.00 towards ((Real((Integer A))) x 35.00) degrees) facing Стандартная ориентация зданий degrees Боевая единица - Add a 5.00 second Общий expiration timer to (Last created unit) Иначе - Действия Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия) Если - Условия (Level of Атака деревьев for (Triggering unit)) равно 2 То - Действия Jass-код: set bj_wantDestroyGroup = true Отряд - Pick every unit in (Units within 200.00 of (Position of (Triggering unit))) and do (Actions) Цикл - Действия Для каждого значения (Integer A) от 0 до 9 выполнить (Действия) Цикл - Действия Задать переменной PointFortress значение (Position of (Triggering unit)) Боевая единица - Create 1 Древо земли лвл 2 for (Owner of (Triggering unit)) at (PointFortress offset by 200.00 towards ((Real((Integer A))) x 35.00) degrees) facing Стандартная ориентация зданий degrees Боевая единица - Add a 5.00 second Общий expiration timer to (Last created unit) Иначе - Действия Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия) Если - Условия (Level of Атака деревьев for (Triggering unit)) равно 3 То - Действия Jass-код: set bj_wantDestroyGroup = true Отряд - Pick every unit in (Units within 200.00 of (Position of (Triggering unit))) and do (Actions) Цикл - Действия Для каждого значения (Integer A) от 0 до 9 выполнить (Действия) Цикл - Действия Задать переменной PointFortress значение (Position of (Triggering unit)) Боевая единица - Create 1 Древо огня лвл 3 for (Owner of (Triggering unit)) at (PointFortress offset by 200.00 towards ((Real((Integer A))) x 35.00) degrees) facing Стандартная ориентация зданий degrees Боевая единица - Add a 5.00 second Общий expiration timer to (Last created unit) Иначе - Действия Если (Все условия выполняются), то выполнить (Действия), иначе выполнить (Другие действия) Если - Условия (Level of Атака деревьев for (Triggering unit)) равно 4 То - Действия
|
|
|
|
| Дата: Суббота, 19.01.2013, 20:35 | Сообщение # 2 |
Полковник
Сообщений: 249
|
Дохлые юниты этот тоже ЮНИТЫ!Вот вам игра и засчитывает и мертвых врагов и мёртвых энтов по всей видимости.Тем боле что сами энты так же считаются как юниты и вокруг них тоже создаются энты.Попробуйте так же сменить триггеринг юнит на Picked Unit.Уровень способности проверяйте не у triggering unit а у Caster Unit.
"Я так хотел добра в плену своих идей Я стал почти что рад и в окружении людей" Lumen "Зубы"
|
|
|
|
| Дата: Суббота, 19.01.2013, 22:39 | Сообщение # 3 |
Лейтенант
Сообщений: 53
|
Цитата (SERPENT1987) Дохлые юниты этот тоже ЮНИТЫ!Вот вам игра и засчитывает и мертвых врагов и мёртвых энтов по всей видимости.Тем боле что сами энты так же считаются как юниты и вокруг них тоже создаются энты.Попробуйте так же сменить триггеринг юнит на Picked Unit.Уровень способности проверяйте не у triggering unit а у Caster Unit. Это понятно я прошу подсказать мне действие Отряда.
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 00:22 | Сообщение # 4 |
Генералиссимус
Сообщений: 13036
|
Lifeline, ну почему нельзя сделать скрин триггера, так читать нереально....
это Ксопик!
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 06:10 | Сообщение # 5 |
Полковник
Сообщений: 249
|
Для каждого значения (Integer A) от 0 до 9 выполнить (Действия) Цикл - Действия Задать переменной PointFortress значение (Position of (Picked Unit)) Боевая единица - Create 1 Энт лвл 1 for (Owner of (CastingUnit)) at (PointFortress offset by 200.00 towards ((Real((Integer A))) x 35.00) degrees) facing Стандартная ориентация зданий degrees Можно так же использовать RemoveUnit(DyingUnit) хоть трупы уберёте.А вообще позже установлю Warcraft и сделаю вам ваш триггер правильно а то наворотили чёрте что простите за выражение.Нет даже условия что бы не создавать энтов вокруг героя.
"Я так хотел добра в плену своих идей Я стал почти что рад и в окружении людей" Lumen "Зубы"
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 06:41 | Сообщение # 6 |
Полковник
Сообщений: 249
|
Событие БЕ применяет скилл Условие Сравнение скилла. Действия If (All Conditions are True) then do (Then Actions) else do (Else Actions) Условие (Level of Скилла(Вашего) for (Casting unit)) равен 1 То действия Отряд - Pick every unit in (Units within 200.00 of (Position of (Casting unit)) matching ((Owner of (Triggering unit)) не равно (Owner of (Casting unit)))) and do (For each (Integer A) from 0 to 9, do (Set PointFortres = (Position of (Picked unit)))) Юнит - Создать 1 Ваш юнит(По уровню естессно) for (Owner of (Casting unit)) at ((Position of (Picked unit)) offset by 200.00 towards ((Real((Integer A))) x 35.00) degrees) facing стандарт degrees Юнит - Add a 5.00 second общий expiration timer to (Picked unit) Иначе Сюда вставляете цикл "If then else" и меняете только уровень способности в условии и тип создаваемого юнита.
"Я так хотел добра в плену своих идей Я стал почти что рад и в окружении людей" Lumen "Зубы"
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 10:03 | Сообщение # 7 |
Полковник
Сообщений: 249
|
Юнит - Add a 5.00 second общий expiration timer to (Picked unit) Извиняюсь тут как раз таки Last Created Unit.
"Я так хотел добра в плену своих идей Я стал почти что рад и в окружении людей" Lumen "Зубы"
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 14:54 | Сообщение # 8 |
Лейтенант
Сообщений: 53
|
Цитата (SERPENT1987) Событие БЕ применяет скилл Условие Сравнение скилла. Действия If (All Conditions are True) then do (Then Actions) else do (Else Actions) Условие (Level of Скилла(Вашего) for (Casting unit)) равен 1 То действия Отряд - Pick every unit in (Units within 200.00 of (Position of (Casting unit)) matching ((Owner of (Triggering unit)) не равно (Owner of (Casting unit)))) and do (For each (Integer A) from 0 to 9, do (Set PointFortres = (Position of (Picked unit)))) Юнит - Создать 1 Ваш юнит(По уровню естессно) for (Owner of (Casting unit)) at ((Position of (Picked unit)) offset by 200.00 towards ((Real((Integer A))) x 35.00) degrees) facing стандарт degrees Юнит - Add a 5.00 second общий expiration timer to (Picked unit) Иначе Сюда вставляете цикл "If then else" и меняете только уровень способности в условии и тип создаваемого юнита. Позже посмотрю но там не в этом дело, трабла в отряде так как для каждого integer A он создает еще 9 деревьев, как сделать чтобы он пикал только 1 юнита (героя использовавший эту способность)
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 15:47 | Сообщение # 9 |
Генералиссимус
Сообщений: 13036
|
Используй свои переменные, Integer A может сбиваться если ещё где-то используется.
это Ксопик!
|
|
|
|
| Дата: Воскресенье, 20.01.2013, 16:37 | Сообщение # 10 |
Полковник
Сообщений: 249
|
Согласен тут через свою целочисленную (Integer) переменную куда проще будет только в конец каждого цикла "If then else" на до добавить функцию - установить переменную (Set Variable) = 0 иначе будет ещё веселее дело с энтами
"Я так хотел добра в плену своих идей Я стал почти что рад и в окружении людей" Lumen "Зубы"
|
|
|
|