Alright, so let's set up a script to have a room. It has two door's to enter/exit it, and one control panel in the middle. We will label the doors Door1 and Door2. When you first enter the base, you MUST enter through Door1, and once you are inside passed the airlock, you would then HAVE TO enter the airlock via Door2, alright?
So, in this case, we would want the airlock to start off by default, accesible to the player, outside. So, make your room with your two door and one button/panel the player can activate. Now, you could add some cool gas spray timed effects to this, but the way yours is set up above, it would be instant. One door opens and the other closes. I am going to make there be a 5 seconds delay, since if one is closing and the other opens, it's no longer air tight. Set Door1 to Open By Default. Leave Door2 closed. In the activate parent tab's of both doors, check the 'parent activate only' box, so the player cannot activate the doors by looking at them. Next give each door and the control panel a unique ref ID, for this example script they will be called Door1Ref, Door2Ref, and ControlRef. Replace these in the script with whatever you call yours. Alright, here is the script. It will detect which door is open, close the open one, then 5 seconds later, open the other one. It will also be unactivatable, while the airlock process is going.
scn AirlockScriptShort AirlockState ;this is 0 by default, or the airlock is ready to be entered from the outsideShort Working ;also 0 bydefault, meaning the airlock is currently doing nothingFloat TimerBegin OnActivate If AirlockState == 0 && Working == 0 Set Working to 1 Set Timer to 5 Door1Ref.Activate ElseIf AirlockState == 1 && Working == 0 Set Working to 1 Set Timer to 5 Door2Ref.Activate EndIfEndBegin GameMode If Working == 1 || Working == 2 If Timer > 0 Set Timer to Timer - GetSecondsPassed ElseIf AirlockState == 0 Set Working to 2 Door2Ref.Activate Set Timer to 5 Set AirlockState to 1 ElseIf AirlockState == 1 Set Working to 2 Door1Ref.Activate Set Timer to 5 Set AirlockState to 0 ElseIf Working == 2 Set Working to 0 EndIf EndIfEnd
If Door 1 is open, is closes it and after 5 seconds opens Door 2. Then the switch cannot be activate for 5 more seconds, to allow Door 2 to fully open. Otherwise if 2 is open, 1 opens, then after 5 seconds its activatable. This script will work forever provided the airlock is the only way into the area past it. If the player goes through, exiting through door 2, then goes around another way and comes back to door 1 of the airlock, it will be closed and unaccesable from that side. I hope this helps, let me know if you need anything more help.
Gunmaster95