|
Group: Forum Members
Posts: 10,
Visits: 20
|
Hello,
How can I have these rectangles change from black to blue at certain time points in the trial without the participant input of the space bar resetting the colors back?
The relevant code:
<trial synchrony> / onTrialBegin = { // we start out playing no note, skipping all of them sound.noteA.skip = true; sound.noteC.skip = true; sound.noteD.skip = true; sound.noteE.skip = true; sound.noteF.skip = true; sound.noteG.skip = true; // if animation over line 1 or 2 at the time of response, we enable noteC. 19pct, 21pct, 29, 31 //if (values.xAtResponse < 15pct) if (values.xAtResponse >= 15pct && values.xAtResponse <= 24pct) sound.noteC.skip = false if (values.xAtResponse >= 25pct && values.xAtResponse <= 34pct) sound.noteC.skip = false; // if over line 3, 4, or 7 we enable note G if (values.xAtResponse >= 35pct && values.xAtResponse <= 44pct) sound.noteG.skip = false; if (values.xAtResponse >= 45pct && values.xAtResponse <= 54pct) sound.noteG.skip = false; // if over line 5 or 6, we enable note A if (values.xAtResponse >= 55pct && values.xAtResponse <= 64pct) sound.noteA.skip = false; if (values.xAtResponse >= 65pct && values.xAtResponse <= 74pct) sound.noteA.skip = false; if (values.xAtResponse >= 75pct && values.xAtResponse <= 84pct) sound.noteG.skip = false; if (values.xAtResponse >= 15pct && values.xAtResponse <= 24pct) shape.line1p2.color = green; if (values.xAtResponse >= 25pct && values.xAtResponse <= 34pct) shape.line2p2.color = green; if (values.xAtResponse >= 35pct && values.xAtResponse <= 44pct) shape.line3p2.color = green; if (values.xAtResponse >= 45pct && values.xAtResponse <= 54pct) shape.line4p2.color = green; if (values.xAtResponse >= 55pct && values.xAtResponse <= 64pct) shape.line5p2.color = green; if (values.xAtResponse >= 65pct && values.xAtResponse <= 74pct) shape.line6p2.color = green; if (values.xAtResponse >= 75pct && values.xAtResponse <= 84pct) shape.line7p2.color = green; //confederate if (trial.synchrony.elapsedTime >= 5) shape.line1p1.color = cornflowerBlue; if (trial.synchrony.elapsedTime >= 10) shape.line2p1.color = cornflowerBlue; if (trial.synchrony.elapsedTime >= 15) shape.line3p1.color = cornflowerBlue; if (trial.synchrony.elapsedTime >= 20) shape.line4p1.color = cornflowerBlue; if (trial.synchrony.elapsedTime >= 25) shape.line5p1.color = cornflowerBlue; if (trial.synchrony.elapsedTime >= 30) shape.line6p1.color = cornflowerBlue; if (trial.synchrony.elapsedTime >= 35) shape.line7p1.color = cornflowerBlue; } / stimulusTimes = [1=clearScreen, Participant_Avatar, Confederate_Avatar, musicline, line1p1, line1p2, line2p1, line2p2, line3p1, line3p2, line4p1, line4p2, line5p1, line5p2, line6p1, line6p2, line7p1, line7p2, noteA, noteC, noteD, noteE, noteF, noteG, debug, confederatename, participantname; 1000 = line1p1BLUE; 2000 = line2p1BLUE; 3000 = line3p1BLUE; 4000 = line4p1BLUE; 5000 = line5p1BLUE; 6000 = line6p1BLUE; 7000 = line7p1BLUE] / beginResponseTime = -1 / validResponse = (" ") / recordData = true / isValidResponse = { if (trial.synchrony.response== 57) values.xAtResponse = shape.musicline.xPct; // store X coordinate of music line at time of response values.musicLineDuration -= trial.synchrony.latency; // calculate remaining animation duration values.musicLineStartX = values.xAtResponse; // set new start point, picking back up where we were at time of last response return true; } // onTrialEnd = { // if (values.musicLineDuration <= 0 || trial.synchrony.response == 0) // if trial times out, we reset everything // values.musicLineStartX = 5%; // back to the original start position //values.musicLineDuration = 7250; // back to original duration //values.xAtResponse = 0%; // we don't have any response yet // values.repCount += 1; // we increase the repetition count // } / branch = { if (!(values.musicLineDuration <= 0 || trial.synchrony.response == 0)) // as long as animation / trial hasn't timed out, we keep running return trial.synchrony; } / timeout = values.musicLineDuration </trial>
|