示例#1
0
        internal static void OnC2SAskEnterGame(ByteBuffer buffer, Connection connection)
        {
            var incPacket = new ConnectionPackets.C2SAskEnterGame(buffer, connection);
            var client    = ClientManager.GetClient(connection);
            var userId    = client.UserId;

            DatabaseFunctions.GetFullCharacter(userId, incPacket.charSlot, out var fullCharBytes);
            var character = new Character(fullCharBytes);

            client.SelectCharacter(character);
            var playerInfoPacket = new CharacterPackets.S2CCharacterInfo(character);

            playerInfoPacket.Send(connection);

            var skillInfoPacket = new CharacterPackets.S2CSkillInfo(character);

            skillInfoPacket.Send(connection);

            var quickInfoPacket = new CharacterPackets.S2CQuickInfo(character);

            quickInfoPacket.Send(connection);

            var styleInfoPacket = new CharacterPackets.S2CStyleInfo(character);

            styleInfoPacket.Send(connection);

            var stateInfoPacket = new CharacterPackets.S2CStatePacket(character);

            stateInfoPacket.Send(connection);

            var packet = new ConnectionPackets.S2CAnsEnterGame(client.UserId);

            packet.Send(connection);
        }
示例#2
0
        private static void OnC2SAskEnterGame(ByteBuffer buffer, Connection connection)
        {
            //byte charSlot=0;
            var   selectedCharSlot = buffer.ReadByte();
            short charSlot         = buffer.ReadInt16();
            var   x      = charSlot / 128;
            var   packet = new ConnectionPackets.C2SAskEnterGame((byte)x, connection);
            var   userID = CCM.GetClientConnection(connection).UserID;

            DBConnection.connection.SendObject("GetFullCharacter", new[] { userID, packet.charSlot });
        }