Использую OnMouseDown() для обработки нажатия, но не получается реализовать мультитач в Unity3d.
В программе имеются объекты, которые при нажатии увеличиваются, а потом уменьшаются, если идет одно касание,то все работает нормально, при попытке нажать на несколько объектов сразу ничего не получается.
Пытался решить проблему, но не получилось, объекты переставали масштабироваться как нужно и мультитач не работал.
Код:
using UnityEngine;
using System.Collections;
public class OnTouch : MonoBehaviour {
public AudioClip crash1;
public AudioClip hat_closed;
public AudioClip hat_open;
public bool c;
public bool c1;
public bool c2;
void OnMouseDown(){
if (this.name == "clash") {
GetComponent<AudioSource>().PlayOneShot(hat_open);
c=true;
}
if (this.name == "clash 1") {
GetComponent<AudioSource>().PlayOneShot(hat_closed);
c1=true;
}
if (this.name == "clash 2") {
GetComponent<AudioSource> ().PlayOneShot (crash1);
c2=true;
}
transform.localScale += new Vector3(0.05f, 0.05f, 0);
}
void Update(){
if (c) {transform.localScale = Vector3.Lerp (this.transform.localScale, new Vector3 (0.2f, 0.2f, 0), Time.deltaTime*10f);}
if (c1) {transform.localScale = Vector3.Lerp (this.transform.localScale, new Vector3 (0.2f, 0.2f, 0), Time.deltaTime*10f);}
if (c2) {transform.localScale = Vector3.Lerp (this.transform.localScale, new Vector3 (0.25f, 0.25f, 0), Time.deltaTime*10f);}
}
}