Advertisement
Guest User

Untitled

a guest
Mar 15th, 2013
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.44 KB | None | 0 0
  1. # Generated by OpenSesame 0.27.2~pre1 (Frisky Freud)
  2. # Fri Mar 15 11:40:46 2013 (posix)
  3. # <http://www.cogsci.nl/opensesame>
  4.  
  5. set foreground "white"
  6. set subject_parity "even"
  7. set description "Default description"
  8. set title "New experiment"
  9. set sampler_backend "legacy"
  10. set coordinates "relative"
  11. set height "768"
  12. set mouse_backend "xpyriment"
  13. set width "1024"
  14. set compensation "0"
  15. set keyboard_backend "legacy"
  16. set background "black"
  17. set subject_nr "0"
  18. set canvas_backend "xpyriment"
  19. set start "experiment"
  20. set synth_backend "legacy"
  21.  
  22. define inline_script inline_script
  23. ___run__
  24. # Determine the timeout in ms:
  25. timeout = 3000
  26.  
  27. # Create keyboard_response item:
  28. from openexp.keyboard import keyboard
  29. my_keyboard = keyboard(exp, keylist=['space'], timeout = 0)
  30.  
  31. # Determine the timestamp of the start of the response
  32. # interval:
  33. start_time = self.time()
  34.  
  35. # Give the number of spacebar presses a starting
  36. # value, namely 0.
  37. nPresses = 0
  38.  
  39. # Collect keyboard response until 3000 ms (or whatever
  40. # you set the timeout to) passed:
  41.  
  42. while True:
  43.  
  44. # Get new timestamp:
  45. current_time = self.time()
  46.  
  47. # Continue only if the duration is still
  48. # smaller than timeout:
  49. if current_time - start_time < timeout:
  50.  
  51. # Collect keyboard response:
  52. key, end_time = my_keyboard.get_key()
  53.  
  54. # Add to the number of presses if response was not
  55. # 'None' (meaning no key was pressed):
  56. if key != None:
  57. nPresses +=1
  58.  
  59. # You could advance to the next part of your
  60. # experiment as soon as space has been pressed twice.
  61. # If you want to keep pulling keyboard responses until
  62. # the timeout, even if participants already pressed
  63. # twice, simply remove the two following lines.
  64. if nPresses >= 2:
  65. break
  66.  
  67. # If (more than) 3000 ms have passed, advance to the
  68. # next part of your experiment:
  69. else:
  70. break
  71.  
  72. # Set the number of spacebar presses for future use in the
  73. # user interface (notably, the logger item). After doing so,
  74. # you will find :
  75. self.experiment.set('nPresses', nPresses)
  76. __end__
  77. set _prepare ""
  78. set description "Executes Python code"
  79.  
  80. define feedback feedback
  81. set duration "2000"
  82. set reset_variables "yes"
  83. set description "Provides feedback to the participant"
  84. draw textline 0.0 -128.0 "you pressed the spacebar" center=1 color=white font_family="mono" font_size=18 font_italic=no font_bold=no show_if="always"
  85. draw textline 0 -64 "[nPresses] times" center=1 color=white font_family="mono" font_size=18 font_italic=no font_bold=no show_if="always"
  86.  
  87. define sequence sequence
  88. run sketchpad "always"
  89. run inline_script "always"
  90. run feedback "always"
  91. run logger "always"
  92.  
  93. define sketchpad sketchpad
  94. set duration "0"
  95. set description "Displays stimuli"
  96. draw textline 0.0 -160.0 "press space" center=1 color=white font_family="mono" font_size=18 font_italic=no font_bold=no show_if="always"
  97.  
  98. define sequence experiment
  99. run loop "always"
  100.  
  101. define logger logger
  102.  
  103. define loop loop
  104. set repeat "1"
  105. set description "Repeatedly runs another item"
  106. set skip "0"
  107. set offset "no"
  108. set item "sequence"
  109. set column_order "press"
  110. set cycles "10"
  111. set order "random"
  112. setcycle 0 press "once"
  113. setcycle 1 press "once"
  114. setcycle 2 press "once"
  115. setcycle 3 press "once"
  116. setcycle 4 press "once"
  117. setcycle 5 press "twice"
  118. setcycle 6 press "twice"
  119. setcycle 7 press "twice"
  120. setcycle 8 press "twice"
  121. setcycle 9 press "twice"
  122. run sequence
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement