Запрет телепорта во время боя Community Board - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Описание темы:помогите разобраться

Ответ
Опции темы
Непрочитано 16.11.2013, 05:51   #1
Заинтересовавшийся

Автор темы (Топик Стартер) Запрет телепорта во время боя Community Board

Доброго времени суток.
У меня сборка на основах ядра фениксов, l2p. Epilogue

Ранее в зборке стоял запрет на использование community board если персонаж находиться в режиме боя, то есть оно даже не открывалось.
Я это все дело в ядре поправил, и прикрутил к конфигу. Все стало окей, пользоваться СВ в режиме боя можно.

Но появился следующий вопрос.
Теперь во время боя можно телепортироваться, бафаться.
Где и как это поправить в ядре?
За телепорт отвечает мультиселл с байпасами типа -h _bbsteleport_goto x y z
Вот так я попытался запретить доступ к байпасу во время определенных действий в ядре с файлом RequestByPassToServer.
Цитата:
else if(bypass.startsWith("_goto"))
{
if( (activeChar.isDead() && !Config.communityInTeleport) || (activeChar.isAlikeDead() && !Config.communityInTeleport) || (activeChar.isCastingNow() && !Config.communityInTeleport) || (activeChar.isInCombat() && !Config.communityInTeleport) || (activeChar.isAttackingNow() && !Config.communityInTeleport) || (activeChar.isInOlympiadMode() && !Config.communityInTeleport) || (activeChar.isFlying() && !Config.communityInTeleport) || (activeChar.isInFlyingTransform() && !Config.communityInTeleport) || (activeChar.isEvent() && !Config.communityForEventPvP))
{
activeChar.sendMessage("Телепорт нельзя использовать в данных условиях.");
return;
}
if( !Config.communityInInstances && activeChar.getReflectionId() > 0)
{
activeChar.sendMessage("Телепорт нельзя использовать в инстах.");
return;
}
mICommunityHandler mICommunityHandler = mCommunityHandler.getInstance().getHandler(bypass) ;
if(mICommunityHandler != null)
{
mICommunityHandler.useHandler(activeChar.getObject Id(), bypass);
}
}
Метод && !Config.communityInTeleport) контролирует значение true or false.
Но при том или ином значении ничего не меняется.


Помогите решить)
the2fantasy вне форума Ответить с цитированием
Непрочитано 16.11.2013, 11:55   #2
Аватар для elastic
Ooh, who's that handsome devil?

По умолчанию Re: Запрет телепорта во время боя Community Board

Я, конечно, не ковырялся в коммунке, но думаю, что Вы не туда копаете. Если память не изменяет, то скрипты сервисов коммунки лежат в дп\scripts\services\communityBoard, и манипуляции я бы стал производить производить там. Естественно не 100% инфа, прежде посмотрите сами классы.
elastic вне форума Отправить сообщение для elastic с помощью ICQ Ответить с цитированием
Сказали спасибо:
Непрочитано 16.11.2013, 15:21   #3
Аватар для n3k0nation
Antihero

По умолчанию Re: Запрет телепорта во время боя Community Board

Цитата:
Сообщение от the2fantasy Посмотреть сообщение
Доброго времени суток.
У меня сборка на основах ядра фениксов, l2p. Epilogue

Ранее в зборке стоял запрет на использование community board если персонаж находиться в режиме боя, то есть оно даже не открывалось.
Я это все дело в ядре поправил, и прикрутил к конфигу. Все стало окей, пользоваться СВ в режиме боя можно.

Но появился следующий вопрос.
Теперь во время боя можно телепортироваться, бафаться.
Где и как это поправить в ядре?
За телепорт отвечает мультиселл с байпасами типа -h _bbsteleport_goto x y z
Вот так я попытался запретить доступ к байпасу во время определенных действий в ядре с файлом RequestByPassToServer.


Метод && !Config.communityInTeleport) контролирует значение true or false.
Но при том или ином значении ничего не меняется.


Помогите решить)
Пишите это условие в холдер обработки КБ.
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
n3k0nation вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 16.11.2013, 16:07   #4
Заинтересовавшийся

Автор темы (Топик Стартер) Re: Запрет телепорта во время боя Community Board

Спасибо, разобрался.

добавил метод

Цитата:
else if(command.startsWith("_bbsteleport_goto"))
{
boolean allowTeleport = false;
String coords = command.substring(18).trim();
if (player.isInCombat())
{
player.sendMessage("Вы не можете телепортироватся в режиме боя.");
allowTeleport = false;
}
в game\data\scripts\community\teleport\teleport.java
the2fantasy вне форума Ответить с цитированием
Ответ

Метки
bypass, телепорт, телепорт во время боя


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
itamename-e.dat UFODriverr Lineage II 5 28.02.2021 18:17
ID-всех придметов ! ! ! ilyxa Lineage II 25 10.02.2020 15:35
Сборка сервера High Five Elizabet Курилка / Yak floor 48 26.04.2011 09:57
[Продам] Gracia Part 2 L2Dream PaInKiLlEr Рынок / Marketplace 10 04.06.2010 00:18


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 04:08. Часовой пояс GMT +3.

Вверх