What I'm trying to do is, it's like a puzzle in the game Riven. The puzzle is, you have two switches. The first one you come across, after crossing a bridge, you can pull however you like, but it won't do a thing. Then, later, the player comes across a steam switch from where they can see a pipe going up to the bridge you crossed earlier. Flipping the switch reroutes the steam, and activates power to the switch. If you left it in the opposite direction earlier to which it started, the bridge's slats move up to form a staircase. Now you can use the first switch to move it as you like. But then, when you turn off the steam switch below, and the slats form the stairs, the stairs go back down again into a bridge. The steam powers the bridge and is a requirement for the bridge to be raised.
Now, on the original game, it was just a point and click, but for the 3D animation they captured I'm assuming their engine had the capability to keep the slats level while still attatched to something which with HL's engine is a func_door_rotating. Now, with this engine, that isn't possible, because you'd either have the slats moving up to an angle along with the railings, or not moving at all. So I'm having to settle with the steps (and later, the railing posts) being func_trains. They've obviously got to be controlled by a multimanager. And the buttons thing must be a multisource. But I just can't figure how they can work together.