Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Усиление мобов ночью.
#1
Здравствуйте, уважаемые пользователи Smile
Интересует такой момент, как сделать вот такую вот фишку: "ночью враги сильнее в 2-3 раза", вообщем, как сделать проверку на то - ночь в игре или день? И как во время ночи усилить атаку всем мобам в 2 раза (*2), именно всем сразу? (Кроме РБ, и Эпик РБ).

Хроники мои: Interlude, исходники использую L2J, L2JFrozen.
[Изображение: KZNhl.png]
Ответ
#2
как возможный вариант - повесить всем мобам пассивку с кондишном, проверяющим время дня, наподобие того как сделан скилл Shadow Sense
Ответ
#3
У ДЕ скилл, ночью у них точность увеличивается на 3. Оттакливайтесь от него.

Добавлено через 31 секунду
Gaikotsu Написал:как возможный вариант - повесить всем мобам пассивку с кондишном, проверяющим время дня, наподобие того как сделан скилл Shadow Sense

Опередили Sad
Ответ
#4
Спасибо за подсказки, всем плюсики поставил.

Нашел вот такой класс:

Код:
public class ConditionGameTime extends Condition
{

    public enum CheckGameTime
    {
        NIGHT
    }

    private final CheckGameTime _check;
    private final boolean _required;

    public ConditionGameTime(CheckGameTime check, boolean required)
    {
        _check = check;
        _required = required;
    }

    @Override
    public boolean testImpl(Env env)
    {
        switch(_check)
        {
            case NIGHT:
                return GameTimeController.getInstance().isNowNight() == _required;
        }
        return !_required;
    }
}

case NIGHT:
return GameTimeController.getInstance().isNowNight() == _required;

На сколько я понял из этих строк - проверяем, если ночь, то - возвращаем действие ? Или же используем этот required ? Не совсем если честно понял данную строчку return GameTimeController.getInstance().isNowNight() == _required; , кроме GameTimeController.getInstance().isNowNight() Smile)))

Добавлено через 2 минуты
И, собственно, остается вопрос в том - как выбрать сразу всех мобов (NPC) под действие (усиление)?
Думаю, можно типами мобов, или сделать от id 1 до 100000 (как пример), но думаю делать так не совсем разумно и задену и РБ и эпик рб (а отсеивать долговато будет всех рейдбоссов).
[Изображение: KZNhl.png]
Ответ
#5
Зачем выбирать всех мобов, всем мобам надо просто дать новую пассивку, в которой уже и будет ночное усиление, дописывать ничего не понадобится, кроме данной пассивки в хмл. И запросик в нпсскилл.
Инструмент для Perfect World, Forsaken World, Jade Dynasty, LoMA, HoTK, Ether Saga. Детали в ПМ.
Ответ
#6
femida4me Написал:Зачем выбирать всех мобов, всем мобам надо просто дать новую пассивку, в которой уже и будет ночное усиление, дописывать ничего не понадобится, кроме данной пассивки в хмл.

Хорошо, как будет более правильно добавить пассивку всем мобам? SQL запросом? Опять же, сложно будет выбрать диапазон id'ов, придется отсеивать РБ, но все равно спасибо за разъяснение.Wink

----------------------

Все, сам ответил на свой вопрос, по типам нпс, спасибо большое всем за помощьSmile Почти все разъяснилось, кроме основной задачи по коду (Увеличение атаки в 2 раза), но зато нам стало известно как это сделать в общем виде: через GameTimeController (делать проверку на isNowNight())
[Изображение: KZNhl.png]
Ответ
#7
оффтоп

По поводу класса - все верно, как вариант можно создать скрипт, который по таску будет в ночное время добавлять пасивку со статами, в дневное удалять, хотя с кондишеном конечно красивее Smile.
Ответ
#8
Ro_0TT Написал:
оффтоп

По поводу класса - все верно, как вариант можно создать скрипт, который по таску будет в ночное время добавлять пасивку со статами, в дневное удалять, хотя с кондишеном конечно красивее Smile.

оффтоп

Решил остановиться на Condition варианте, сегодня создам пассивный скилл и проверю. Еще раз огромное спасибо всем тем, кто отписался в данной теме и помог в решении вопроса:plus1:
[Изображение: KZNhl.png]
Ответ
#9
ну или как вариант, прямо в GameController'е, в методе activateShadowSense (лыжные сборки, по крайней мере, у меня так), проверить, если тип нпц - моб и т.д, то выставляем нужную атаку.
Ответ
#10
Big Grin Не проще ли взять скрипт смены мобов с Локации (Тёмный Лес или как то так из Руны) Распределить его на всех, но поставить не смену а All stats x2/x3 random?
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Нет агра мобов после респа Kagaku 0 895 03-30-2020, 06:54 PM
Последний пост: Kagaku
  Хп мобов silok 6 2,367 03-04-2018, 08:08 AM
Последний пост: silok
  Пропадание мобов Map 7 2,057 11-09-2017, 04:35 PM
Последний пост: Map
  Добавление РБ и Мобов virusoflove 1 1,570 01-23-2017, 08:52 PM
Последний пост: virusoflove
  прыжки мобов/игроков KoKoS 4 1,583 04-19-2015, 02:48 PM
Последний пост: KoKoS
  Длина имен мобов gre4ka 0 880 03-16-2014, 12:54 PM
Последний пост: gre4ka
  Кривые статы мобов на Acis Dimidrolbel 10 2,855 12-16-2013, 12:19 AM
Последний пост: Dimidrolbel
  вопрос по спавну мобов. Dimidrolbel 4 1,299 12-15-2013, 01:14 PM
Последний пост: Dimidrolbel
  Соски у мобов ipx 5 1,697 08-03-2013, 01:08 PM
Последний пост: KID
  Счетчик мобов ipx 1 1,664 07-10-2013, 10:14 PM
Последний пост: Ashe

Перейти к форуму:


Пользователи, просматривающие эту тему: 4 Гость(ей)