DoHitTest & Multiple SlideStates
Dina
deedeevau at hotmail.com
Mon Jul 14 18:38:26 UTC 2008
Hi E-primers,
I have the following problem with the inline and I hope someone can
help me:
I'm using the DoHitTest inline for my task and have defined the
response areas for
mouse input. The inline script works fine for other "normal" Slide-
objects with one state, but when I need to apply this script on Slide-
objects with multiple SlideStates, it goes awry.
In my task, my Slide-object "Motor" consists of 4 SlideStates ("UL"
"UR" "BL" "BR").
The problem I assume is in the first part of the script, and when I
look at the notepad file
to see how my responses are logged, only for the "UL" SlideState are
the responses logged
properly, but this does not happen for the other SlideStates "UR",
"BL" and "BR".
How can I modify the script in such a way that every response, no
matter what SlideState, will be logged appropriately?
Many thanks in advance,
Dina
DoHitTest-Inline script:
'Designate "theState" as the Default Slide State, which is the
'current, ActiveState on the Slide object "Stimulus"
Dim theState as SlideState
Set theState = Motor.States ("UL")
Dim strHit As String
Dim theMouseResponseData As MouseResponseData
'Was there a response?
If Motor.InputMasks.Responses.Count > 0 Then
'Get the mouse response
Set theMouseResponseData =
CMouseResponseData(Motor.InputMasks.Responses(1))
'Determine string name of SlideImage or SlideText
'object at mouse click coordinates.
'Assign that value to strHit
strHit = theState.HitTest(theMouseResponseData.CursorX,
theMouseResponseData.CursorY)
Select Case strHit
Case "UpperLeft"
c.setattrib "CorrectAnswer", 1
Case "UpperRight"
c.setattrib "CorrectAnswer", 2
Case "BottomLeft"
c.setattrib "CorrectAnswer", 3
Case "BottomRight"
c.setattrib "CorrectAnswer", 4
Case Else
Goto Label3
End Select
'Compare string name where mouse click occurred to
'CorrectAnswer attribute on each trial, and score
'response
'NOTE: This comparison is case sensitive
If strHit = c.GetAttrib ("CorrectAnswer") Then
Motor.ACC = 1
Else
Motor.ACC = 0
End If
End If
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "E-Prime" group.
To post to this group, send email to e-prime at googlegroups.com
To unsubscribe from this group, send email to e-prime-unsubscribe at googlegroups.com
For more options, visit this group at http://groups.google.com/group/e-prime?hl=en
-~----------~----~----~----~------~----~------~--~---
More information about the Eprime
mailing list