// 채팅 보내기
        private void button5_Click(object sender, EventArgs e)
        {
            if (ClientStatus != CLIENT_STATUS.LOBBY)
            {
                MessageBox.Show("채팅은 로비에 입장해야만 가능합니다");
                return;
            }

            var request = new JsonPacketRequestChat()
            {
                Chat = textBoxSendChat.Text
            };
            var bodyData = JsonEnDecode.Encode <JsonPacketRequestChat>(request);

            PostSendPacket((UInt16)PACKET_ID.REQUEST_CHAT, bodyData);
        }
        // 로그인 하기
        private void button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(textBoxUserID.Text))
            {
                MessageBox.Show("사용할 ID를 입력해 주세요");
                return;
            }

            var request = new JsonPacketRequestLogin()
            {
                ID = textBoxUserID.Text
            };
            var bodyData = JsonEnDecode.Encode <JsonPacketRequestLogin>(request);

            PostSendPacket((UInt16)PACKET_ID.REQUEST_LOGIN, bodyData);
        }
Exemple #3
0
        /// <summary>
        /// 패킷 처리
        /// </summary>
        private void ProcessProcket()
        {
            var packet = ServerNet.GetPacket();

            if (packet == null)
            {
                return;
            }

            switch (packet.GetPacketType())
            {
            case CgsfNET64Lib.SFPACKET_TYPE.CONNECT:
                SessionList.Add(packet.SessionID());
                DevLog.Write(string.Format("[OnConnect] Serial:{0}", packet.SessionID()), LOG_LEVEL.INFO);
                break;

            case CgsfNET64Lib.SFPACKET_TYPE.DISCONNECT:
                SessionList.Remove(packet.SessionID());
                DevLog.Write(string.Format("[OnDisConnect] Serial:{0}", packet.SessionID()), LOG_LEVEL.INFO);
                break;

            case CgsfNET64Lib.SFPACKET_TYPE.DATA:
                switch (packet.PacketID())
                {
                case PACKET_ID_ECHO:
                    var resData = JsonEnDecode.Decode <JsonPacketNoticeEcho>(packet.GetData());
                    DevLog.Write(string.Format("[Chat] Serial:{0}, Msg:{1}", packet.SessionID(), resData.Msg), LOG_LEVEL.INFO);

                    var request = new JsonPacketNoticeEcho()
                    {
                        Msg = resData.Msg
                    };
                    var bodyData = JsonEnDecode.Encode <JsonPacketNoticeEcho>(request);
                    ServerNet.SendPacket(packet.SessionID(), PACKET_ID_ECHO, bodyData);
                    break;

                default:
                    DevLog.Write(string.Format("[ProcessProcket] Invalid PacketID:{0}", packet.PacketID()), LOG_LEVEL.ERROR);
                    break;
                }
                break;
            }
        }