Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Помогите с комнатами при входе игрока вылетает клиент
#1
Создал комнату. При попытке зайти 2 игроку в комнату у него вылетел клиент.
Смена настроек комнаты появляються лишнии игрока переход игрока за другую команду пропадает никSad
Помогите мне пожалуйста)))
Код:
/*
* Java Server Emulator Project Blackout / PointBlank
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
*
* Authors: DarkSkeleton, sjke, Felixx
* Copyright (C) 2013 PBDev™
*/

package ru.pb.game.network.client.packets.server;

import ru.pb.core.models.Clan;
import ru.pb.core.models.Player;
import ru.pb.core.models.RoomSlot;
import ru.pb.game.network.client.packets.ServerPacket;

/**
* Неизместный пакет, отправляется вместе с пекетов авторизации
*
* @author sjke
*/
public class SM_ROOM_PLAYER_ENTER extends ServerPacket {

    private final RoomSlot slot;

    public SM_ROOM_PLAYER_ENTER(RoomSlot slot) {
        super(0xF45);
        this.slot = slot;
    }

    @Override
    public void writeImpl() {
    /*    writeD(slot.getId());
        writeC(slot.getState().ordinal());
        writeC(slot.getPlayer() == null ? 0 : slot.getPlayer().getRank());
        writeC(0x2d);
        writeC(0x40);
        writeB(new byte[10]);
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo1());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo2());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo3());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo4());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 0 : slot.getPlayer().getClan().getColor());
        writeB(new byte[6]); //TEST?
        writeS(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? "" : slot.getPlayer().getClan().getName(), Clan.CLAN_NAME_SIZE);
        writeS(slot.getPlayer() == null ? "" : slot.getPlayer().getName(), Player.MAX_NAME_SIZE);
        writeC(slot.getPlayer() == null ? 0 : slot.getPlayer().getColor());*/
        writeD(slot.getId());
        writeC(slot.getState().ordinal());
        writeH(slot.getPlayer() == null ? 0 : slot.getPlayer().getRank());
        writeB(new byte[8]);
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo1());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo2());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo3());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo4());
        writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 0 : slot.getPlayer().getClan().getColor());
        writeS(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? "" : slot.getPlayer().getClan().getName(), Clan.CLAN_NAME_SIZE);
        writeC(slot.getId());
        writeC(slot.getPlayer().getName().length());
       // writeH(0);
        writeC(0);
        writeH(slot.getPlayer().getName().length()+1);
        writeS(slot.getPlayer() == null ? "" : slot.getPlayer().getName());
        writeC(slot.getPlayer() == null ? 0 : slot.getPlayer().getColor());
Ответ
#2
slawa560, Идентично PROTOCOL_LOBBY_CREATE_ROOM_ACK, PROTOCOL_ROOM_GET_SLOTINFO_ACK
Ответ
#3
Что?

Добавлено через 1 минуту
Все что выше этого writeD(slot.getId());
writeC(slot.getState().ordinal());
writeH(slot.getPlayer() == null ? 0 : slot.getPlayer().getRank());
writeB(new byte[8]);
writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo1());
writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo2());
writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo3());
writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 255 : slot.getPlayer().getClan().getLogo4());
writeC(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? 0 : slot.getPlayer().getClan().getColor());
writeS(slot.getPlayer() == null || slot.getPlayer().getClan() == null ? "" : slot.getPlayer().getClan().getName(), Clan.CLAN_NAME_SIZE);
writeC(slot.getId());
writeC(slot.getPlayer().getName().length());
// writeH(0);
writeC(0);
writeH(slot.getPlayer().getName().length()+1);
writeS(slot.getPlayer() == null ? "" : slot.getPlayer().getName());
writeC(slot.getPlayer() == null ? 0 : slot.getPlayer().getColor());
В коментарьях !!
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Нужен клиент или отдельные файлы wrngdeath 0 1,114 12-03-2022, 06:14 PM
Последний пост: wrngdeath
  Помогите с клиентом slawa560 1 1,559 06-12-2019, 01:34 PM
Последний пост: zOne62
  Вылетает клиент при получение MyInfo slawa560 2 2,636 08-23-2017, 06:02 PM
Последний пост: Awiion
  После перезахода сервер отказываеться видить клиент slawa560 6 2,183 08-08-2017, 11:26 PM
Последний пост: slawa560
  Помогите slawa560 3 1,411 08-01-2017, 09:24 PM
Последний пост: Alter53
  Помогите юзаю исходник PBCross но есть такая вот фигня больше 16 игроков не пустит slawa560 3 1,695 07-24-2017, 02:53 AM
Последний пост: TomCodder
  Auth server не кого не впускает клиент slawa560 5 1,886 06-12-2017, 06:11 PM
Последний пост: slawa560
  Помогите разобраться с проблемкой KoToWeD 9 2,524 08-19-2016, 03:19 PM
Последний пост: Awiion
  Помогите пожалуйста slawa560 3 1,479 08-01-2016, 07:19 AM
Последний пост: Sojang
  Помогите сделать upd 3 slawa560 12 7,431 07-13-2016, 08:02 PM
Последний пост: Awiion

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


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