public override void recvFrameStep(BroadcastEvent eve) { base.recvFrameStep(eve); RecvFrameBst bst = ((RecvFrameBst)eve.Data); // if (bst.Frame.Items.Count != 0) // Debug.Log("----收到帧消息:" + bst.Frame.Id + "\r\n"); foreach (FrameItem fi in bst.Frame.Items) { XXFrameData xfd = XXFrameData.init(fi.Data); int kk = xfd.intData; // Debug.LogError("ssss:"+kk+":"+UserManager.instance.UType); if ((UserType)xfd.intData != UserManager.instance.UType) { // Debug.Log(xfd.strData); JsonData jsonData = JsonMapper.ToObject(xfd.strData); if (((IDictionary)jsonData).Contains("mark")) { string canvasId = jsonData["mark"].ToString(); //选择不同的画布 if (paintClients.ContainsKey(canvasId)) { if (((IDictionary)jsonData).Contains("ctrl-data")) { // Debug.LogError("Contain ID:" + canvasId + "DDD:" + jsonData["ctrl-data"].ToJson()); UserDefEventHandler handler = paintClients[canvasId]; if (handler == null || handler.painterClientController == null) { Debug.LogError("Some NUll"); } if (handler.painterClientController.painterCanvas.isInited) { paintClients[canvasId].painterClientController.UpdatePara(jsonData["ctrl-data"]); } } } } } // Debug.Log(fi.PlayerId + "|" + fi.Data + "\r\n"); } }
public override void recvFrameStep(BroadcastEvent eve) { base.recvFrameStep(eve); RecvFrameBst bst = ((RecvFrameBst)eve.Data); // if (bst.Frame.Items.Count != 0) // Debug.Log("----收到帧消息:" + bst.Frame.Id + "\r\n"); try { foreach (FrameItem fi in bst.Frame.Items) { XXFrameData xfd = XXFrameData.init(fi.Data); // Debug.LogError("strData:" +xfd.strData); if ((UserType)xfd.intData != UserManager.instance.UType) { JsonData jsonData = JsonMapper.ToObject(xfd.strData); if (((IDictionary)jsonData).Contains("expert")) { bool temp = false; temp = bool.Parse(jsonData["expert"].ToString()); videoController.SetStaffVideoType(temp); } if (((IDictionary)jsonData).Contains("mark")) { actPanelName = new List <string>(); for (int j = 0; j < jsonData["mark"].Count; j++) { string temp = jsonData["mark"][j].ToString(); actPanelName.Add(temp); // Debug.LogError("mark:" + temp + " paintCanvasDic:" + paintCanvasDic.Count); bool find = false; for (int i = 0; i < paintContainer.Length; i++) { if (paintContainer[i].tarName == temp) { find = true; break; } } if (!find) { for (int i = 0; i < paintContainer.Length; i++) { if (paintContainer[i].tarName == "") { paintContainer[i].tarName = temp; break; } } } } for (int i = 0; i < paintContainer.Length; i++) { bool find = false; for (int k = 0; k < actPanelName.Count; k++) { if (paintContainer[i].tarName == actPanelName[k]) { find = true; break; } } if (!find) { paintContainer[i].tarName = ""; } } } } // Debug.Log(fi.PlayerId + "|" + fi.Data + "\r\n"); } } catch (Exception e) { if (ToastManager.instance) { ToastManager.instance.AddToast(ToastType.Error, e.Message); } Debug.LogError(e.Message); } }