How do I set conditions in a block to repeat, only if the participant has not made a response within a time frame?
To be more specific: I’m setting up a reaction time based task (the dot probe task) and I want the stimuli to disappear and the trial to end if the participant does not make a response within 2 seconds. But I want to ensure a response is made for every condition, so I would like to re-present any conditions in which the participant does not respond within 2 seconds again, at the end of the block.
If there is no response then you could append the trial information to a new list and then have a loop after the trials loop which presents trials from this list.
Thank you, that sounds like it could work. But what if people don’t respond in time in the new loop? Is there a way to loop round the trials forever until all trials in that block have been ‘completed’?
I set this up for someone as part of a “Fix that bug” though they ended up not wanting that aspect.
What I did was set the nTrials for the repeat loop to be twice the number of trials to repeat.
Within the repeat trials, I used .pop() to remove the current trial and .append to put it back if it was also not completed in time. I then ended the loop early if the list of trials to come reached zero length.