void OnDelGetableMission(UIMissionMgr.GetableMisView getableView) { if (getableView == null) { return; } //Remove MissionLabel List <PeMap.ILabel> RemoveList = PeMap.LabelMgr.Instance.FindAll(itr => RemoveGetableLabel(getableView.mMissionID, itr)); foreach (PeMap.ILabel _ilabel in RemoveList) { PeMap.LabelMgr.Instance.Remove(_ilabel); } RemoveList.Clear(); }
void OnAddGetableMission(UIMissionMgr.GetableMisView getableView) { if (getableView == null) { return; } if (getableView.mPosition != Vector3.zero) { // Add MisEnd Label MissionLabel label = new MissionLabel(getableView.mMissionID, MissionLabelType.misLb_unActive, getableView.mPosition, getableView.mMissionTitle, -1f, false, getableView.mAttachOnId); PeMap.LabelMgr.Instance.Add(label); } }
public void AddMission(Pathea.PeEntity npc) { if (!Pathea.PeGameMgr.IsMulti) { return; } NpcMissionData missionData = Pathea.PeEntityExt.PeEntityExt.GetUserData(npc) as NpcMissionData; if (missionData == null) { return; } MissionCommonData mcd; if (npc.proto == Pathea.EEntityProto.Npc) { foreach (var item in missionData.m_MissionList) { if (!m_GetableMissonMap.ContainsKey(item)) { continue; } ; mcd = MissionManager.GetMissionCommonData(item); if (mcd == null) { continue; } UIMissionMgr.GetableMisView gmv = new UIMissionMgr.GetableMisView(item, mcd.m_MissionName, npc.position, npc.Id); gmv.TargetNpcInfo.mName = npc.enityInfoCmpt.characterName.fullName; gmv.TargetNpcInfo.mNpcIcoStr = string.IsNullOrEmpty(npc.enityInfoCmpt.faceIconBig) ? "npc_big_Unknown" : npc.enityInfoCmpt.faceIconBig; UIMissionMgr.Instance.AddGetableMission(gmv, true); } foreach (var item in missionData.m_MissionListReply) { if (!m_MissonMap.ContainsKey(item)) { continue; } mcd = MissionManager.GetMissionCommonData(item); if (mcd == null) { continue; } Dictionary <string, string> missionFlagType = MissionManager.Instance.m_PlayerMission.GetMissionFlagType(item); if (missionFlagType == null) { continue; } UIMissionMgr.MissionView mv = new UIMissionMgr.MissionView(); mv.mMissionID = mcd.m_ID; mv.mMissionType = mcd.m_Type; mv.mMissionTitle = mcd.m_MissionName; npc = Pathea.EntityMgr.Instance.Get(mcd.m_iNpc); if (npc != null) { mv.mMissionStartNpc.mName = npc.enityInfoCmpt.characterName.fullName; mv.mMissionStartNpc.mNpcIcoStr = string.IsNullOrEmpty(npc.enityInfoCmpt.faceIconBig) ? "npc_big_Unknown" : npc.enityInfoCmpt.faceIconBig; } npc = Pathea.EntityMgr.Instance.Get(mcd.m_iReplyNpc); if (npc != null) { mv.mMissionEndNpc.mName = npc.enityInfoCmpt.characterName.fullName; mv.mMissionEndNpc.mNpcIcoStr = string.IsNullOrEmpty(npc.enityInfoCmpt.faceIconBig) ? "npc_big_Unknown" : npc.enityInfoCmpt.faceIconBig; mv.mEndMisPos = npc.position; mv.mAttachOnId = npc.Id; mv.NeedArrow = true; } MissionManager.Instance.ParseMissionFlag(mcd, missionFlagType, mv); UIMissionMgr.Instance.AddMission(mv, true); UIMissionMgr.Instance.RefalshMissionWnd(); } } else if (npc.proto == Pathea.EEntityProto.RandomNpc && Pathea.PeGameMgr.IsStory) { if (missionData.m_RandomMission != 0) { mcd = MissionManager.GetMissionCommonData(missionData.m_RandomMission); if (mcd != null) { if (m_GetableMissonMap.ContainsKey(missionData.m_RandomMission)) { UIMissionMgr.GetableMisView gmv = new UIMissionMgr.GetableMisView(missionData.m_RandomMission, mcd.m_MissionName, npc.position, npc.Id); gmv.TargetNpcInfo.mName = npc.enityInfoCmpt.characterName.fullName; gmv.TargetNpcInfo.mNpcIcoStr = string.IsNullOrEmpty(npc.enityInfoCmpt.faceIconBig) ? "npc_big_Unknown" : npc.enityInfoCmpt.faceIconBig; UIMissionMgr.Instance.AddGetableMission(gmv, true); } if (m_MissonMap.ContainsKey(missionData.m_RandomMission)) { Dictionary <string, string> missionFlagType = MissionManager.Instance.m_PlayerMission.GetMissionFlagType(missionData.m_RandomMission); if (missionFlagType != null) { UIMissionMgr.MissionView mv = new UIMissionMgr.MissionView(); mv.mMissionID = mcd.m_ID; mv.mMissionType = mcd.m_Type; mv.mMissionTitle = mcd.m_MissionName; npc = Pathea.EntityMgr.Instance.Get(mcd.m_iNpc); if (npc != null) { mv.mMissionStartNpc.mName = npc.enityInfoCmpt.characterName.fullName; mv.mMissionStartNpc.mNpcIcoStr = string.IsNullOrEmpty(npc.enityInfoCmpt.faceIconBig) ? "npc_big_Unknown" : npc.enityInfoCmpt.faceIconBig; } npc = Pathea.EntityMgr.Instance.Get(mcd.m_iReplyNpc); if (npc != null) { mv.mMissionEndNpc.mName = npc.enityInfoCmpt.characterName.fullName; mv.mMissionEndNpc.mNpcIcoStr = string.IsNullOrEmpty(npc.enityInfoCmpt.faceIconBig) ? "npc_big_Unknown" : npc.enityInfoCmpt.faceIconBig; mv.mEndMisPos = npc.position; mv.mAttachOnId = npc.Id; mv.NeedArrow = true; } MissionManager.Instance.ParseMissionFlag(mcd, missionFlagType, mv); UIMissionMgr.Instance.AddMission(mv, true); UIMissionMgr.Instance.RefalshMissionWnd(); } } } } } }