public void Init(string szUrl) { H5Helper.H5LogStr(szUrl); Uri uri = new Uri(szUrl); string szBaseUrl; NameValueCollection nvcParam; ParseUrl(szUrl, out szBaseUrl, out nvcParam); GameInstance.Instance().SetPlatform(nvcParam.Get("platform")); GameInstance.Instance().SetName(nvcParam.Get("name")); GameInstance.Instance().SetHeadImage(nvcParam.Get("head_img")); GameInstance.Instance().SetAccessToken(nvcParam.Get("access_token")); GameInstance.Instance().SetOpenId(nvcParam.Get("openid")); string szSex = nvcParam.Get("sex"); string szExpiresDate = nvcParam.Get("expires_date"); uint dwSex = 0; uint dwExpiresDate = 0; uint.TryParse(szSex, out dwSex); uint.TryParse(szExpiresDate, out dwExpiresDate); GameInstance.Instance().SetSex(dwSex); GameInstance.Instance().SetExpiresDate(dwExpiresDate); }
public void Init(string szUrl) { SampleDebuger.Log(szUrl); Uri uri = new Uri(szUrl); string szBaseUrl; NameValueCollection nvcParam; ParseUrl(szUrl, out szBaseUrl, out nvcParam); PlayerData.Instance().SetPlatform(nvcParam.Get("platform")); PlayerData.Instance().SetName(nvcParam.Get("name")); PlayerData.Instance().SetHeadImage(nvcParam.Get("head_img")); StartCoroutine(H5Helper.SendGet(PlayerData.Instance().proHeadImage, delegate(Texture2D tex) { PlayerData.Instance().SetHeadTex(tex); }) ); PlayerData.Instance().SetAccessToken(nvcParam.Get("access_token")); PlayerData.Instance().SetOpenId(nvcParam.Get("openid")); string szSex = nvcParam.Get("sex"); string szExpiresDate = nvcParam.Get("expires_date"); uint dwSex = 0; uint dwExpiresDate = 0; uint.TryParse(szSex, out dwSex); uint.TryParse(szExpiresDate, out dwExpiresDate); PlayerData.Instance().SetSex(dwSex); PlayerData.Instance().SetExpiresDate(dwExpiresDate); }
public bool InitSession(SessionType eType, string szIp, UInt16 wPort) { H5Helper.H5LogStr("type : " + eType.ToString() + ", ip : " + szIp + ", port : " + wPort); m_szIP = szIp; m_wPort = wPort; m_eSessionType = eType; switch (m_eSessionType) { case SessionType.SessionType_TCP: { m_pSession = new BinarySession(this); } break; case SessionType.SessionType_WebSocket: { m_pSession = new WebSocketSession(this); } break; default: { return(false); //throw new ArgumentException("error session type : " + m_eSessionType.ToString()); } break; } m_pSession.Init(m_szIP, m_wPort); m_pClientSocket = m_pSession.Reconnect(); return(true); }
public void Init(GameProto.RoleData oData) { m_imgHead.gameObject.SetActive(true); LobbyTeamPlayer pLeader = TeamPlayerManager.Instance().GetPlayerBySlot(0); if (pLeader.m_qwPlayerId != PlayerData.Instance().proPlayerId) { m_buttonKick.gameObject.SetActive(false); } else { if (m_dwSlotId != 0) { m_buttonKick.gameObject.SetActive(false); //todo 先不踢玩家 如果要加这个功能 后面再处理 m_buttonKick.gameObject.SetActive(true); } else { m_buttonKick.gameObject.SetActive(false); } } m_qwPlayerId = oData.QwPlayerId; m_textName.text = oData.SzNickName; m_buttonInvite.gameObject.SetActive(false); StartCoroutine(H5Helper.SendGet(oData.SzAvatar, delegate(Texture2D tex) { m_imgHead.texture = tex; }) ); }
public override IFxClientSocket Reconnect() { H5Helper.H5LogStr("Reconnect"); m_pSocket.Init(this); m_pSocket.Connect(m_oGameObject, m_szIp, m_wPort); return(m_pSocket); }
public void OnPlayerRequestGameTest(byte[] pBuf) { GameProto.PlayerRequestGameTest oTest = GameProto.PlayerRequestGameTest.Parser.ParseFrom(pBuf); if (oTest == null) { H5Helper.H5LogStr("OnTest error parse"); return; } H5Helper.H5LogStr(oTest.SzTest.ToString()); oTest.SzTest = String.Format("{0}, {1}, {2}, {3}, {4}, {5}", "sessionobject.cs", 106, "SessionObject::OnRecv", dw1++, ToString(), DateTime.Now.ToLocalTime().ToString()); byte[] pData = new byte[1024]; FxNet.NetStream pStream = new FxNet.NetStream(FxNet.NetStream.ENetStreamType.ENetStreamType_Write, pData, 1024); pStream.WriteString("GameProto.PlayerRequestGameTest"); byte[] pProto = new byte[oTest.CalculateSize()]; Google.Protobuf.CodedOutputStream oStream = new Google.Protobuf.CodedOutputStream(pProto); oTest.WriteTo(oStream); pStream.WriteData(pProto, (uint)pProto.Length); m_pSession.Send(pData, 1024 - pStream.GetLeftLen()); }
public void SetHeadImage(string szHeadImage) { m_szHeadImage = szHeadImage; StartCoroutine(H5Helper.SendGet(m_szHeadImage, delegate(Texture2D tex) { m_imageHead.texture = tex; }) ); }
public void RegistMessage(string szProtoName, MessageCallBack pfCallBack) { if (m_mapCallBack.ContainsKey(szProtoName)) { H5Helper.H5AlertString("already registed proto " + szProtoName); return; } m_mapCallBack[szProtoName] = pfCallBack; }
public void OnLoginAckPlayerInviteTeam(byte[] pBuf) { GameProto.LoginAckPlayerInviteTeam oRet = GameProto.LoginAckPlayerInviteTeam.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginAckPlayerInviteTeam error parse"); return; } H5Helper.H5LogStr("invite team ret : " + oRet.DwResult.ToString()); }
public void OnLoginNotifyPlayerGameKick(byte[] pBuf) { GameProto.LoginNotifyPlayerGameKick oRet = GameProto.LoginNotifyPlayerGameKick.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginNotifyPlayerGameKick error parse"); return; } H5Helper.H5LogStr("game kick ret : " + oRet.DwResult.ToString()); }
public void OnLoginAckPlayerMakeTeam(byte[] pBuf) { GameProto.LoginAckPlayerMakeTeam oRet = GameProto.LoginAckPlayerMakeTeam.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginAckPlayerMakeTeam error parse"); return; } H5Helper.H5LogStr("make team ret : " + oRet.DwResult.ToString() + " slot : " + oRet.DwSlotId.ToString() + " team_id : " + oRet.QwTeamId.ToString()); }
public void OnLoginAckPlayerLoginResult(byte[] pBuf) { GameProto.LoginAckPlayerLoginResult oRet = GameProto.LoginAckPlayerLoginResult.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnTest error parse"); return; } H5Helper.H5LogStr("login ret : " + oRet.DwResult.ToString()); }
public void OnLoginAckPlayerGameStart(byte[] pBuf) { GameProto.LoginAckPlayerGameStart oRet = GameProto.LoginAckPlayerGameStart.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginAckPlayerGameStart error parse"); return; } H5Helper.H5LogStr("game start : " + oRet.DwResult.ToString()); H5Manager.Instance().ConnectGame(oRet.SzListenIp, (ushort)oRet.DwPlayerPort); }
public void OnServerInfo(string szData) { H5Helper.H5LogStr(szData); ServerListInfo oServerList = JsonUtility.FromJson <ServerListInfo>(szData); if (oServerList.server_infos.Count == 0) { H5Helper.H5AlertString("can't find server list!!!!"); return; } ServerInfo oServerInfo = oServerList.server_infos[0]; LoginServerList pList = LoginServerList.CreateInstance(GameObjectConstent.g_szLoginServerList, m_pUiCanvas); pList.SetServerListInfo(oServerList); }
public void OnLoginNotifyPlayerInviteTeam(byte[] pBuf) { GameProto.LoginNotifyPlayerInviteTeam oRet = GameProto.LoginNotifyPlayerInviteTeam.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginAckPlayerOnLinePlayer error parse"); return; } H5Helper.H5LogStr("on invitee team player id : " + oRet.QwPlayerId.ToString() + " team id : " + oRet.QwTeamId.ToString()); GameObject go_RoleList = Instantiate(Resources.Load <GameObject>(GameObjectConstent.g_szControlPanel), transform.parent); go_RoleList.GetComponent <ControlPanel>().Init("player : " + oRet.QwPlayerId.ToString() + " invite you to team :" + oRet.QwTeamId.ToString(), IntoInviteTeam, oRet, null, null); }
public void OnLoginAckPlayerOnLinePlayer(byte[] pBuf) { GameProto.LoginAckPlayerOnLinePlayer oRet = GameProto.LoginAckPlayerOnLinePlayer.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginAckPlayerOnLinePlayer error parse"); return; } H5Helper.H5LogStr("online player ret : " + oRet.DwResult.ToString()); RoleList pRoleList = RoleList.CreateInstance(GameObjectConstent.g_szPlayerList, transform.parent); pRoleList.SetPlayerIds(oRet.QwPlayerId); //GameObject go_RoleList = Instantiate(Resources.Load<GameObject>(GameObjectConstent.g_szPlayerList), transform.parent); //go_RoleList.GetComponent<RoleList>().SetPlayerIds(oRet.QwPlayerId); }
public void OnLoginNotifyPlayerTeamInfo(byte[] pBuf) { GameProto.LoginNotifyPlayerTeamInfo oRet = GameProto.LoginNotifyPlayerTeamInfo.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginNotifyPlayerTeamInfo error parse"); return; } string szContent = "OnLoginNotifyPlayerTeamInfo team id : " + oRet.QwTeamId.ToString() + "\n"; for (int i = 0; i < oRet.TeamRoleData.Count; ++i) { szContent += "playerid : " + oRet.TeamRoleData[i].RoleData.QwPlayerId.ToString() + ", slot id : " + oRet.TeamRoleData[i].DwSlotId.ToString() + ", serverid : " + oRet.TeamRoleData[i].DwServerId.ToString() + "\n"; } H5Helper.H5LogStr(szContent); }
public void OnRoleData(string szData) { SampleDebuger.Log(szData); RoleDataRet oData = JsonUtility.FromJson <RoleDataRet>(szData); GameProto.PlayerRequestLogin oTest = new GameProto.PlayerRequestLogin(); oTest.SzToken = oData.token; oTest.QwPlayerId = oData.data.id; oTest.SzAvatar = oData.data.avatar; oTest.SzNickName = oData.data.nick_name; oTest.DwSex = oData.data.sex; oTest.DwBalance = oData.data.balance; StartCoroutine(H5Helper.SendGet(oData.data.avatar, delegate(Texture2D tex) { PlayerData.Instance().SetHeadTex(tex); }) ); PlayerData.Instance().SetPlayerId(oData.data.id); PlayerData.Instance().SetName(oData.data.nick_name); PlayerData.Instance().SetHeadImage(oData.data.avatar); PlayerData.Instance().SetSex(oData.data.sex); PlayerData.Instance().SetBalance(oData.data.balance); PlayerData.Instance().SetToken(oData.token); byte[] pData = new byte[2048]; FxNet.NetStream pStream = new FxNet.NetStream(FxNet.NetStream.ENetStreamType.ENetStreamType_Write, pData, 2048); pStream.WriteString("GameProto.PlayerRequestLogin"); byte[] pProto = new byte[oTest.CalculateSize()]; Google.Protobuf.CodedOutputStream oStream = new Google.Protobuf.CodedOutputStream(pProto); oTest.WriteTo(oStream); pStream.WriteData(pProto, (uint)pProto.Length); m_pSession.Send(pData, 2048 - pStream.GetLeftLen()); if (!string.IsNullOrEmpty(oData.game_ip)) { PlayerData.Instance().SetGameIp(oData.game_ip); PlayerData.Instance().SetGamePort((ushort)oData.game_port); } }
public void OnRecv(byte[] pBuf, uint dwLen) { NetStream pStream = new NetStream(pBuf, dwLen); string szProtoName = ""; pStream.ReadString(ref szProtoName); byte[] pProto = new byte[pStream.GetLeftLen()]; pStream.ReadData(ref pProto, pStream.GetLeftLen()); if (!m_mapCallBack.ContainsKey(szProtoName)) { H5Helper.H5LogStr("can't find proto name " + szProtoName); return; } m_mapCallBack[szProtoName](pProto); //foreach (var item in m_pfOnRecv) //{ // item(pBuf, dwLen); //} //m_pfOnRecv(pBuf, dwLen); }
public void IntoInviteTeam(object pParam) { GameProto.LoginNotifyPlayerInviteTeam oInvite = pParam as GameProto.LoginNotifyPlayerInviteTeam; if (oInvite == null) { H5Helper.H5AlertString("IntoInviteTeam parse error!!!!"); return; } GameProto.PlayerRequestLoginEnterTeam oRequest = new GameProto.PlayerRequestLoginEnterTeam(); oRequest.DwTeamServerId = oInvite.DwTeamServerId; oRequest.QwTeamId = oInvite.QwTeamId; byte[] pData = new byte[1024]; FxNet.NetStream pStream = new FxNet.NetStream(FxNet.NetStream.ENetStreamType.ENetStreamType_Write, pData, 1024); pStream.WriteString("GameProto.PlayerRequestLoginEnterTeam"); byte[] pProto = new byte[oRequest.CalculateSize()]; Google.Protobuf.CodedOutputStream oStream = new Google.Protobuf.CodedOutputStream(pProto); oRequest.WriteTo(oStream); pStream.WriteData(pProto, (uint)pProto.Length); m_pSession.Send(pData, 1024 - pStream.GetLeftLen()); }
public void OnLoginAckPlayerServerId(byte[] pBuf) { GameProto.LoginAckPlayerServerId oRet = GameProto.LoginAckPlayerServerId.Parser.ParseFrom(pBuf); if (oRet == null) { H5Helper.H5LogStr("OnLoginAckPlayerServerId error parse"); return; } string szUrl = GameInstance.Instance().proUrlHost + GameInstance.Instance().proGetRoleUri; WWWForm form = new WWWForm(); form.AddField("platform", GameInstance.Instance().proPlatform); form.AddField("name", GameInstance.Instance().proName); form.AddField("head_img", GameInstance.Instance().proHeadImage); form.AddField("sex", GameInstance.Instance().proSex.ToString()); form.AddField("access_token", GameInstance.Instance().proAccessToken); form.AddField("expires_date", GameInstance.Instance().proExpiresDate.ToString()); form.AddField("openid", GameInstance.Instance().proOpenId); form.AddField("server_id", oRet.DwServerId.ToString()); StartCoroutine(H5Helper.SendPost(szUrl, form, OnRoleData)); }
public void PrepareInit(GameProto.RoleData oData) { if (oData == null) { m_qwPlayerId = 0; m_textName.gameObject.SetActive(false); m_buttonInvite.gameObject.SetActive(false); m_buttonKick.gameObject.SetActive(false); m_imgHead.gameObject.SetActive(false); } else { m_imgHead.gameObject.SetActive(true); m_buttonKick.gameObject.SetActive(false); m_qwPlayerId = oData.QwPlayerId; m_textName.text = oData.SzNickName; m_buttonInvite.gameObject.SetActive(false); StartCoroutine(H5Helper.SendGet(oData.SzAvatar, delegate(Texture2D tex) { m_imgHead.texture = tex; }) ); } }
public override void OnClose() { H5Helper.H5LogStr("OnClose"); m_oGameObject.OnClose(); }
// Use this for initialization void Start() { #if UNITY_WEBGL && !UNITY_EDITOR Init(H5Helper.H5GetUrl()); #endif }
public void GetServerInfo() { StartCoroutine(H5Helper.SendGet(m_szServerUrl + m_szServerInfoUri, OnServerInfo)); }
public bool OnSessionDestroy() { H5Helper.H5AlertString("session obj has destroy!!!!"); Destroy(this); return(false); }
public void OnClose() { H5Helper.H5AlertString("session close"); }
public override void OnError(uint dwErrorNo) { H5Helper.H5AlertString(m_pSocket.GetError()); m_oGameObject.OnError(dwErrorNo); }
public void OnError(uint dwErrorNo) { H5Helper.H5AlertString("session error " + dwErrorNo.ToString()); }
public override void OnConnect() { H5Helper.H5LogStr("OnConnect"); m_oGameObject.OnConnect(); }