Group: Administrators
Posts: 13K,
Visits: 104K
|
Yes, you can build something like that using the string functions documented in the functions reference in the Inquisit documentation and e.g. a <list> element. Example:
<values> / nletters = 0 / index = 0 / input = "" / jumbled_output = "" / currentletter = "" </values>
<expressions> / fill_list = if (values.index < values.nletters) { values.index+=1; list.randomizeletters.appenditem(values.index); expressions.fill_list; } / jumble = if (list.randomizeletters.unselectedcount > 0) { values.currentletter=substring(values.input, list.randomizeletters.nextindex-1, 1); values.jumbled_output=concat(values.jumbled_output, values.currentletter); expressions.jumble; } </expressions>
<list randomizeletters> / selectionrate = always </list>
<block myblock> / trials = [1-4=sequence(split, jumble)] </block>
<openended split> / ontrialend = [values.input=openended.split.response; values.nletters=length(values.input); values.index=0; list.randomizeletters.reset(); expressions.fill_list; ] </openended>
<trial jumble> / ontrialbegin = [values.jumbled_output=""; expressions.jumble; ] / stimulusframes = [1=mytext] / validresponse = (57) </trial>
<text mytext> / items = ("<%values.jumbled_output%>") </text>
|