void onAffirmInvite(GameEvent e) { Variant data = e.data; if (data == null) { return; } if (data.ContainsKey("cid")) { uint cid = data["cid"]; List <ItemTeamData> itdList = TeamProxy.getInstance().MyTeamData.itemTeamDataList; for (int i = 0; i < itdList.Count; i++) { if (!m_ItemCurrentTeamInfoDic.ContainsKey(cid) && cid != PlayerModel.getInstance().cid) { ItemCurrentTeamInfo icti = new ItemCurrentTeamInfo(itemCurrentInfoPrefab); m_ItemCurrentTeamInfoDic.Add(cid, icti); } } } if (TeamProxy.getInstance().MyTeamData.itemTeamDataList.Count < 5) { getGameObjectByPath("contant/friend").SetActive(true); } else { getGameObjectByPath("contant/friend").SetActive(false); } getTransformByPath("contant/friend").SetAsLastSibling(); }
void onNewMemberJoin(GameEvent e) { Variant data = e.data; uint cid = data["cid"]; string name = data["name"]; uint carr = data["carr"]; if (!m_ItemCurrentTeamInfoDic.ContainsKey(cid)) { ItemCurrentTeamInfo icti = new ItemCurrentTeamInfo(itemCurrentInfoPrefab); icti.SetTxtName(name); icti.sethead(carr); m_ItemCurrentTeamInfoDic.Add(cid, icti); } else { m_ItemCurrentTeamInfoDic[cid].sethead(carr); m_ItemCurrentTeamInfoDic[cid].SetTxtName(name); } if (TeamProxy.getInstance().MyTeamData.itemTeamDataList.Count < 5) { getGameObjectByPath("contant/friend").SetActive(true); } else { getGameObjectByPath("contant/friend").SetActive(false); } getTransformByPath("contant/friend").SetAsLastSibling(); }
void onSyncTeamBlood(GameEvent e) { Variant data = e.data; List <Variant> infos = data["infos"]._arr; for (int i = 0; i < infos.Count; i++) { uint cid = infos[i]["cid"]; if (!TeamProxy.getInstance().MyTeamData.IsInMyTeam(cid)) { continue; } uint maxHp = infos[i]["max_hp"]; uint hp = infos[i]["hp"]; ItemTeamData itd = new ItemTeamData(); itd.cid = cid; itd.hp = hp; itd.maxHp = maxHp; for (int j = 0; j < TeamProxy.getInstance().MyTeamData.itemTeamDataList.Count; j++) { if (cid == TeamProxy.getInstance().MyTeamData.itemTeamDataList[j].cid) { itd.carr = TeamProxy.getInstance().MyTeamData.itemTeamDataList[j].carr; itd.isCaptain = TeamProxy.getInstance().MyTeamData.itemTeamDataList[j].isCaptain; itd.online = TeamProxy.getInstance().MyTeamData.itemTeamDataList[j].online; break; } } if (m_ItemCurrentTeamInfoDic.ContainsKey(cid)) { m_ItemCurrentTeamInfoDic[cid].SetInfo(itd); } else { ItemCurrentTeamInfo icti = new ItemCurrentTeamInfo(itemCurrentInfoPrefab); icti.SetInfo(itd); m_ItemCurrentTeamInfoDic.Add(cid, icti); } } }
override public void onShowed() { TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_SYNCTEAMBLOOD, onSyncTeamBlood); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_LEAVETEAM, onLeaveTeam); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_DISSOLVETEAM, onDissolveTeam); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_NOTICEHAVEMEMBERLEAVE, onNoticeHaveMemberLeave); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_AFFIRMINVITE, onAffirmInvite); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_KICKOUT, onNoticeHaveMemberLeave); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_NEWMEMBERJOIN, onNewMemberJoin); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_CHANGETEAMINFO, onChangeTeamInfo); TeamProxy.getInstance().addEventListener(TeamProxy.EVENT_NOTICEONLINESTATECHANGE, onNoticeOnlineStateChange); if (uiData != null) { Transform parent = (Transform)uiData[0]; this.transform.SetParent(parent, false); this.transform.localScale = Vector3.one; this.transform.localPosition = Vector3.one; InvokeRepeating("SendSyncTeamBlood", 0.0f, 3f);//TODO:暂定1秒 if (TeamProxy.getInstance().MyTeamData != null) { for (int i = 0; i < TeamProxy.getInstance().MyTeamData.itemTeamDataList.Count; i++) { uint cid = TeamProxy.getInstance().MyTeamData.itemTeamDataList[i].cid; if (cid == PlayerModel.getInstance().cid) { continue; } if (m_ItemCurrentTeamInfoDic != null && !m_ItemCurrentTeamInfoDic.ContainsKey(cid)) { ItemCurrentTeamInfo icti = new ItemCurrentTeamInfo(itemCurrentInfoPrefab); string name = TeamProxy.getInstance().MyTeamData.itemTeamDataList[i].name; icti.SetTxtName(name); m_ItemCurrentTeamInfoDic.Add(cid, icti); } } if (TeamProxy.getInstance().MyTeamData.itemTeamDataList.Count < 5) { if (TeamProxy.getInstance().MyTeamData.meIsCaptain) { getGameObjectByPath("contant/friend").SetActive(true); getTransformByPath("contant/friend").SetAsLastSibling();//放到最后 } else { if (TeamProxy.getInstance().MyTeamData.membInv) { getGameObjectByPath("contant/friend").SetActive(true); getTransformByPath("contant/friend").SetAsLastSibling();//放到最后 } else { getGameObjectByPath("contant/friend").SetActive(false); } } } else { getGameObjectByPath("contant/friend").SetActive(false); } } } }