Ok, let's see if I can help without having any of the scripts you are using in front of me. I'm not at my home pc, but we'll try this anyhow.
1. Find the script that is used for the switch, probably something like "Switch.fpi". Copy and rename it to something else, like "AlteredSwitch.fpi".
2. Open this up in FPI Editpad (or your favorite scripting program), and add the following lines at the very beginning of the script:
:state=0:globalvar=1,varequal=0,state=99
What this does is sets the current variable being checked to 1, and sets the value of that variable to 0. It then moves to state 99, which will prevent anything else in the script from being executed.
3. In this same script, add the following lines at the very end of the script:
:state=99:globalvar=1
:state=99,varequal=1:state=x
What this does is it once again sets the variable being looked at to 1, and then checks to see if the value of it is equal to 1. If it is, it moves to state x, where x is the state that the switch can be used. This is more than likely state 1, but that will be dependent on the script itself.
4. Find the script used for the key, something like "DoorKey.fpi", and once again copy and save it with a new name like "AlteredDoorKey.fpi" and open it up with FPI Editpad (you really should have this handy little program - Terry is a genius!).
5. Add the following line at the very top of the script:
:state=0:globalvar=1,varequal=0
This once again is setting the variable 1 to the value of 0.
6. Find the line that indicates when you have picked up the key and add this:
This sets the variable 1 to a value of 1. Then when you go back to the switch, the switch will work.
Test this out and let us know if this worked or not.
Priest of the Church of Joe Wood
In memory of Nanee. 9/1/1993 - 5/16/2009. Rest in Peace, little girl.