72 lines
1.9 KiB
C#
72 lines
1.9 KiB
C#
using UnityEngine;
|
|
using System.Collections;
|
|
using HedgehogTeam.EasyTouch;
|
|
|
|
public class TwoLongTapMe : MonoBehaviour {
|
|
|
|
private TextMesh textMesh;
|
|
private Color startColor;
|
|
|
|
// Subscribe to events
|
|
void OnEnable(){
|
|
EasyTouch.On_LongTapStart2Fingers += On_LongTapStart2Fingers;
|
|
EasyTouch.On_LongTap2Fingers += On_LongTap2Fingers;
|
|
EasyTouch.On_LongTapEnd2Fingers += On_LongTapEnd2Fingers;
|
|
EasyTouch.On_Cancel2Fingers += On_Cancel2Fingers;
|
|
}
|
|
|
|
void OnDisable(){
|
|
UnsubscribeEvent();
|
|
}
|
|
|
|
void OnDestroy(){
|
|
UnsubscribeEvent();
|
|
}
|
|
|
|
void UnsubscribeEvent(){
|
|
EasyTouch.On_LongTapStart2Fingers -= On_LongTapStart2Fingers;
|
|
EasyTouch.On_LongTap2Fingers -= On_LongTap2Fingers;
|
|
EasyTouch.On_LongTapEnd2Fingers -= On_LongTapEnd2Fingers;
|
|
EasyTouch.On_Cancel2Fingers -= On_Cancel2Fingers;
|
|
}
|
|
|
|
void Start(){
|
|
textMesh =(TextMesh) GetComponentInChildren<TextMesh>();
|
|
startColor = gameObject.GetComponent<Renderer>().material.color;
|
|
}
|
|
|
|
// At the long tap beginning
|
|
void On_LongTapStart2Fingers( Gesture gesture){
|
|
// Verification that the action on the object
|
|
if (gesture.pickedObject == gameObject){
|
|
RandomColor();
|
|
}
|
|
}
|
|
|
|
// During the long tap
|
|
void On_LongTap2Fingers( Gesture gesture){
|
|
// Verification that the action on the object
|
|
if (gesture.pickedObject == gameObject){
|
|
textMesh.text = gesture.actionTime.ToString("f2");
|
|
}
|
|
}
|
|
|
|
// At the long tap end
|
|
void On_LongTapEnd2Fingers( Gesture gesture){
|
|
// Verification that the action on the object
|
|
if (gesture.pickedObject == gameObject){
|
|
gameObject.GetComponent<Renderer>().material.color = startColor;
|
|
textMesh.text="Long tap me";
|
|
}
|
|
}
|
|
|
|
// If the two finger gesture is finished
|
|
void On_Cancel2Fingers(Gesture gesture){
|
|
On_LongTapEnd2Fingers( gesture);
|
|
}
|
|
|
|
void RandomColor(){
|
|
gameObject.GetComponent<Renderer>().material.color = new Color( Random.Range(0.0f,1.0f), Random.Range(0.0f,1.0f), Random.Range(0.0f,1.0f));
|
|
}
|
|
}
|