Сообщений: 54
Тем: 22
Зарегистрирован: Nov 2010
Добрый вечер
Итак меня заинтересовала одна вещь написание своих обработчиков в частности для Community Board
Например чтобы Community Board открывал multisell поставить обработчик _bbsmultisell
так как на данный момент если ставлю этот обработчик пишет что _bbsmultisell функция не реолизирована
а с другими обработчиками просто не открывает multisell
Вот собственно где рыть что менять чтоб добавить данный обработчик
Сборка у меня emuRT v5
на сайте emurt нашол полезного только
Каждый желающий может самостоятельно написать свой обработчик команд и подключить его к доске сообщества.
Для этого используется интерфейс хандлера:
com.emurt.gameserver.community.CommunityHandler.javaКод:
/**
* Метод выполнения команды
* @param player - игрок L2PcInstance
* @param command - команда String
* @param params - параметры String[]
* @param source - полная команда
* @return отсутствие ошибок при выполнении команды
*/
public abstract boolean execute(L2PcInstance player, String command, String[] params);
/**
* Определение всех команд исполняемых в хандлере
* @return - список команд
*/
public abstract String[] getCommands();
/**
* Отправка пакета с данными страницы
* @param html - код html
* @param acha - игрок
*/
protected void separateAndSend(String html, L2PcInstance player)
{
.....
}
Прошу помощи как создать обработчик какими програмами расшифровывать java файлы я так понимаю копать придётся там буду очень благодарен
Сообщений: 1,326
Тем: 10
Зарегистрирован: Apr 2010
Репутация:
2,078
Интерфейс хендлера IBBSHandler
Вам надо
- написать свой класс, иплементирующий IBBSHandler.
В нем
метод getBoard() должен возвращать "101"
метод getCommands() должен возвращать список комманд (String []) без _bbs префикса
После написания вы должны вызвать
CoummunityBoard.getInstance().registerBBSHandler для своег класса.
Если вы используете стандартные диалоги (с <title> тегом, что приводит к смерти клиента), то используйте метод CoummunityBoard.parseOldFormat для автоматичесого форматирования под BBS
Сообщений: 54
Тем: 22
Зарегистрирован: Nov 2010
Azagthtot;132075 Написал:Интерфейс хендлера IBBSHandler
Вам надо
- написать свой класс, иплементирующий IBBSHandler.
В нем
метод getBoard() должен возвращать "101"
метод getCommands() должен возвращать список комманд (String []) без _bbs префикса
После написания вы должны вызвать
CoummunityBoard.getInstance().registerBBSHandler для своег класса.
Если вы используете стандартные диалоги (с <title> тегом, что приводит к смерти клиента), то используйте метод CoummunityBoard.parseOldFormat для автоматичесого форматирования под BBS
Можно поподробней? может быть вы знаете ссылку на мануал по добавлению какого нибуть обработчика как пример?
И подскажите пожалуйста программу для Раскадирования java файлов
Сообщений: 1,326
Тем: 10
Зарегистрирован: Apr 2010
Репутация:
2,078
Может прежде чем писать вы выучите хотя бы java?
Сообщений: 54
Тем: 22
Зарегистрирован: Nov 2010
Согласен с java Я дел не имел тогда какой обработчик будет работать в emurt
если _bbsmultisell выдаёт что функция не реолизована
_bbsgmshop multisell не чего не происходит какой обработчик вставлять в html чтобы он открыл multesell?
Сообщений: 1,326
Тем: 10
Зарегистрирован: Apr 2010
Репутация:
2,078
_bbsgmshop multisell <id> только не забудтье, что что бы этот функционал работал, он должен быть приобретен вами (обработчики BBS поставлялись опционально, за отдельную плату)
Сообщений: 3,967
Тем: 90
Зарегистрирован: Nov 2010
Репутация:
15,337
07-19-2011, 07:14 PM
(Сообщение последний раз редактировалось: 07-19-2011, 08:29 PM Ro_0TT.)
Не знаю как сейчас у них, но сам смысл я показал ниже, ничего сложного в этом нет.
[src=java]
public boolean execute(L2PcInstance player, String command, String[] params)
{
if (params.length>=1)
try
{
int multisellId = Integer.parseInt(params[0]);
L2Multisell.getInstance().SeparateAndSend(multisellId, player, 0);
}
catch (Exception e)
{
player.sendMessage("Этот мультиселл не найден");
return false;
}
return true;
}
public String[] getCommands()
{
return new String[] {"_bbsmultisell"};
}
[/src]
Желательно добавить проверки на список тех мультиселов, которые использует CB, дабы не вызывали "лишних".
++ Импорты
++ Пакейдж
Сообщений: 54
Тем: 22
Зарегистрирован: Nov 2010
Ro0TT;132085 Написал:не знаю как сейчас у них, но сам смысл я показал ниже, ничего сложного в этом нет.
А в какой именно файл это прописывать? и как его разшифровать если он java
Сообщений: 54
Тем: 22
Зарегистрирован: Nov 2010