Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
UseItem на олимпе
#11
Вероятно, за пол года я уже это попробовал, и это не помогло?
Пробовал и убирать ispotion=true , тоже не помогает, вот и спрашиваю, что еще можно предпринять.
Ответ
#12
Gaikotsu Написал:
Код:
<set name="isOlympiadEnabled" val="true" />
куда это пихать думаю догадаешся Smile

ОГО - ничего себе, не думал что так легко и просто.

У меня даже мысли не было про xml. Будем пробывать=) Спасибо!

Добавлено через 32 минуты
Все отлично работает. Еще раз спасибо.

Добавлено через 34 минуты
И возник еще один вопрос, не могу найти код, который отвечает за канцел баф при ТП на олимп. Подскажите, пожалуйста, в какой класс смотреть.
Ответ
#13
в ядре l2p.gameserver.model.entity.olympiad - teamMember.java
Ответ
#14
FriendlyGhost Написал:Вероятно, за пол года я уже это попробовал, и это не помогло?
Пробовал и убирать ispotion=true , тоже не помогает, вот и спрашиваю, что еще можно предпринять.
Да, действительно не используются банки на олимпе при <set name="is_oly_restricted" val="false" />.

Есть еще строка <set name="handler" val="ItemSkills" />, а в соответствующем хандлере(l2jserver\game\data\scripts\handlers\itemhandlers) мы видим условие находится ли чар на олимпе и соответственно запрет на использование итемов:
Код:
if (activeChar != null && activeChar.isInOlympiadMode())
{
    activeChar.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.THIS_ITEM_IS_NOT_AVAILABLE_FOR_THE_OLYMPIAD_EVENT));
    return;
}
        
super.useItem(playable, item, forceUse);

Трите условиеSmile А само использование итемов контролируйте выше указанным параметром(is_oly_restricted).
Ответ
#15
FriendlyGhost Написал:а аналог для Лыжи не подскажете ? )

простите за нубство но что такое лыжа?
Ответ
#16
Xendox Написал:простите за нубство но что такое лыжа?

L2jServer....
Ответ
#17
Вот как сделал в итоге. Заменил кусок кода:
Код:
if (activeChar != null && activeChar.isInOlympiadMode())
{
    activeChar.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.THIS_ITEM_IS_NOT_AVAILABLE_FOR_THE_OLYMPIAD_EVENT));
    return;
}
на:
Код:
if (activeChar != null && activeChar.isInOlympiadMode())
        {
            if(!(item.getItemId() == 8193 || item.getItemId() == 8194 || item.getItemId() == 8195 || item.getItemId() == 8196 || item.getItemId() == 8197 || item.getItemId() == 8198 || item.getItemId() == 8199 || item.getItemId() == 9702))
            {activeChar.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.THIS_ITEM_IS_NOT_AVAILABLE_FOR_THE_OLYMPIAD_EVENT));
            return;
            }
        }
За синтаксис просьба не судить, я в яве новичек )) .
Ответ
#18
опять же не гибко.
не лучше ли проверять вместо конкретных ид, не лучше ли использовать тот же самый параметр is_oly_restricted у предметов для проверок?
Ответ
#19
Gaikotsu, я пока не умею такие проверки делать )
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  ХФ птс(off) - CP считается ли на Олимпе за урон Munhgauzen 1 1,242 11-09-2013, 04:09 PM
Последний пост: Deazer

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


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