コード例 #1
0
        public void Net_InGameServerID(byte[] data, int dataSize)
        {
            if (dataSize != Marshal.SizeOf(typeof(CMD_GP_InGameSeverID)))
            {
                return;
            }

            CMD_GP_InGameSeverID pNetInfo = (CMD_GP_InGameSeverID)StructConverterByteArray.BytesToStruct(data, typeof(CMD_GP_InGameSeverID));

            if (m_pInGameServerInfoSink != null)
            {
                m_pInGameServerInfoSink.onUserInGameServerID(pNetInfo);
            }
            stop();
        }
コード例 #2
0
ファイル: UserInfo.cs プロジェクト: jok886/6020FD772C01DD09
        public void onUserInGameServerID(CMD_GP_InGameSeverID pNetInfo)
        {
            Debug.Log("onUserInGameServerID: " + pNetInfo.LockServerID + "," + pNetInfo.LockKindID);
            if (pNetInfo.LockServerID != 0)
            {
                //Debug.Log("connectGameServerByServerID " + pNetInfo.LockServerID);
                GameManagerBaseNet.InstanceBase().connectGameServerByServerID((int)pNetInfo.LockServerID);
                Debug.Log("断线重连onUserInGameServerID:" + pNetInfo.LockKindID);
                if (pNetInfo.LockKindID == GameScene.KIND_ID_JianDe)
                {
                    GameScene.KIND_ID      = GameScene.KIND_ID_JianDe;
                    HNGameManager.GameType = HNPrivateScenceBase.GAME_TYPE_JianDe;
                }
                else if (pNetInfo.LockKindID == GameScene.KIND_ID_13Shui)
                {
                    Debug.LogError("13shui断线重连");
                    GameScene.KIND_ID      = GameScene.KIND_ID_13Shui;
                    HNGameManager.GameType = HNPrivateScenceBase.GAME_TYPE_13Shui;
                }
            }
            else
            {
                GameScene.KIND_ID      = 0;
                HNGameManager.GameType = HNPrivateScenceBase.GAME_TYPE_Null;

                // for HideSeek:强制离开
                //玩家没被锁在GameScoreLocker表中
                Debug.LogError("onUserInGameServerID: 玩家没被锁在GameScoreLocker表中");
                if (m_hnManager != null)
                {
                    if (m_hnManager.bEnteredGameScene)
                    {
                        if (CServerItem.get() != null)
                        {
                            CServerItem.get().IntermitConnect(true);
                        }
                        Loom.QueueOnMainThread(() =>
                        {
                            m_hnManager.LeaveGameToHall(false);
                        });
                    }
                }
                else
                {
                    Debug.LogError("onUserInGameServerID: m_hnManager==null");
                }
            }
        }
コード例 #3
0
    void Net_InGameServerID(byte[] tmpBuf, int size)
    {
        if (size != Marshal.SizeOf(typeof(CMD_GP_InGameSeverID)))
        {
            return;
        }
        CMD_GP_InGameSeverID pNetInfo = NetUtil.BytesToStruct <CMD_GP_InGameSeverID>(tmpBuf);

        SocketEngine.Instance.SocketQuit();
        MyDebug.Log("KindID:" + pNetInfo.LockKindID);
        MyDebug.Log("ServerID:" + pNetInfo.LockServerID);
        if (pNetInfo.LockKindID == 0 && pNetInfo.LockServerID == 0)
        {
            UIPanel_Loading.instance.SetLoadPercentShow("Loading.....");
            MySceneManager.instance.ScentToMain();
        }
        else
        {
            SocketSendManager.Instance.ConnectGameServerByServerID((int)pNetInfo.LockServerID);
            UIPanel_Loading.instance.SetLoadPercentShow("Loading.....");
            //断线重连
        }
    }