/// <summary> /// 激活匹配点 /// </summary> /// <param name="pickedUp"></param> public static void TryActiveLinkPorts(LinkItem pickedUp) { var linkItems = GameObject.FindObjectsOfType <LinkItem>(); var linkPorts = new List <PreviewSet>(); for (int i = 0; i < pickedUp.ChildNodes.Count; i++) { var node = pickedUp.ChildNodes[i]; if (node.ConnectedNode == null && node.connectAble.Count > 0) { for (int j = 0; j < node.connectAble.Count; j++) { var info = node.connectAble[j]; var otheritems = (from x in linkItems where (x != null && x != pickedUp && x.Name == info.itemName) where !HaveConnected(pickedUp, x) select x); Debug.Assert(otheritems != null && otheritems.Count() > 0); foreach (var otheritem in otheritems) { if (otheritem != null) { var otherNode = otheritem.ChildNodes[info.nodeId]; if (otherNode != null && otherNode.ConnectedNode == null) { if (log) { Debug.Log("在" + otheritem + "的" + info.nodeId + "端口上显示出 + " + pickedUp); } var set = new PreviewSet(); LinkUtil.GetWorldPosFromTarget(otheritem, info.relativePos, info.relativeDir, out set.position, out set.eulerAngle); linkPorts.Add(set); } } } } } } if (linkPorts.Count > 0) { previewCtrl.Notice(pickedUp.Body, linkPorts.ToArray()); } }
public void ActivatePreviewCookie() { // zb-00004 #29956 : refactor cookies names & handling StateHelper.Cookies.Preview.SetValue(PreviewSet.ToString()); }