private void OnEventPlayerLoginBox(WebSocketSimpet.PlayerWeiXinData val) { Debug.Log("pcvr::OnEventPlayerLoginBox -> userName " + val.userName + ", userId " + val.userId); GamePlayerData playerDt = m_GamePlayerData.Find((dt) => { if (dt.m_PlayerWeiXinData != null) { return(dt.m_PlayerWeiXinData.userId.Equals(val.userId)); } return(dt.m_PlayerWeiXinData.Equals(val)); }); int indexPlayer = -1; bool isActivePlayer = false; if (playerDt == null) { indexPlayer = GetActivePlayerIndex(); if (indexPlayer > -1 && indexPlayer < m_MaxPlayerNum) { Debug.Log("Active player, indexPlayer == " + indexPlayer); playerDt = new GamePlayerData(); playerDt.m_PlayerWeiXinData = val; playerDt.Index = indexPlayer; m_GamePlayerData.Add(playerDt); isActivePlayer = true; } else { Debug.Log("have not empty player!"); } } else { Debug.Log("player have active game!"); playerDt.IsExitWeiXin = false; if (playerDt.Index > -1 && playerDt.Index < m_MaxPlayerNum) { if (m_IndexPlayerActiveGameState[playerDt.Index] == (int)PlayerActiveState.WeiJiHuo) { isActivePlayer = true; indexPlayer = playerDt.Index; } } } if (isActivePlayer) { switch (indexPlayer) { case 0: case 1: { SSGameDataCtrl.GetInstance().m_PlayerData[indexPlayer].PlayerHeadUrl = playerDt.m_PlayerWeiXinData.headUrl; InputEventCtrl.GetInstance().ClickStartBt((SSGameDataCtrl.PlayerIndex)indexPlayer, InputEventCtrl.ButtonState.DOWN); break; } } } }
/// <summary> /// 玩家从纷腾服务器登陆游戏. /// </summary> internal void OnPlayerLoginFromFTServer(WebSocketSimpet.PlayerWeiXinData playerDt) { if (playerDt == null) { SSDebug.LogWarning("OnPlayerLoginFromFTServer -> playerDt was null"); return; } if (m_HongDDGamePadCom != null) { m_HongDDGamePadCom.OnPlayerLoginFromFTServer(playerDt); } }
int userIdTest = 0; //测试用户id信息. /// <summary> /// 收到玩家手柄登录消息. /// </summary> void OnReceivedPlayerLoginMsg(string[] args) { //会话id信息是当玩家每次登录后产生的. //LOGIN,会话id信息,机器特征码,玩家id,玩家昵称 //LOGIN,374b1b26-ea3c-4669-aaca-7e42dc799c0e,43142003142014402211616555881165971,id,name //玩家登录消息. if (args.Length >= 3) { int userId = 0; string name = ""; string sex = ""; string headUrl = ""; userIdTest++; userId = userIdTest; name = "test"; sex = "1"; if (FindGamePlayerData(userId) == null) { //添加玩家数据. PlayerData playerDt = new PlayerData(); playerDt.huiHuaId = args[1]; playerDt.userId = userId; playerDt.name = name; playerDt.sex = sex; playerDt.headUrl = headUrl; AddGamePlayerData(playerDt); } WebSocketSimpet.PlayerWeiXinData playerWeiXinDt = new WebSocketSimpet.PlayerWeiXinData(); playerWeiXinDt.sex = sex; playerWeiXinDt.headUrl = headUrl; playerWeiXinDt.userName = name; playerWeiXinDt.userId = userId; if (pcvr.GetInstance().m_HongDDGamePadInterface != null) { pcvr.GetInstance().m_HongDDGamePadInterface.OnPlayerLoginFromFTServer(playerWeiXinDt); //测试,暂时当收到登录消息后直接发送开始按键消息. StartCoroutine(TestDelaySendClickStartBtMsg(userId)); } } }