示例#1
0
 private void OnNavigationNodeLinkRemoved(NavigationNodeEditorComponentLink p_NavigationNodeEditorComponentLink)
 {
     for (int i = 0; i < m_navigationGraphEditorReference.NavigationGraphAsset.NavigationLinks.Count; i++)
     {
         SerializedNavigationLink l_serializedNavigationLink = m_navigationGraphEditorReference.NavigationGraphAsset.NavigationLinks[i];
         if (l_serializedNavigationLink.StartNode == m_serializedNavigationNodeId && l_serializedNavigationLink.EndNode == p_NavigationNodeEditorComponentLink.TargetNodeID)
         {
             m_navigationGraphEditorReference.NavigationGraphAsset.NavigationLinks.RemoveAt(i);
             EditorUtility.SetDirty(m_navigationGraphEditorReference.NavigationGraphAsset);
             RefreshLinks();
             break;
         }
     }
 }
示例#2
0
 private void RefreshLinks()
 {
     if (m_lastFrameSelection.Get())
     {
         NavigationNodeEditorComponentLinks.NavigationNodeEditorComponentLink.Clear();
         for (int i = 0; i < m_navigationGraphEditorReference.NavigationGraphAsset.NavigationLinks.Count; i++)
         {
             SerializedNavigationLink l_serializedNavigationLink = m_navigationGraphEditorReference.NavigationGraphAsset.NavigationLinks[i];
             if (l_serializedNavigationLink.StartNode == m_serializedNavigationNodeId)
             {
                 NavigationNodeEditorComponentLinks.NavigationNodeEditorComponentLink.Add(NavigationNodeEditorComponentLink.New(l_serializedNavigationLink.EndNode, OnNavigationNodeLinkRemoved));
             }
         }
     }
 }