Mouse question

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 :slight_smile: