The output of a shift register will always show the very last value written to it. The for loop executes 4 times, the last value is then passed to the indicator. Your local doesn't work because it's outside the for loop and the value is only refreshed once the for loop finishes. Again, it will only show the last value in the iteration. You can create a local of your indicator called "method 2", put that inside the for loop, wire it to the shift regist and the "method 2" indicator will update as the for loop runs.