In case anyone would find it useful, below is the basic code I used to "solve" this problem. It is not very elegant and will probably get quickly out of hand if you want to have more than two or three "breaks" but it is a start at least. If anyone has a more efficient solution, please let me know.
<!-- This is the script that will set up the randomization of the blocks-->
<fx:Script>
<![CDATA[
var randomNUmber : Number;
[Bindable] public var go1 : Boolean;
[Bindable] public var go2 : Boolean;
public function setBranches():void{
randomNumber = Math.random();
if (randomNumber < .5) {
go1 = true;
go2 = false;
}
else {
go1 = false;
go2 = true;
}
}
public function branch1(items:Object) : Boolean{
return go1
}
public function branch2(items:Object) : Boolean{
return go2
}
]]>
</fx:Script>
<!-- this part selects which branch to follow based on the random number-->
<TestPart id ="random" positive = "keyboard.space.press">
<branches>
<Branch next ="testpartA" operation ="branch1"/>
<Branch next ="testpartB" operation ="branch2"/>
</branches>
</TestPart>
<!--Now just have two separate testparts (A and B) that counter balance your
blocks of trials. So testpart A will have trials 1-50, a break, then trials 51-100.
TestpartB will have trials 51-100, a break, then trials 1-50. -->
<!--you will want auto to be set to "false" below-->
<Testpart id = "testpartA" positive = "..." negative = ... auto = "false" scramble = "1">
<TestPart id = "A1"...>
<item id = "item1" ...
<Frame id = "frame1"...>
</Frame>
</item>
...
...
...
<item id = "item50"...>
<Frame id = "frame50"...>
</Frame>
</item>
</TestPart>
<Part id = "break"...
<item id = "Break"...>
</item>
</Part>
<Testpart id = "A2"...>
<item id = "item50"...>
...
...
...
<item id = "item100"...>
</Testpart>
</Testpart>
<Testpart id = "testpartB"...>
<!--now set up testpart B the same as testpartA except reverse the blocks of trials-->
<!--If you want more than two blocks of trials you will simply have to add more branchs
in the function at the very top-->