mcrae said:
if you just line up 2x5 repeaters, and set the delays at 5,8,2,5,0 then you can retract 3 pistons in a row, but not with anything sticking to the third. im working on that part now. it doesnt work to extend them either, gotta do that from the other side. uploading a vid now. i feel like its goign to require some inventive use of logic gates, of which i have no knowledge lol
That's pretty much exactly what I ended up with, too. There's a way to do that last one, too. Basically, you have to rig up an XOR gate with some repeaters so that it will turn on that last block at the very end for a second. I'm having the oddest time on it right now, though. For some reason, an XOR gate I build elsewhere on the map is fine, but when I try to recreate it, it isn't functioning properly.
In any case, it's a LOT less clean than the double sticky pistons.
EDIT: Got it working, and that's exactly what you need to do:
The tricky part about it is not only that you need to have the space where the third piston starts out activate TWICE when retracting, but you also have to make sure it's OFF when the retraction process starts, as if it starts out on, it's going to interfere with the first retraction in that space. So for that very last thing, we want a signal that will stay off for most of the retraction process, then turn on and off again for the very last step.
First, I made one of these:
http://www.youtube.com/watch?v=R3YHZkG6xwk
Then, I took the signal from my lever and, using a delay longer than any of the other spaces, I routed it towards the XOR gate. I then split the signal to both inputs of the XOR gate, but I put a couple repeaters on one of the inputs to delay just that one, then I route the output of the XOR back to the third spot on the piston row (I made a bridge of blocks that hung over it).
What happens at the XOR gate is that whenever a signal from the lever reaches it, it'll toggle the output on for a second, then turn off. This happens because initially, both inputs are the same, but once the signal from the lever hits it, one input will change first (turning the gate ON), but then once the delayed input kicks in, it turns the gate back off.
So, what happens is this:
1) Turn lever on. All pistons expand quickly.
2) All the repeaters that dictate the order to turn the pistons off in are activated, but since the pistons are already expanded, nothing happens.
3) Finally, the longest delay hits the XOR gate, toggling THAT output on and off for a second, but again, it doesn't affect the already-expanded pistons.
4) Turn lever off, the rows of repeaters handle all the retractions except for the last.
5) The long delay hits the XOR gate, quickly toggling the last output and pulling the final block into place.
The same principle SHOULD apply to a four-block chain, but at that point, space for the wiring is going to become an issue.