How to get mouse double click event ?
Thanks
Perhaps something like this? Pseudocode provided as I dont have access to Unity right now.
Pseudocode:
// JS script
var timer : float = 0.5; // This is the double click speed.
private var time1 : float;
private var time2 : float;
private var difference : float; // The difference between time1 and time2
private var timeSwap : boolean; // This alternates between time1 and time2
function Update()
{
if (Input.GetMouseButtonDown (0))
{
if (timeSwap == false)
{
time1 = Time.time;
timeSwap = true;
}
else
{
time2 = Time.time;
timeSwap = false;
}
difference = Mathf.Abs(time1 - time2);
if (difference > timer)
{
// normal mouse event here
}
else
{
// doubleclick event here
}
}
} // End Function Update
I used Event.clickCount for that matter
like that:
void OnGUI() {
switch ((int)Event.current.type){
case (int)EventType.mouseDown:
if (Event.current.clickCount == 2){
DoubleClick();
}
}
Event.current.Use();
break;
}
btw: Use double click in OnGUI function since those inputs are not Framerate dependent.
Thanks