1. in the case of iterator “For Each” the game stops at the breakpoint as it should be. however it is stoping at the last iteration, always. see example attached, it is stoping at the last entry of the List. I have changed the entries multiple times and it always stop at the last.
2. In the case of Game Object variables, the information is not showing like the other variables, see example attached. I am experiencing this in all flowscripts.
1) There is actually a small issue with using breakpoints in the ForEach node, because the iteration is taking place within the node in one frame and pausing the unity Editor is not really possible within a for-each or a for-loop iteration. You can confirm this by running this simple non flowcanvas example if you want 🙂
1
2
3
4
5
6
7
8
9
10
11
12
13
14
publicclassExampleScript:MonoBehaviour{
voidUpdate(){
if(Input.GetButtonDown("Fire1")){
for(vari=0;i<10;i++){
Debug.Log(i);
Debug.Break();
}
}
}
}
You will see that there will only be one pause break and that will be by the end of the iteration.
2) GameObject variables will be debug displayed on the connection, only if the target port that the connection is link TO, is of a GameObject type as well. In this case it is not displayed, because the target port there (on the Log Value node) is of type System.Object. I can take a look at improving this though so that instead of taking the target port type into consideration, to take the actual object type that is passed through the connection.
1) I see what the issue is, thanks for the info. What do you suggest for a custom node that actually can go through one loop item at a time?
or if you can suggest any other alternative will be appreciated!!! 🙂
1) Going through one item at a time, NOT in the same frame can basically be done with a coroutine. It could still be a for loop, but instead implemented as a coroutine that would yield in every iteration. If you really need such a node and help creating it, let me know.