You'll want to use /branch attributes to do this:
<block myblock>
/ trials = [1=selectoption]
</block>
<trial selectoption>
/ stimulusframes = [1=optionA, optionB]
/ validresponse = (optionA, optionB)
/ inputdevice = mouse
/ branch = [if (trial.selectoption.response=="optionA") trial.infoA]
/ branch = [if (trial.selectoption.response=="optionB") trial.infoB]
</trial>
<trial infoA>
/ stimulusframes = [1=infoAtxt, onemore, nothanks]
/ validresponse = (onemore, nothanks)
/ inputdevice = mouse
/ branch = [if (trial.infoa.response=="onemore") trial.infoA]
/ branch = [if (trial.infoa.response=="nothanks") trial.selectoption]
</trial>
<trial infoB>
/ stimulusframes = [1=infoBtxt, onemore, nothanks]
/ validresponse = (onemore, nothanks)
/ inputdevice = mouse
/ branch = [if (trial.infob.response=="onemore") trial.infoB]
/ branch = [if (trial.infob.response=="nothanks") trial.selectoption]
</trial>
<text optionA>
/ items = ("Gimme info about A!")
/ position = (40%, 50%)
</text>
<text optionB>
/ items = ("Gimme info about B!")
/ position = (60%, 50%)
</text>
<text infoAtxt>
/ items = ("A1", "A2", "A3", "A4")
</text>
<text infoBtxt>
/ items = ("B1", "B2", "B3", "B4")
</text>
<text onemore>
/ items = ("MOAR, PLZ!")
/ position = (40%, 75%)
</text>
<text nothanks>
/ items = ("KTHXBAI!")
/ position = (60%, 75%)
</text>