thanks guys!
I knew that there was a command for removing the reference but I couldn't remember it, I kept searching for DestroyRef

thanks again, this is exactly what I needed.
a
Begin OnActivate player MessageBox "Message" "OK" set shortVar to 1EndBegin GameMode if ( shortVar == 1 ) set buttonVar to GetButtonPressed if ( buttonVar != -1 ) ; a button has been pressed set shortVar to 0 Activate player endif endifEndBasically, don't call Activate until after they've hit the button.
Begin OnActivate player MessageBox "Message" "OK" set shortVar to 1EndBegin GameMode if ( shortVar == 1 ) set buttonVar to GetButtonPressed if ( buttonVar != -1 ); a button has been pressed set shortVar to 0 Activate player endif endifEndBasically, don't call Activate until after they've hit the button.
scn QuestSCRshort IsOBtikstalledbegin gamemode if IsOBtikstalled == 0 setstage Quest 10 if IsOBtikstalled == 0 MessageBox "OBSE isn't installed, blah blah blah, Oblivion will now close." player.disable; there are probably more elegant ways of doing this endif endifend; stage 10 result scriptGetOBSEVersion; if OBSE is not installed, the following line will not executeSet Quest.IsOBtikstalled to 1
What the NPC says if the player has the book | (no flags) | # responses: 7 | LarryTheNPCWhat the NPC says if player does NOT have book | (no flags) | # responses: 1 | LarryTheNPC
(no target) | Funct Name: GetItemCount | Funct Info: Book 'MyBook' | Comp: == | Value: 1 | AND(no target) | Funct Name: GetIsID | Funct Info: LarryTheNPC | Comp: == | Value: 1 | AND
(no target) | Funct Name: GetItemCount | Funct Info: Book 'MyBook' | Comp: == | Value: 0 | AND (no target) | Funct Name: GetIsID | Funct Info: LarryTheNPC | Comp: == | Value: 1 | AND
What the NPC says if the player has the book | (no flags) | # responses: 7 | LarryTheNPCWhat the NPC says if player does NOT have book | (no flags) | # responses: 1 | LarryTheNPC
(no target) | Funct Name: GetItemCount | Funct Info: Book 'MyBook' | Comp: == | Value: 1 | AND(no target) | Funct Name: GetIsID | Funct Info: LarryTheNPC | Comp: == | Value: 1 | AND
(no target) | Funct Name: GetItemCount | Funct Info: Book 'MyBook' | Comp: == | Value: 0 | AND (no target) | Funct Name: GetIsID | Funct Info: LarryTheNPC | Comp: == | Value: 1 | AND
if (some condition which is only true sometimes) big long bunch of codeendif