Скилл на увеличение силы атаки у дерева.
|
|
molgreen | Дата: Воскресенье, 18 Мая 2014, 21:10:06 | Сообщение # 1 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Здравствуйте, уважаемые картостроители. Я вот нашёл одну способность, где добавляется сила атаки около дерева, а если отойти - то бонус спадает. В оригинале было только около одного типа разрушаемого, а у меня их целых 3. Но у меня бонус либо работает нестабильно, либо вообще не робит. Помогите, пожалуйста.
Скилл от UZzip
le
Сообщение отредактировал molgreen - Воскресенье, 18 Мая 2014, 21:10:27 |
|
|
|
13th | Дата: Понедельник, 19 Мая 2014, 14:48:10 | Сообщение # 2 |
2 уровень
Группа: Проверенные
Сообщений: 30
Награды: 0
Репутация: 9
Блокировки:
| Было бы неплохо, если бы ты полностью описывал, чего хочешь от тригера... И если работает не стабильно - то как?..
Как я понял из оригинального тригера, он должен работать примерно так: герой подходит к лесу, и с каждым ударом по врагу его урон увеличивается, когда он отходит от леса - наносимый урон приходит в норму.... Дело может быть вот в чем: в тригере проверяется СЛУЧАЙНОЕ разрушаемое... то есть, если рядом с героем ОДНОВРЕМЕННО находятся разрушаемые объекты РАЗНЫХ видов (камни, деревья которые ты проверяешь, деревья другого вида, домики-декорации, ворота и т.п., и т.п., и т.п.) - способность будет действительно срабатывать через раз!
Она должна работать идеально, если у тебя на карте из разрушаемых объектов есть только деревья твоих трех видов. И ВСЕ! Если же нет... Ну как вариант можно в цикле перебрать все разрушаемые вокруг героя, и если среди них есть хотя бы одно из твоих деревьев - увеличивать урон, иначе сбрасывать..
В самом тригере проблем не вижу.. Главное не провтыкать, и дать герою "Атаку(+10)" и "Лесную ауру" перед вызовом тригера...
|
|
|
|
Imba_pvL | Дата: Понедельник, 19 Мая 2014, 16:03:50 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
| А и еще здесь не удалены точки, из-за этого если каждый раз бить героя, то будут лаги.
Сообщение отредактировал Imba_pvL - Понедельник, 19 Мая 2014, 16:05:45 |
|
|
|
molgreen | Дата: Понедельник, 19 Мая 2014, 17:46:53 | Сообщение # 4 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Цитата 13th ( ) Дело может быть вот в чем: в тригере проверяется СЛУЧАЙНОЕ разрушаемое
В условии у меня стоит "равно Новые хвойные". Почему случайное?
Цитата 13th ( ) Главное не провтыкать, и дать герою "Атаку(+10)" и "Лесную ауру" перед вызовом тригера...
Не совсем понял
Цитата Imba_pvL ( ) А и еще здесь не удалены точки, из-за этого если каждый раз бить героя, то будут лаги.
Каким образом их удалить???
le
|
|
|
|
Overkills | Дата: Понедельник, 19 Мая 2014, 18:26:27 | Сообщение # 5 |
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
| Цитата molgreen ( ) Каким образом их удалить??? Занести в переменную, использовать ее и: call RemoveLocation(udg_name)
|
|
|
|
molgreen | Дата: Понедельник, 19 Мая 2014, 19:39:13 | Сообщение # 6 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Цитата Overkills ( ) Занести в переменную, использовать ее и: call RemoveLocation(udg_name)
Хорошо. Теперь ещё вопрос. Что это за точки?
le
|
|
|
|
13th | Дата: Понедельник, 19 Мая 2014, 20:09:37 | Сообщение # 7 |
2 уровень
Группа: Проверенные
Сообщений: 30
Награды: 0
Репутация: 9
Блокировки:
| Цитата В условии у меня стоит "равно Новые хвойные". Почему случайное? Уточню... В тригере сравнивается СЛУЧАЙНОЕ разрушаемое в радиусе 1500 от героя с разрушаемым "Новое хвойное". Об этом мне сказала строка в тригере:
Код Тип разрушаемого ([color=red]СЛУЧАЙНОЕ РАЗРУШАЕМОЕ[/color] в (Регион центрирован .... Цитата Главное не провтыкать, и дать герою "Атаку(+10)" и "Лесную ауру" перед вызовом тригера... Убедись, что у твоего героя есть способность Атака(+10), иначе урон добавляться не будет.
Цитата Хорошо. Теперь ещё вопрос. Что это за точки? Не буду уходить глубоко в программирование... У тебя в условиях (там где ты проверяешь Новое хвойное 1, или 2, или 3) в этом месте:
Код Регион центрирован на ([color=red]Позиция (Атакующий юнит)[/color] ... создается переменная Точка, которая занимает место в памяти, если ее вручную не удалять, через час-два игры (на сколько оперативной памяти хватит) игра начнет жестко глючить. Как это делается: Создаешь переменную с типом Точка. В тригере перед проверкой на тип "хвойного" записываешь в свою переменную позицию атакующего юнита. Потом в условиях вставляешь вместо:
Код Позиция (Атакующий юнит) свою переменную (допустим Vasya). После всех условий, вставляешь
Код call RemoveLocation(udg_[color=green]Vasya[/color]) и радуешься.
|
|
|
|
molgreen | Дата: Понедельник, 19 Мая 2014, 20:31:11 | Сообщение # 8 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Цитата 13th ( ) записываешь в свою переменную позицию атакующего юнита
Ну хорошо, я понял. Только вот ГДЕ её записывать??? Куда ставить это действие??
Цитата 13th ( ) Убедись, что у твоего героя есть способность Атака(+10), иначе урон добавляться не будет.
Она есть. В этом и проблема. Урон даётся сначала стабильно (5-6 уровней Атаки(+10)), а потом исчезает. И больше не работает.
le
|
|
|
|
Imba_pvL | Дата: Понедельник, 19 Мая 2014, 21:04:27 | Сообщение # 9 |
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
| Почитай статьи про переменные, без них ты не сможешь сделать простые триггеры. На том же хгм-е.
|
|
|
|
molgreen | Дата: Понедельник, 19 Мая 2014, 22:45:36 | Сообщение # 10 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Цитата Imba_pvL ( ) Почитай статьи про переменные
Да боже, я хорошо знаю про переменные и их использывание. Я просто не могу понять, куда втыкнуть это действие в этом случае.
le
|
|
|
|
Imba_pvL | Дата: Понедельник, 19 Мая 2014, 22:48:31 | Сообщение # 11 |
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
| -________________________- Установить Х (точка) = Позиция Кастера ... ... ... ... call RemoveLocation(udg_X)
|
|
|
|
Melodia | Дата: Вторник, 20 Мая 2014, 00:17:57 | Сообщение # 12 |
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5051
Блокировки:
| в деревьях явно стоит юнит-аура
|
|
|
|
molgreen | Дата: Вторник, 20 Мая 2014, 18:10:23 | Сообщение # 13 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Ладно, спасибо вам. Заменю лучше этот скил на другой примитивный какой-то.
le
|
|
|
|
Overkills | Дата: Вторник, 20 Мая 2014, 18:20:42 | Сообщение # 14 |
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
| molgreen, из-за того, что не смог удалить точку? : D
|
|
|
|
molgreen | Дата: Вторник, 20 Мая 2014, 20:03:03 | Сообщение # 15 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Цитата Overkills ( ) из-за того, что не смог удалить точку
Нет. Просто удаление этой точки уберёт только лаги, а на работоспособность это никак не повлияет.
le
|
|
|
|
Borodach | Дата: Среда, 21 Мая 2014, 12:41:58 | Сообщение # 16 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Проблема в условии. Ты ж не цыклом проверяешь деревя в области. Если при атаке, первое дерево не совпадает, уровень способности с уроном становится раным 1. Надо пикать все разрушаемые объекты и в этом цыкле проверять нужные деревя.
Karamba
|
|
|
|
molgreen | Дата: Среда, 21 Мая 2014, 17:57:51 | Сообщение # 17 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Borodach, спасибо большое! Только знал бы я как это всё творить.
le
|
|
|
|
13th | Дата: Четверг, 22 Мая 2014, 11:09:14 | Сообщение # 18 |
2 уровень
Группа: Проверенные
Сообщений: 30
Награды: 0
Репутация: 9
Блокировки:
| molgreen, Делай так: 0. Посноси все свои условия в тригере 0. Создай переменную с типом логическая, допустим Kolya и установи ее значение в НЕТ переменную с типом точка, да будет имя ее - Vasya 1. Установить переменную Vasya = Позиция юнита (Атакующий юнит) // тут мы записываем точку в переменную, чтоб ее можно было удалить 2. Декорации - Выбрать все разрушаемое в радиусе 1500 от точки Vasya и произвести множество действий 3. Если/тогда/иначе - множество действий // дальше условия --> Тип разрушаемого (Выбранное разрушаемое) равно Твое_дерево_1 --> Тип разрушаемого (Выбранное разрушаемое) равно Твое_дерево_2 --> Тип разрушаемого (Выбранное разрушаемое) равно Твое_дерево_3 4. Установиь переменную Kolya = ДА 5. Если/тогда/иначе - множество действий --> Уровень (Атака+10) не равно 21 --> Kolya равно ДА 6. Добавляешь урон так же как и раньше 7. Если/тогда/иначе - множество действий --> Kolya равно НЕТ 6. Убавляешь урон так же как и раньше 7. Личный сценарий - call RemoveLocation(udg_Vasya)Добавлено (22 Мая 2014, 11:09:14) --------------------------------------------- Пункт 4. внутри условия 3. Пункт 6. - внутри 5. Пункт 8. внутри 7. В пункте 9. - удаляем создаваемую точку. Все просто! Почитай мануалы. видеоуроки о работе с тригерами.. видео-примеры создания способностей, сборных артефактов и т.п. не зная программирования - сложно пользоваться тригерами, но возможно! Просто смотри большще примеров, как и что делается. Дальше само пойдет.
|
|
|
|
molgreen | Дата: Четверг, 22 Мая 2014, 19:37:22 | Сообщение # 19 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| 13th, всё равно не работает. Сначала повышает себе атаку на 72, а потом на 80 и всё, она так и остаётся.
le
|
|
|
|
Borodach | Дата: Пятница, 23 Мая 2014, 00:15:40 | Сообщение # 20 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Может обшасть большая, попадает много деревьев и не обнуляет урон из-за того что не атакуют в не зоны деревьев.... Без скрина сложнее сказать. Выводи сообщение о количестве деревьев или о том что логике кажется о не исправности триггера.
Karamba
|
|
|
|
molgreen | Дата: Суббота, 24 Мая 2014, 14:27:50 | Сообщение # 21 |
5 уровень
Группа: Проверенные
Сообщений: 142
Награды: 0
Репутация: 37
Блокировки:
| Вот скрин триггера.
Теперь о проверке. Когда я вкачал способность, и начал атаковать, то в чате написало 16 сообщений: Ур. лесной ауры: И тут от 1 до 16. Наверное условие "Или" было лишним. Хотя без него не пашет способность.
le
|
|
|
|
Overkills | Дата: Суббота, 24 Мая 2014, 16:04:12 | Сообщение # 22 |
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
| Во 1 убери "Ничего не делать".
Во 2 отлавливай получаемый урон, а не "атакован". Ибо это только замах и так можно набагать себе урон.
|
|
|
|
Borodach | Дата: Суббота, 24 Мая 2014, 17:05:35 | Сообщение # 23 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Логическая переменная не нужна и 2 проверка. В 1 проверке в конец действий, добавить в личный сценарий: return А в иначе обнуление уровня.
Karamba
|
|
|
|
SirNikolas | Дата: Суббота, 24 Мая 2014, 17:08:40 | Сообщение # 24 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Цитата Borodach ( ) добавить в личный сценарий: return В GUI есть действие "Skip remaining actions".
|
|
|
|
Extremator | Дата: Суббота, 24 Мая 2014, 21:59:58 | Сообщение # 25 |
10 уровень
Группа: Проверенные
Сообщений: 3199
Награды: 0
Репутация: 1018
Блокировки:
| Мне кажется... или... всё на много проще... м?)))
|
|
|
|