As with all things, there surely would have been different ways to make this happen without using Context variables, such as:
- Giving all of the blocks a variable beforehand, in which the value is the same as the connected blocks
- Using a selector by variable ID
But again, this is a very simple example. What if the field is constantly moving? What if there are some parameters you could pass on to the Wired setup that determines the selected blocks? (such as: allowed directions to look towards, allowed types of furniture, allowed states)
Suddenly, it would not be as easy anymore! You'll find that this is actually a very scalable setup that will make your life much easier when building games with complex logics. And it can all run in parallel!
Callbacks can also be used to signalize when a Wired setup has finished executing. This can be very useful in setups where a certain signal chain needs to be executed before you can continue with some different, unrelated Wired stacks