11-29-2015, 05:06 AM
есть некий класс RequestShowBoard, который выдает игроку CommunityBoard если нажать Alt+B.
проблема в следующем: если несколько раз нажать Alt+B ... Alt+B, то на некоторый промежуток времени (2-3 сек) нельзя больше нажимать Alt+B, соответственно от сервера никакой реакции нет.
вот сам пакет RequestShowBoard:
сделал даже так для чистоты эксперимента:
L2GamePacketHandler
создается ощущение, что это ограничение прописано в клиенте.
помогите плз разобраться...
проблема в следующем: если несколько раз нажать Alt+B ... Alt+B, то на некоторый промежуток времени (2-3 сек) нельзя больше нажимать Alt+B, соответственно от сервера никакой реакции нет.
вот сам пакет RequestShowBoard:
Код:
public final class RequestShowBoard extends L2GameClientPacket
{
@SuppressWarnings("unused")
private int _unknown;
/**
* packet type id 0x57 sample 57 01 00 00 00 // unknown (always 1?) format: cd
*/
@Override
protected void readImpl()
{
_unknown = readD();
}
@Override
protected void runImpl()
{
CommunityBoard.getInstance().handleCommands(getClient(), Config.BBS_DEFAULT);
}
@Override
public String getType()
{
return "[C] 57 RequestShowBoard";
}
}
сделал даже так для чистоты эксперимента:
L2GamePacketHandler
Код:
if(opcode == 0x57) // RequestShowBoard
{
_log.info("RequestShowBoard: no flood protected");
}
else if(!PacketsFloodProtector.tryPerformAction(opcode, opcode2, client))
{
client.sendPacket(ActionFailed.STATIC_PACKET);
return null;
}
создается ощущение, что это ограничение прописано в клиенте.
помогите плз разобраться...