now on for the main loop of the script, see the below picture for an example. to start off we need a custom event, i named this speed rush. next we need some code that will control if the loop should be run, this basically tells the loop when to stop running actually. to do this we need a variable named index of type int. we then need to get our array and get its last index (this is important since we want the dash to stop at the last ring). we then compare the index to the last index, if the index is greater than or equal to the last index then we stop the loop, this would be the true pin on the branch node. if the index is less than the last index that mean that there is still rings to move to so we move on to the next part of the script where we move the player character. this section basically just moves the player from point A to point B over a specified time via a timeline. the timeline i used in the example is just a float track that goes from a value of 0 to 1 over 1 second. to get the location to move between we just use the index to get the ring where we are currently located from the array then for the target location we do the same thing but we add one to the index so we get the next ring in the array. we then lerp vector and set the location. a lerp will give a value between a and b based on the alpha, this is therefor based on the timeline. the timeline gets updated rapidly possible on tick so it looks like smooth movement. the last thing we need to do is to increment the value of index and run the loop again, this is the script off of the finished pin. it runs the script as many times as it can until the index is equal to the last index of the array.