Scriptname SkyFiDHDCheyenneScript extends ObjectReference{DHD Activator in Cheyenne}Int GateStatus = 0String CurrentLocationObjectReference Property PuddleX autoObjectReference Property Puddle2X autoObjectReference Property ForestWorldX autoObjectReference Property DesertWorldX autoObjectReference Property WaterWorldX autoObjectReference Property DestinyX autoObjectReference Property AncientCityX autoMessage Property SkyFiDHDCheyenneMESG AutoFunction GateStatusCheck()if (GateStatus == 1) GateClose()elseif (GateStatus == 0) GateDial()endifEndFunctionFunction GateDial()Debug.Notification("Dialing...")Int iButton = SkyFiDHDCheyenneMESG.Show() ; Shows your menu.If (iButton != -1) ; Wait for input If (iButton == 0) ; Cancel GateClose() GateStatus = 0 ElseIf (iButton == 1) ; Forest World GateStatus = 1 ForestWorldEnable() ElseIf (iButton == 2) ; Desert World GateStatus = 1 DesertWorldEnable() ElseIf (iButton == 3) ; Water World GateStatus = 1 WaterWorldEnable() ElseIf (iButton == 4) ; Destiny GateStatus = 1 DestinyEnable() ElseIf (iButton == 5) ; Ancient City GateStatus = 1 AncientCityEnable() EndIfEndIfEndFunctionFunction GateClose()GateStatus = 0PuddleX.DisableNoWait(true)Puddle2X.DisableNoWait(true)ForestWorldX.DisableNoWait(false)DesertWorldX.DisableNoWait(false)WaterWorldX.DisableNoWait(false)DestinyX.DisableNoWait(false)AncientCityX.DisableNoWait(false)EndFunctionFunction ForestWorldEnable()Debug.Notification("...Connection Successful")ForestWorldX.EnableNoWait(false)PuddleX.EnableNoWait(true)Puddle2X.EnableNoWait(true)Utility.Wait(38)GateClose()EndFunctionFunction DesertWorldEnable()Debug.Notification("...Connection Successful")DesertWorldX.EnableNoWait(false)PuddleX.EnableNoWait(true)Puddle2X.EnableNoWait(true)Utility.Wait(38)GateClose()EndFunctionFunction WaterWorldEnable()Debug.Notification("...Connection Successful")WaterWorldX.EnableNoWait(false)PuddleX.EnableNoWait(true)Puddle2X.EnableNoWait(true)Utility.Wait(38)GateClose()EndFunctionFunction DestinyEnable()Debug.Notification("...Connection Successful")DestinyX.EnableNoWait(false)PuddleX.EnableNoWait(true)Puddle2X.EnableNoWait(true)Utility.Wait(38)GateClose()EndFunctionFunction AncientCityEnable()Debug.Notification("...Connection Successful")AncientCityX.EnableNoWait(false)PuddleX.EnableNoWait(true)Puddle2X.EnableNoWait(true)Utility.Wait(38)GateClose()EndFunctionEvent OnActivate(ObjectReference akActionRef)GateStatusCheck()EndEventThe Object references are supposed to be Door objects, which are enabled and disabled to travel to other worlds through the stargate, this is the best way I thought of doing it and really could be the worst way for all I know. The timer doesnt seem to work, or I have done it wrong, the door doesnt enable after disabling, and I am totally lost, I have tried Enable and Disable without the NoWait part but that doesnt do anything different, every time I have tested I have started a new game and coc'd into the cell to test so i am pretty sure there is nothing to do with save games causing problems.
Any help you can give is very much welcome and dont be hesitant in telling me I have done it totally wrong. Also the first if statement to find out if the gate is already open or not works fine as far as I can tell it is mainly just the options menu and the stargate not opening properly that seems to be the problem.

