Для более наглядного и ясного сути вопроса, буду ссылаться на способность из Dota (Dota2) что бы те кто в курсе быстрее понял вопрос.
Способность героя Pudge - Flesh heap которая звучит так :
"Увеличивает сопротивление магии, а также даёт дополнительную силу за каждого убитого или погибшего поблизости вражеского героя. Заряды накапливаются с начала игры, но герой получит силу только после изучения способности"
Что мне важно это конкретно : "Заряды накапливаются с начала игры, но герой получит силу только после изучения способности"
Всё в целом ясно понятно, можно ставить в условии тип героя (юнита) который имеет эту способность для изучения изначально, но что если эта способность появится у любого unit-type? Как мне прогонять loop по группе юнитов (которые типо будут иметь в будущем эту способность для изучения , что бы она для них накапливалась?) Единственное что приходит на ум это условие типа ГЕРОЙ ИМЕЕТ СПОСОБНОСТЬ ДЛЯ ИЗУЧЕНИЯ В СПИСКЕ СВОИХ СПОСОБНОСТЕЙ, но насколько я знаю такого условия нет. Ваши варианты ? Надеюсь максимально понятно пояснил. Заранее спасибо. Возможно тут всё проще и я затупил.

Принятый ответ

Кстати а вдруг у игрока их может быть несколько таких юнитов)
Учим хэштаблицу либо структуры либо целое число юнита. Сохраняем целое в юнита после того как он убивает крипчика, когда юнит получает абилку достаешь это значение и меняешь характеристики. При последующих убийствах как хочешь, можешь сохранять значение например для отображения стаков, а можешь без сохранения увеличивать показатели
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
28
3 года назад
Отредактирован Roy Mustang
2
Даем герою - способность пустышку и проверяем есть ли у героя данная способность при убийстве крипа.
При изучении нужной тебе способности выдаем бонус.
(зачем тебе loop - просто используй переменную и засчитывай ее под номер игрока которому принадлежит герой)
Триггер 1
Засчитываем бонус
Event
Unit Dies
Condition
Level of Dummy Ability for Killing Unit > 0
Action
Set Bonus[Player Number (Owner of Killing Unit)] = Bonus[Player Number (Owner of Killing Unit) ] + 1.
Выдаем бонус если у героя изучена реальная способность
If
Level of Real Ability for Killing Unit > 0
then
Выдаем твой бонус
else
0
10
3 года назад
Отредактирован EviLInside
0
(зачем тебе loop - просто используй переменную и засчитывай ее под номер игрока которому принадлежит герой)
Без этого ни как )) в vJass без прогонки ты никак не сделаешь MUI спеллы легко, там придётся добавлять array и индексы ( если не сможешь к таймеру привзяать) ,как говорят чуваки из LUA там ты забудешь о MUI , я не близок к программированию , но суть понимаю что мне сложновато это дерьмо делать.

Кстати а вдруг у игрока их может быть несколько таких юнитов)
2
28
3 года назад
Отредактирован Roy Mustang
2
EviLInside:
Кстати а вдруг у игрока их может быть несколько таких юнитов)
Повысить уровень дамми абилки для нужного тебе юнита и выдавать бонус равный ее уровню.
4
32
3 года назад
Отредактирован quq_CCCP
4
Все просто, при вручении или изучении способности вручается бонусы, число убийств ведётся со старта игры, у всех потенциальных владельцев абилки.
5
27
3 года назад
Отредактирован rsfghd
5
Кстати а вдруг у игрока их может быть несколько таких юнитов)
Учим хэштаблицу либо структуры либо целое число юнита. Сохраняем целое в юнита после того как он убивает крипчика, когда юнит получает абилку достаешь это значение и меняешь характеристики. При последующих убийствах как хочешь, можешь сохранять значение например для отображения стаков, а можешь без сохранения увеличивать показатели
Принятый ответ
0
12
3 года назад
0
Можно взять группу и добавлять в неё юнитов, ты же сам решаешь у кого будет способность, потом прокручиваешь всю группу и записываешь на каждого юнита нужное число
Чтобы оставить комментарий, пожалуйста, войдите на сайт.