Урон за ману
|
|
FatalBlade | Дата: Суббота, 09 Апреля 2011, 22:59:20 | Сообщение # 1 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| У меня работает система урона за ману, через Unit - Takes Damage. При нанесении любого урона, у юнита отнимается мана. Так вот, даже когда юнит использует скилл который наносит урон, у меня отнимается мана и за скилл, и за урон. Ну ладно, это ещё мелочь. Сама проблема в том, что триггер реагирует на любой тип урона. Когда у героя есть скилл который наносит определённый урон в секунду, а скилл действует 20 секунд, то у героя отнимается мана каждую секунду! Как от этого избавиться? Я хочу что бы мана отнималась только если нанесён урон с обычного удара, а не со скила. З.Ы. Помогите плз это очень важно.
|
|
|
|
shift2501 | Дата: Воскресенье, 10 Апреля 2011, 00:16:24 | Сообщение # 2 |
4 уровень
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 11
Блокировки:
| FatalBlade, вроде же есть скил специальный в warcraft'е.
Сделать юзербар как у меня не просите! Делаю флеш шапки и баннеры на заказ
|
|
|
|
FatalBlade | Дата: Воскресенье, 10 Апреля 2011, 00:42:08 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (shift2501) FatalBlade, вроде же есть скил специальный в warcraft'е. Какой скилл? Мне не скилл нужен, а триггер, который будет отнимать ману только в том случае если нанесённый урон - НЕ скилл.
|
|
|
|
Boec | Дата: Воскресенье, 10 Апреля 2011, 04:15:37 | Сообщение # 4 |
3 уровень
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: 8
Блокировки:
| Если тебе нужно, чтобы твой скилл не отнимал ману (а только увеличивал урон), то в РО есть строка: Затраты :мана (ее значение изменить на 0) Добавлено (10-04-2011, 04:10) --------------------------------------------- Да, кстати, если такая система на всех игроков, то все же лучше убрать ману,затрачиваемую на скилл... Добавлено (10-04-2011, 04:15) --------------------------------------------- Если проблема в другом, то тогда : Событие: Юнит атакован (a unit atacked); Условие: У атакующего юнита стоит скилл, увеличивающий урон; Действие: Добавить маны в количестве урона наносимого скиллом
Восстановленных орков гладиаторов можно скачать по ссылке: http://cs-2d.ucoz.com/load/0-0-0-18-20 Как сказал один человек: Делай авы сам!
|
|
|
|
FatalBlade | Дата: Воскресенье, 10 Апреля 2011, 04:38:36 | Сообщение # 5 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (Boec) Если тебе нужно, чтобы твой скилл не отнимал ману (а только увеличивал урон), то в РО есть строка: Затраты :мана (ее значение изменить на 0) Quote (Boec) Добавить маны в количестве урона наносимого скиллом У меня не всё так просто Связать урон скилов, урон выстрелов и затрату маны на то или другое связать одной формулой невозможно. Quote (Boec) Да, кстати, если такая система на всех игроков, то все же лучше убрать ману,затрачиваемую на скилл... Мне нужно не что бы на скилы вообще не тратилась мана, а что бы тратилось столько сколько написано в РО, не более того. Дело в том что как я уже писал выше, у меня Событие - Наносит Урон, а это и урон от ударов и урон от скилов. И на 1 скилл которой наносит урон в секунду в течение какого то времени, сливается почти вся мана героя, потому что мана уходит каждую секунду.
|
|
|
|
FkoFF | Дата: Воскресенье, 10 Апреля 2011, 04:42:26 | Сообщение # 6 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| FatalBlade, отлавливай событие "юнит атакован", после чего через хэш давай пометку герою что он может нанести урон; тут проблема конфликта с посекундным уроном, но вообще это в целом возможно
|
|
|
|
FatalBlade | Дата: Воскресенье, 10 Апреля 2011, 04:44:57 | Сообщение # 7 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Кстати. Я уже нашёл выход из ситуации, небольшая хитрость. Всем магам (то есть тем у кого каждый выстрел тратит ману), я дал пассивку пустышку. Когда маг активирует какой нибудь ДОТ (Damage Over Time), то есть скилл наносящий урон в секунду за определённое время, эта пассивка удаляется. После окончания эффекта скила пассивка опять появляется. В моём случае это помогло, но это далеко не идеальный вариант. Если у кого нибудь есть предложения получше, прошу написать.
|
|
|
|
Boec | Дата: Воскресенье, 10 Апреля 2011, 05:03:58 | Сообщение # 8 |
3 уровень
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: 8
Блокировки:
| Есть еще разумный вариант... Затрата маны только определенного количества за атаку.
Восстановленных орков гладиаторов можно скачать по ссылке: http://cs-2d.ucoz.com/load/0-0-0-18-20 Как сказал один человек: Делай авы сам!
|
|
|
|
FkoFF | Дата: Воскресенье, 10 Апреля 2011, 06:24:11 | Сообщение # 9 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| FatalBlade, ну вообще полностью реализовать это как ты хочешь возможно только при полной замене обычной атаки на триггерную
|
|
|
|
FatalBlade | Дата: Воскресенье, 10 Апреля 2011, 09:23:55 | Сообщение # 10 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (Boec) Затрата маны только определенного количества за атаку. Всмысле? Может ты имел ввиду за определённое количество урона - снимать ману? Quote (FkoFF) FatalBlade, ну вообще полностью реализовать это как ты хочешь возможно только при полной замене обычной атаки на триггерную Это уже гемор Особенно в АОС, где у меня 40 лвлов, куча предметов, баффов и аур которые постоянно будут менять урон и скорость атаки
|
|
|
|
FkoFF | Дата: Воскресенье, 10 Апреля 2011, 09:33:52 | Сообщение # 11 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| FatalBlade, ну, если на гуи - то, офк, гемор, а на джассе достаточно обойтись парочкой БД, которые в любом случае пригодятся еще не в одной гениальной задумке.
|
|
|
|
rixt7956 | Дата: Воскресенье, 10 Апреля 2011, 10:33:49 | Сообщение # 12 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| можно и не заменять атаку. Создаешь событие юнит атакован, и создаешь локальный триггер для атакованого юнита с событием получает урон, через хэш вешаешь на хэндл триггера атакуещего юнита, ну и при срабатывание локального триггера проверяешь что источник повреждения равен выгружаемый юнит, отнимаешь ману у выгружаемого, чистишь триггер в хэш таблице, и удаляешь триггер.
Сообщение отредактировал rixt7956 - Воскресенье, 10 Апреля 2011, 10:36:48 |
|
|
|
lawson | Дата: Воскресенье, 10 Апреля 2011, 13:00:50 | Сообщение # 13 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (rixt7956) Создаешь событие юнит атакован, и создаешь локальный триггер для атакованого юнита с событием получает урон А зачем загружать в хеш можно потом просто GetTriggerUnit() в триггере юниту нанесен урон.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Воскресенье, 10 Апреля 2011, 13:01:00 |
|
|
|
rixt7956 | Дата: Воскресенье, 10 Апреля 2011, 14:28:57 | Сообщение # 14 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| вот сделал наработку http://rghost.ru/5151793
Сообщение отредактировал rixt7956 - Воскресенье, 10 Апреля 2011, 14:31:14 |
|
|
|
FatalBlade | Дата: Воскресенье, 17 Апреля 2011, 20:13:51 | Сообщение # 15 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Спс всем. Я нашёл свой способ, но он конечно очень геморный. У меня при приминении DOT скилов у магов, дамаг наносит не скилл, а созданный Dummy. Quote (lawson) GetTriggerUnit() Что это? Quote (rixt7956) вот сделал наработку Как я понял тут мана зависит от нанесённого урона? Спс. Пригодится.
|
|
|
|
rixt7956 | Дата: Воскресенье, 17 Апреля 2011, 21:29:21 | Сообщение # 16 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| там что бы атаковать нужна манна, и если ее не хватает то юнит не атакует.
|
|
|
|