void MissionNodeOnDelete(object sender) { UIMissionNode node = sender as UIMissionNode; if (node == null) { return; } delView = node.mData as UIMissionMgr.MissionView; if (delView == null) { return; } MissionCommonData data = MissionManager.GetMissionCommonData(delView.mMissionID); if (data == null) { return; } //else // MissionManager.Instance.m_PlayerMission.FailureMission(delView.mMissionID); if (!data.m_bGiveUp) { new PeTipMsg(PELocalization.GetString(8000174), PeTipMsg.EMsgLevel.Warning); return; } MessageBox_N.ShowYNBox(PELocalization.GetString(8000066), DeleteMissionOk); }
public UIMissionNode AddMissionNode(UIMissionNode parentNode, string text, bool enableCkTag = true, bool enableBtnDel = true, bool canSelected = true) { GameObject o = GameObject.Instantiate(mNodePrefab) as GameObject; UIMissionNode node = o.GetComponent <UIMissionNode>(); if (parentNode == null) { node.transform.parent = mContentTable.gameObject.transform; node.mTablePartent = mContentTable; } else { node.transform.parent = parentNode.mTable.gameObject.transform; node.mTablePartent = parentNode.mTable; } node.gameObject.transform.localScale = Vector3.one; node.mLbTitle.text = text; node.enableCkTag = enableCkTag; node.enableBtnDelete = enableBtnDel; node.e_OnClick += OnChangeSelectedNode; node.gameObject.SetActive(true); node.mCanSelected = canSelected; node.mParent = parentNode; node.transform.localPosition = new Vector3(0, -(FindChildNodeCount(parentNode) * UITreeHight), 0); if (parentNode) { parentNode.mChilds.Add(node); } mNodes.Add(node); return(node); }
void UpdateNodeText(UIMissionNode node) { if (node.mData == null) { return; } if (node.mParent == null) { if (node.mData is UIMissionMgr.MissionView) { UIMissionMgr.MissionView view = node.mData as UIMissionMgr.MissionView; string colorFormat = view.mMissionType == MissionType.MissionType_Main ? mainMissionColor : sideMissionColor; string text = view.mComplete ? string.Format(complateTitleFormat, view.mMissionTitle, PELocalization.GetString(8000694)) : view.mMissionTitle; node.mLbTitle.text = string.Format(colorFormat, text); } } else { if (node.mData is List <UIMissionMgr.TargetShow> ) { List <UIMissionMgr.TargetShow> showList = node.mData as List <UIMissionMgr.TargetShow>; string text = string.Empty; foreach (UIMissionMgr.TargetShow target in showList) { string countStr = string.Empty; if (target.mMaxCount > 0) { countStr = string.Format(countFormat, target.mCount, target.mMaxCount); } text += string.Format(target.mComplete ? complateMissionColor : uncompletedMissionColor, target.mContent, countStr); } node.mLbTitle.text = text; } } }
bool AddTrackData(ItemTrackData data) { UIMissionNode rootNode = itemsTree.AddMissionNode(null, "", false, true, false); rootNode.mLbTitle.maxLineCount = 1; rootNode.e_BtnDelete += DeleteNode; UIMissionNode tragetNode = itemsTree.AddMissionNode(rootNode, "", false, false, false); tragetNode.mLbTitle.maxLineCount = 0; _nodeDataDic.Add(rootNode, data); UpdateNodeText(rootNode); rootNode.ChangeExpand(); if (!GameUI.Instance.mItemsTrackWnd.isShow) { GameUI.Instance.mItemsTrackWnd.Show(); } if (data != null && data.type == TrackType.Script) { if (ScriptTrackChanged != null) { ScriptTrackChanged(data.scriptID, true); } } return(true); }
void OnDelMissionView(UIMissionMgr.MissionView view) { UIMissionNode node = FindMissionNode(view); if (node != null) { mMissionTree.DeleteMissionNode(node); } }
void UpdateNodeText(UIMissionNode node) { if (node == null) { return; } if (!_nodeDataDic.ContainsKey(node)) { return; } ItemTrackData data = _nodeDataDic[node]; if (data == null) { return; } UIMissionNode childNode = null; if (node.mChilds.Count > 0) { childNode = node.mChilds[0]; } bool complate = true; if (playerPackage != null) { string text = string.Empty; foreach (var kv in data.costDic) { string costName = ItemProto.GetName(kv.Key); int curCount = playerPackage.GetCount(kv.Key); string countStr = string.Empty; countStr = string.Format(countFormat, curCount, kv.Value); bool costComplate = curCount >= kv.Value; text += string.Format(costComplate ? complateCountColor : uncompletedCountColor, costName, countStr); if (!costComplate) { complate = false; } } if (childNode) { childNode.mLbTitle.text = text; } } string titleText = data.itemName; if (complate) { titleText = string.Format(complateTitleColor, string.Format(complateTitleFormat, data.itemName, data.itemCount, PELocalization.GetString(8000694))); } node.mLbTitle.text = titleText; }
void ReflashMissionWnd() { if (mMainStroyTree == null || mSideQuestTree == null) { return; } UIMissionNode node = mMainStroyTree.gameObject.activeSelf ? mMainStroyTree.mSelectedNode : mSideQuestTree.mSelectedNode; SelectMissionNode(node); }
void MissionNodeOnSelectChange(object sender) { UIMissionNode node = sender as UIMissionNode; if (node == null) { return; } SelectMissionNode(node); }
void SelectMissionNode(UIMissionNode node) { if (node == null) { ClearMissionContent(); } else { ReFlashMissionContent(node); } }
public List <UIMissionNode> GetChildNode(UIMissionNode parentNode) { List <UIMissionNode> childs = new List <UIMissionNode>(); for (int i = 0; i < mNodes.Count; i++) { if (parentNode == mNodes[i].mParent) { childs.Add(mNodes[i]); } } return(childs); }
int FindChildNodeCount(UIMissionNode parentNode) { int count = 0; for (int i = 0; i < mNodes.Count; i++) { if (mNodes[i].mParent == parentNode) { count++; } } return(count); }
void ReFlashMissionContent(UIMissionNode node) { if (mTargetScroll != null) { mTargetScroll.scrollValue = 0; } ClearMissionContent(); UIMissionMgr.MissionView view = node.mData as UIMissionMgr.MissionView; if (view == null) { return; } mDesLabel.text = view.mMissionDesc; int missionId = view.mMissionID; MissionCommonData mcd = MissionManager.GetMissionCommonData(missionId); if (mcd != null) { if (mcd.addSpValue > 0) { mSPLabel.text = "SP" + " " + "+" + " " + "[ffff00]" + mcd.addSpValue + "[-]"; } } SetGiver(view.mMissionStartNpc.mNpcIcoStr, view.mMissionStartNpc.mName); SetSubmit(view.mMissionReplyNpc.mNpcIcoStr, view.mMissionReplyNpc.mName); for (int i = 0; i < view.mTargetList.Count; i++) { AddTarget(view.mTargetList[i]); } mTargetGrid.Reposition(); //if (mTargetScroll != null) // mTargetScroll.scrollValue = 0; for (int i = 0; i < view.mRewardsList.Count; i++) { AddRewards(view.mRewardsList[i]); } mRewardsGrid.Reposition(); if (mRewardsScroll != null) { mRewardsScroll.scrollValue = 0; } }
void MissionNodeOnCheckTag(object sender, bool isChecked) { UIMissionNode node = sender as UIMissionNode; if (node == null) { return; } UIMissionMgr.MissionView view = node.mData as UIMissionMgr.MissionView; if (view == null) { return; } view.mMissionTag = isChecked; UIMissionMgr.Instance.CheckMissionTag(view); }
void DeleteMission(UIMissionMgr.MissionView misView) { UIMissionNode node = null; if (misView.mMissionType == MissionType.MissionType_Main || misView.mMissionType == MissionType.MissionType_Time) { node = mMainStroyTree.mNodes.Find( delegate(UIMissionNode nd) { UIMissionMgr.MissionView mv = nd.mData as UIMissionMgr.MissionView; return(mv == misView); }); mMainStroyTree.DeleteMissionNode(node); if (mMainStroyTree.mNodes.Count == 0) { node = null; } else { node = mMainStroyTree.mNodes[0]; } } else if (misView.mMissionType == MissionType.MissionType_Sub) { node = mSideQuestTree.mNodes.Find( delegate(UIMissionNode nd) { UIMissionMgr.MissionView mv = nd.mData as UIMissionMgr.MissionView; return(mv == misView); }); mSideQuestTree.DeleteMissionNode(node); if (mSideQuestTree.mNodes.Count == 0) { node = null; } else { node = mSideQuestTree.mNodes[0]; } } SelectMissionNode(node); }
//lz-2016.08.17 这个接口提供外部通过UIMissionMgr.MissionView来选中任务节点 public void SelectMissionNodeByData(object data) { if (null == data) { return; } if (data is UIMissionMgr.MissionView) { UIMissionMgr.MissionView misView = (UIMissionMgr.MissionView)data; if (misView.mMissionType == MissionType.MissionType_Main || misView.mMissionType == MissionType.MissionType_Time) { mCkMainStory.isChecked = true; mCkSideQuest.isChecked = false; BtnMainStroy(); UIMissionNode findNode = mMainStroyTree.mNodes.Find(a => (a.mParent == null && a.mData != null && a.mData is UIMissionMgr.MissionView && ((UIMissionMgr.MissionView)a.mData).mMissionID == misView.mMissionID)); if (null != findNode) { if (null != mMainStroyTree.mSelectedNode) { mMainStroyTree.mSelectedNode.Selected = false; } mMainStroyTree.mSelectedNode = findNode; findNode.Selected = true; ReFlashMissionContent(findNode); } } else if (misView.mMissionType == MissionType.MissionType_Sub) { mCkMainStory.isChecked = false; mCkSideQuest.isChecked = true; BtnSideQuest(); UIMissionNode findNode = mSideQuestTree.mNodes.Find(a => (a.mParent == null && a.mData != null && a.mData is UIMissionMgr.MissionView && ((UIMissionMgr.MissionView)a.mData).mMissionID == misView.mMissionID)); if (null != findNode) { if (null != mSideQuestTree.mSelectedNode) { mSideQuestTree.mSelectedNode.Selected = false; } mSideQuestTree.mSelectedNode = findNode; findNode.Selected = true; ReFlashMissionContent(findNode); } } } }
void ResetSelectBg(UIMissionNode node) { if (node.mParent == null) { return; } UIMissionNode parent = node.mParent; int deepth = 0; while (parent != null) { deepth++; parent = parent.mParent; } Vector3 scale = node.mSpSelected.transform.localScale; node.mSpSelected.transform.localScale = new Vector3(scale.x - 30, scale.y, scale.z); }
void OnAddMissionView(UIMissionMgr.MissionView view) { if (view.mMissionTag && !ContainsMissionView(view)) { UIMissionNode rootNode = mMissionTree.AddMissionNode(null, "", false, false, false); rootNode.mData = view; rootNode.mLbTitle.maxLineCount = 1; UIMissionNode tragetNode = mMissionTree.AddMissionNode(rootNode, "", false, false, false); tragetNode.mData = view.mTargetList; tragetNode.mLbTitle.maxLineCount = 0; UpdateNodeText(rootNode); UpdateNodeText(tragetNode); Sort(); rootNode.ChangeExpand(); } }
void OnChangeSelectedNode(object sender) { UIMissionNode node = sender as UIMissionNode; if (node == null || node == mSelectedNode) { return; } if (mSelectedNode != null) { mSelectedNode.Selected = false; } node.Selected = true; mSelectedNode = node; if (e_ChangeSelectedNode != null) { e_ChangeSelectedNode(mSelectedNode); } }
void AddMission(UIMissionMgr.MissionView misView) { UIMissionNode node = null; if (misView.mMissionType == MissionType.MissionType_Main || misView.mMissionType == MissionType.MissionType_Time) { node = mMainStroyTree.AddMissionNode(null, misView.mMissionTitle); } else if (misView.mMissionType == MissionType.MissionType_Sub) { node = mSideQuestTree.AddMissionNode(null, misView.mMissionTitle); } node.mCheckBoxTag.isChecked = misView.mMissionTag; node.mData = misView; node.e_BtnDelete += MissionNodeOnDelete; node.e_CheckedTg += MissionNodeOnCheckTag; SelectMissionNode(node); }
public void DeleteMissionNode(UIMissionNode node) { if (node == null) { return; } for (int i = mNodes.Count - 1; i >= 0; i--) { if (i < mNodes.Count) { if (mNodes[i].mParent == node) { mNodes.Remove(mNodes[i]); } } } mNodes.Remove(node); GameObject.Destroy(node.gameObject); node.gameObject.transform.parent = null; node = null; RepositionContent(); }
void DeleteNode(object obj) { UIMissionNode node = obj as UIMissionNode; if (node) { ItemTrackData data = null; if (_nodeDataDic.ContainsKey(node)) { data = _nodeDataDic[node]; _nodeDataDic.Remove(node); } itemsTree.DeleteMissionNode(node); if (data != null && data.type == TrackType.Script) { if (ScriptTrackChanged != null) { ScriptTrackChanged(data.scriptID, false); } } } }