Ejemplo n.º 1
0
 /**************************************
  * CallBack 방접속 실패시
  * parm (retrunCode : ? ,  message : ?)
  *****************************************/
 public override void OnJoinRoomFailed(short returnCode, string message)
 {
     //방참가 실패
     joinStatus = NetStatus.JoinRoom;
     EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, false));
     Debug.Log(message);
 }
Ejemplo n.º 2
0
    void OnConnectRequest(EventConnect data)
    {
        Debug.Log("Request connect server.");

        ClientService.GetSingleton().Connect(ClientID.Frame,
                                             data.ip,
                                             data.tcpPort,
                                             OnConnectSuccess,
                                             OnConnectFail);
    }
Ejemplo n.º 3
0
 /*****************************************
 * 로비 접속 시도
 *****************************************/
 public void JoinLobby()
 {
     joinStatus = NetStatus.JoinLobby;
     if (PhotonNetwork.JoinLobby())
     {
         EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, true));
     }
     else
     {
         EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, false));
     }
 }
Ejemplo n.º 4
0
 /*******************************
 * 서버 접속 시도
 *******************************/
 public void Connect()
 {
     joinStatus = NetStatus.JoinServer;
     if (PhotonNetwork.ConnectUsingSettings())
     {
         EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, true));
     }
     else
     {
         EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, false));
     }
 }
Ejemplo n.º 5
0
    /********************************
     * 방접속 성공 CallBack
     **********************************/
    public override void OnJoinedRoom()
    {
        joinStatus = NetStatus.JoinRoom;
        EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, true));

        if (!isAbleNickName(PhotonNetwork.NickName))      //닉 중복방 접속 불가
        {
            //todo.. 방에 중복닉 알림
            Debug.Log("중복 닉 있네");
            LeaveRoom();
        }
    }
Ejemplo n.º 6
0
        private void Socket_Connect(IAsyncResult ar)
        {
            try
            {
                lock (this)
                {
                    try
                    {
                        if (Socket == null)
                        {
                            return;
                        }

                        Socket.EndConnect(ar);
                    }
                    catch (Exception)
                    {
                        //  Nothing to do.
                    }


                    Action <int> resultHandler = (ar.AsyncState as Action <int>);
                    if (Socket.Connected == true)
                    {
                        Activated?.Invoke(this);

                        if (resultHandler != null)
                        {
                            resultHandler(AegisResult.Ok);
                        }
                        else
                        {
                            SpinWorker.Dispatch(() =>
                            {
                                EventConnect?.Invoke(new IOEventResult(this, IOEventType.Connect, AegisResult.Ok));
                            });
                        }

                        _method.WaitForReceive();
                    }
                    else
                    {
                        Socket.Close();
                        Socket = null;


                        if (resultHandler != null)
                        {
                            resultHandler(AegisResult.ConnectionFailed);
                        }
                        else
                        {
                            SpinWorker.Dispatch(() =>
                            {
                                EventConnect?.Invoke(new IOEventResult(this, IOEventType.Accept, AegisResult.ConnectionFailed));
                            });
                        }
                    }
                }
            }
            catch (Exception e)
            {
                Logger.Err(LogMask.Aegis, e.ToString());
            }
        }
Ejemplo n.º 7
0
 /********************************
  * Callback
  * 방 생성 성공시 호출
  ************************************/
 public override void OnCreatedRoom()
 {
     joinStatus = NetStatus.CreateRoom;
     EventConnect?.Invoke(new NetStatusEventMsg(joinStatus, true));
 }