Условие, для получения опыта
|
|
Samedy_ | Дата: Четверг, 02 Июля 2015, 13:46:47 | Сообщение # 1 |
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
| Есть триггер: Что делает триггер вроде объяснять не требуется)) Так вот, какое условие (какие условия) использовать, чтобы давать опыт только в том случае, если уровень героя не ниже (и не выше) уровня умирающей боевой единицы, чем на 3 лвла? В голову пришло деление получаемого опыта на уровень героя, но там же несколько героев. А если делить на группу - получится слишком мало опыта. А мне нужно сделать так, чтобы если в группе есть 1 герой 30 уровня и один 1 уровня, то 1 уровень получает опыт за убийство, а 30 нет. Но при этом 1 уровень получает немного больше, т.к. рядом с ним герой.Добавлено (02 Июля 2015, 10:00:34) --------------------------------------------- От решение на jass с комментами (или без них) тоже не откажусь)) Добавлено (02 Июля 2015, 13:46:47) --------------------------------------------- Поясню на всякий случай, мне нужно сравнение целочисленных, такое как: "если A меньше B на C" и "если D больше E на C".
|
|
|
|
Кристофер | Дата: Четверг, 02 Июля 2015, 13:59:19 | Сообщение # 2 |
7 уровень
Группа: Проверенные
Сообщений: 401
Награды: 0
Репутация: 338
Блокировки:
| Samedy_, Integer Comprasion, только пишешь не просто "Больше, чем Е", а пишешь "Больше, чем Е+2". Аналогично и с B.
"История нашего народа знает немало светлых страниц. Темных было тоже достаточно. И все с белыми пятнами. От белых пятен истории нужно избавляться, но нельзя же всё мазать черной краской!"(с) Рохан.
|
|
|
|
Samedy_ | Дата: Четверг, 02 Июля 2015, 16:40:04 | Сообщение # 3 |
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
| Цитата Кристофер ( ) "Больше, чем Е", а пишешь "Больше, чем Е+2" Я что-то не понял как это работает. Разница между моим числом и моим числом + другое число какая? Суть же та же остается. Приведу пример по-конкретнее. Если Уровень умирающего юнита меньше или равен или больше уровня героя, но не меньше и не больше чем на 3, то только после этого делать действия.Добавлено (02 Июля 2015, 14:19:33) --------------------------------------------- Или может быть есть другая возможность давать дополнительный опыт, а не делить его на всех героев рядом? Добавлено (02 Июля 2015, 16:40:04) --------------------------------------------- И еще вопрос, есть константа "Опыт героя - общее распределение". Если я ее правильно понял, то это отключает распределение опыта между героями. Но у меня все равно опыт делится между двумя и более героями (как моими, так и союзными), а нужно, чтобы не делился. Насчет триггерного варианта я и так вкурсе, интересуют константы.
Сообщение отредактировал Samedy_ - Четверг, 02 Июля 2015, 14:18:20 |
|
|
|
Kartoha | Дата: Четверг, 02 Июля 2015, 17:08:35 | Сообщение # 4 |
10 уровень
Группа: Ветераны
Сообщений: 2851
Награды: 1
Блокировки:
| Цитата Samedy_ ( ) Так вот, какое условие (какие условия) использовать, чтобы давать опыт только в том случае, если уровень героя не ниже (и не выше) уровня умирающей боевой единицы, чем на 3 лвла? Установи целочисленную переменную равной разнице между уровнями героя и умирающей боевой единицы, используй её в условии к нужным действиям. Выглядеть это должно примерно так:
|
|
|
|
Samedy_ | Дата: Четверг, 02 Июля 2015, 23:27:01 | Сообщение # 5 |
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
| Спасибо больше. Добавлено (02 Июля 2015, 23:27:01) ---------------------------------------------
Цитата Samedy_ ( ) И еще вопрос, есть константа "Опыт героя - общее распределение". Если я ее правильно понял, то это отключает распределение опыта между героями. Но у меня все равно опыт делится между двумя и более героями (как моими, так и союзными), а нужно, чтобы не делился. Насчет триггерного варианта я и так вкурсе, интересуют константы. Все еще актуально.Цитата Samedy_ ( ) Или может быть есть другая возможность давать дополнительный опыт, а не делить его на всех героев рядом? Это тоже.
Сообщение отредактировал Samedy_ - Четверг, 02 Июля 2015, 23:26:15 |
|
|
|
Melodia | Дата: Пятница, 03 Июля 2015, 12:25:10 | Сообщение # 6 |
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5051
Блокировки:
| В редакторе 1.26 в константах есть радиус получения опыта, можно попытаться уменьшить его. Но есть риск, что и убийца не получит опыта если слишком далеко.
Для вычисления разницы есть функция Математика - abs - abs(уровень героя - уровень крипа или наоборот) < 3 - значит дать опыт
|
|
|
|
Samedy_ | Дата: Пятница, 03 Июля 2015, 18:28:37 | Сообщение # 7 |
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
| Цитата Melodia ( ) Для вычисления разницы есть функция Математика - abs - abs(уровень героя - уровень крипа или наоборот) < 3 - значит дать опыт Спасибо, а скажи, какие минусы использования того способа, что написал Kartoha?
|
|
|
|
Melodia | Дата: Суббота, 04 Июля 2015, 18:51:37 | Сообщение # 8 |
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5051
Блокировки:
| Цитата Samedy_ ( ) пасибо, а скажи, какие минусы использования того способа, что написал Kartoha? Заведение лишней переменной, минусов нет.
|
|
|
|