I am all for not being handed everything on a plate, but the 10-link limitation for controllers is a bit silly, and very limiting.
It is sometimes necessary to control more than 10 things, and having to chain multiple programming boards together becomes unweildy.
I propose introducing a Multiplexer element which can take in 10 elements as input, and can be connected to a controller as a single element.
It should have a simple API:
getElementCount returns the number of multiplexed elements
getElement(n) returns multiplexed element n (as a real Lua object, created on-demand, as if it was connected directly to the controller)
Chaining multiplexers should be supported, in one of two ways:
(a) you have to manually unpack any child multiplexers by calling them in turn
(b) the final multiplexer automatically returns all elements connected to it and any sub-multiplexers; (the sub-multiplexers themselves do not show up in the results)
I am all for not being handed everything on a plate, but the 10-link limitation for controllers is a bit silly, and very limiting.
It is sometimes necessary to control more than 10 things, and having to chain multiple programming boards together becomes unweildy.
I propose introducing a Multiplexer element which can take in 10 elements as input, and can be connected to a controller as a single element.
It should have a simple API:
getElementCount
returns the number of multiplexed elementsgetElement(n)
returns multiplexed element n (as a real Lua object, created on-demand, as if it was connected directly to the controller)Chaining multiplexers should be supported, in one of two ways:
On balance I would favour option (b).