OK, here's a quick'ish example. I tried to make it fairly easy to edit to suit your needs:
rem Landscape App
SetDisplayAspect( 4.0/3.0 )
MODE=0
rem A Wizard Did It!
do
setPrintSize(5)
select MODE
case 0
rem asking question
ans = questionMessage("Does baxslash Rock?", "Yes", "Of course!")
MODE=1
endcase
case 1
rem showing answer
select ans
case 1
Print("Yes!")
endcase
case 2
Print("Of Course he does!")
endcase
endselect
endcase
endselect
Sync()
loop
function questionMessage(question$, ans1$, ans2$)
txt1 = createText(question$)
setTextSize(txt1,5)
setTextColor(txt1,0,0,0,255)
setTextAlignment(txt1,1)
setTextPosition(txt1,50,40)
setTextDepth(txt1,0)
w1 = getTextTotalWidth(txt1)
txt2 = createText(ans1$)
setTextSize(txt2,5)
setTextColor(txt2,0,0,0,255)
setTextAlignment(txt2,1)
setTextDepth(txt2,0)
w2 = getTextTotalWidth(txt2)+10
txt3 = createText(ans2$)
setTextSize(txt3,5)
setTextColor(txt3,0,0,0,255)
setTextAlignment(txt3,1)
setTextDepth(txt3,0)
w3 = getTextTotalWidth(txt3)+10
w4 = w2+w3+15
totw=max(w1+10,w4)
t1 = 50-(w2+w3+5)/2+w2/2
setTextPosition(txt2,t1,50)
t2 = 50+(w2+w3+5)/2-w3/2
setTextPosition(txt3,t2,50)
spr = createSprite(0)
setSpriteSize(spr,totw,25)
setSpriteOffset(spr,totw/2,12.5)
setSpritePositionByOffset(spr,50,50)
setSpriteDepth(spr,2)
BG=spr
spr = createSprite(0)
setSpriteColor(spr,0,0,0,50)
setSpriteSize(spr,w2,10)
setSpriteOffset(spr,w2/2,5)
setSpritePositionByOffset(spr,t1,52.5)
setSpriteDepth(spr,2)
b1 = spr
spr = createSprite(0)
setSpriteColor(spr,0,0,0,50)
setSpriteSize(spr,w3,10)
setSpriteOffset(spr,w3/2,5)
setSpritePositionByOffset(spr,t2,52.5)
setSpriteDepth(spr,2)
b2 = spr
done=0
while done=0
if getSpriteHitTest(b1,getPointerX(),getPointerY())
setSpriteColor(b1,0,0,0,100)
if getPointerReleased()=1
setSpriteColor(b1,0,0,0,50)
done=1
else
if getPointerState()=1
setSpriteColor(b1,255,0,0,100)
endif
endif
else
setSpriteColor(b1,0,0,0,50)
endif
if getSpriteHitTest(b2,getPointerX(),getPointerY())
setSpriteColor(b2,0,0,0,100)
if getPointerReleased()=1
setSpriteColor(b2,0,0,0,50)
done=2
else
if getPointerState()=1
setSpriteColor(b2,255,0,0,100)
endif
endif
else
setSpriteColor(b2,0,0,0,50)
endif
sync()
endwhile
deleteText(txt1)
deleteText(txt2)
deleteText(txt3)
deleteSprite(BG)
deleteSprite(b1)
deleteSprite(b2)
endfunction done
function max(num1,num2)
if num1>num2
ans=num1
else
ans=num2
endif
endfunction ans
I think you are coding in Tier 2 but it might give you an idea of another way to do it...