Skip to content
This repository was archived by the owner on Oct 31, 2023. It is now read-only.

Commit 028babc

Browse files
committed
Restoring some for loops and adding one foreach
1 parent 0f5e856 commit 028babc

File tree

2 files changed

+14
-17
lines changed

2 files changed

+14
-17
lines changed

Node_Editor/Framework/NodeEditor.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -730,9 +730,8 @@ public static void StopTransitioning (NodeCanvas nodeCanvas)
730730
/// </summary>
731731
private static void UpdateTransitions ()
732732
{
733-
for (int cnt = 0; cnt < transitioningNodeCanvases.Count; cnt++)
733+
foreach (NodeCanvas nodeCanvas in transitioningNodeCanvases)
734734
{
735-
NodeCanvas nodeCanvas = transitioningNodeCanvases [cnt];
736735
if (!nodeCanvas.currentNode.AcceptsTranstitions || nodeCanvas.currentNode.transitions.Count == 0)
737736
{ // Error - this node should not have any transitions, in or out
738737
StopTransitioning (nodeCanvas);

Node_Editor/Framework/NodeEditorSaveManager.cs

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -273,15 +273,15 @@ public static void CreateWorkingCopy (ref NodeCanvas nodeCanvas, NodeEditorState
273273

274274
nodeCanvas.currentNode = ReplaceSO (allSOs, clonedSOs, nodeCanvas.currentNode);
275275
nodeCanvas.currentTransition = ReplaceSO (allSOs, clonedSOs, nodeCanvas.currentTransition);
276-
foreach (Node node in nodeCanvas.nodes)
276+
for(int nodeIndex=0;nodeIndex < nodeCanvas.Count;nodeIndex++)
277277
{ // Clone Nodes, structural content and additional scriptableObjects
278-
Node clonedNode = ReplaceSO (allSOs, clonedSOs, node);
278+
Node clonedNode = nodeCanvas[nodeIndex]= ReplaceSO (allSOs, clonedSOs, nodeCanvas[nodeIndex]);
279279
// We're going to restore these from NodeKnobs if desired (!compressed)
280280
clonedNode.Inputs = new List<NodeInput> ();
281281
clonedNode.Outputs = new List<NodeOutput> ();
282-
foreach (NodeKnob knob in clonedNode.nodeKnobs)
282+
for(int knobIndex=0;knobIndex < clonedNode.nodeKnobs.Count;knobIndex++)
283283
{ // Clone generic NodeKnobs
284-
NodeKnob clonedknob = ReplaceSO (allSOs, clonedSOs, knob);
284+
NodeKnob clonedknob = clonedNode.nodeKnobs[knobIndex] = ReplaceSO (allSOs, clonedSOs, clonedNode.nodeKnobs[knobIndex]);
285285
clonedknob.body = clonedNode;
286286
// Replace additional scriptableObjects in the NodeKnob
287287
clonedknob.CopyScriptableObjects ((ScriptableObject so) => ReplaceSO (allSOs, clonedSOs, so));
@@ -293,22 +293,20 @@ public static void CreateWorkingCopy (ref NodeCanvas nodeCanvas, NodeEditorState
293293
clonedNode.Outputs.Add (clonedknob as NodeOutput);
294294
}
295295
}
296-
int count = 0;
297-
foreach (Transition transition in clonedNode.transitions)
296+
for(int transitionIndex=0;transitionIndex < clonedNode.transitions.Count ;transitionIndex++)
298297
{ // Clone transitions
299-
if (transition.startNode != node)
298+
if (clonedNode.transitions[transitionIndex].startNode != node)
300299
continue;
301-
Transition clonedTransition = ReplaceSO (allSOs, clonedSOs, transition);
300+
Transition clonedTransition = clonedNode.transitions[transitionIndex] = ReplaceSO (allSOs, clonedSOs, clonedNode.transitions[transitionIndex]);
302301
if (clonedTransition == null)
303302
{
304-
Debug.LogError ("Could not copy transition " + count +" of Node " + clonedNode.name + "!");
303+
Debug.LogError ("Could not copy transition " + transitionIndex +" of Node " + clonedNode.name + "!");
305304
continue;
306305
}
307-
count++;
308306

309307
// Debug.Log ("Did replace contents of Transition " + trans.name + " because its Node " + clonedNode.name + " is the start node!");
310-
clonedTransition.startNode = ReplaceSO (allSOs, clonedSOs, transition.startNode);
311-
clonedTransition.endNode = ReplaceSO (allSOs, clonedSOs, transition.endNode);
308+
clonedTransition.startNode = ReplaceSO (allSOs, clonedSOs, clonedNode.transitions[transitionIndex].startNode);
309+
clonedTransition.endNode = ReplaceSO (allSOs, clonedSOs, clonedNode.transitions[transitionIndex].endNode);
312310

313311
if (!compressed)
314312
clonedTransition.endNode.transitions.Add (clonedTransition);
@@ -321,12 +319,12 @@ public static void CreateWorkingCopy (ref NodeCanvas nodeCanvas, NodeEditorState
321319
// Needs to be in the same function as the EditorState references nodes from the NodeCanvas
322320
if (editorStates != null)
323321
{
324-
foreach (NodeEditorState nodeEditorState in editorStates)
322+
for (int nodeEditorStateIndex = 0; nodeEditorStateIndex < editorStates.Count; nodeEditorStateIndex++)
325323
{
326-
if (nodeEditorState == null)
324+
if (editorStates[nodeEditorStateIndex] == null)
327325
continue;
328326

329-
NodeEditorState state = Clone (nodeEditorState);
327+
NodeEditorState state = Clone (editorStates[nodeEditorStateIndex]);
330328
state.canvas = nodeCanvas;
331329
state.focusedNode = null;
332330
state.selectedNode = state.selectedNode != null? ReplaceSO (allSOs, clonedSOs, state.selectedNode) : null;

0 commit comments

Comments
 (0)