void TeamMemberLeaveHandle(INotifyArgs e) { SMsgTeamMemberLeave_SC teamMemberLeave = (SMsgTeamMemberLeave_SC)e; var playerData = PlayerManager.Instance.FindHeroDataModel(); if (teamMemberLeave.dwActorID == playerData.ActorID) { ShowWorldTeamInfo(); if (isKick) { //MessageBox.Instance.Show(4, "", LanguageTextManager.GetString("IDS_H1_162"), LanguageTextManager.GetString("IDS_H2_55")); MessageBox.Instance.ShowTips(4, LanguageTextManager.GetString("IDS_H1_162"), 1f); //刷新队伍 TeamOrganizePanel.OnRefreshWorldTeamInfoClick(0); } } else { //先删除之前的队员model TeamRoomPanel.DeleteHeroModels(); var teamData = TeamManager.Instance.MyTeamProp; TeamRoomPanel.UpdateTeammateInfo(new SMsgTeamNum_SC() { SMsgTeamProps = new SMsgTeamProp_SC[1] { teamData } }); } }
//队员踢出 CommandCallbackType ReceiveMemberKickHandle(byte[] dataBuffer, int socketId) { SMsgTeamMemberLeave_SC sTeamMemberLeave = SMsgTeamMemberLeave_SC.ParsePackage(dataBuffer); if (GameManager.Instance.CurrentState == GameManager.GameState.GAME_STATE_TOWN) { var memberProp = TeamManager.Instance.MyTeamProp.TeamMemberNum_SC.SMsgTeamPropMembers.SingleOrDefault(p => p.TeamMemberContext.dwActorID == sTeamMemberLeave.dwActorID); MessageBox.Instance.ShowTips(4, string.Format(LanguageTextManager.GetString("IDS_I13_30"), memberProp.TeamMemberContext.szName), 1f); } //更新队伍信息 TeamManager.Instance.RemoveMember(sTeamMemberLeave.dwActorID); //TraceUtil.Log("踢出: dwActorID = " + sTeamMemberLeave.dwActorID + " dwTeamID = " + sTeamMemberLeave.dwTeamID); RaiseEvent(EventTypeEnum.TeamMemberBeKick.ToString(), sTeamMemberLeave); return(CommandCallbackType.Continue); }
//队员离开 CommandCallbackType ReceiveTeamMemberLeaveHandle(byte[] dataBuffer, int socketId) { SMsgTeamMemberLeave_SC sTeamMemberLeave = SMsgTeamMemberLeave_SC.ParsePackage(dataBuffer); //TraceUtil.Log("离开: dwActorID = " + sTeamMemberLeave.dwActorID + " dwTeamID = " + sTeamMemberLeave.dwTeamID); //更新队伍信息 if (GameManager.Instance.CurrentState == GameManager.GameState.GAME_STATE_TOWN) { if (PlayerManager.Instance.FindHeroDataModel().ActorID != sTeamMemberLeave.dwActorID) { var memberProp = TeamManager.Instance.MyTeamProp.TeamMemberNum_SC.SMsgTeamPropMembers.SingleOrDefault(p => p.TeamMemberContext.dwActorID == sTeamMemberLeave.dwActorID); MessageBox.Instance.ShowTips(4, string.Format(LanguageTextManager.GetString("IDS_I13_42"), memberProp.TeamMemberContext.szName), 1f); } } TeamManager.Instance.RemoveMember(sTeamMemberLeave.dwActorID); //Edit by lee 更新战斗ui UIEventManager.Instance.TriggerUIEvent(UIEventType.TeamMemberLeave, null); RaiseEvent(EventTypeEnum.TeamMemberLeave.ToString(), sTeamMemberLeave); TeamManager.Instance.DoWaitExitTeamAction(); return(CommandCallbackType.Continue); }
//离开队伍 public void SendTeamMemberLeaveMsg(SMsgTeamMemberLeave_SC sMsgTeamMemberLeave) { Package pkg = sMsgTeamMemberLeave.GeneratePackage(); this.Request(pkg); }