72 lines
1.6 KiB
C#
72 lines
1.6 KiB
C#
using UnityEngine;
|
|
using System.Collections;
|
|
using HedgehogTeam.EasyTouch;
|
|
|
|
public class LongTapMe : MonoBehaviour {
|
|
|
|
private TextMesh textMesh;
|
|
private Color startColor;
|
|
|
|
|
|
// Subscribe to events
|
|
void OnEnable(){
|
|
EasyTouch.On_LongTapStart += On_LongTapStart;
|
|
EasyTouch.On_LongTap += On_LongTap;
|
|
EasyTouch.On_LongTapEnd += On_LongTapEnd;
|
|
}
|
|
|
|
void OnDisable(){
|
|
UnsubscribeEvent();
|
|
}
|
|
|
|
void OnDestroy(){
|
|
UnsubscribeEvent();
|
|
}
|
|
|
|
void UnsubscribeEvent(){
|
|
EasyTouch.On_LongTapStart -= On_LongTapStart;
|
|
EasyTouch.On_LongTap -= On_LongTap;
|
|
EasyTouch.On_LongTapEnd -= On_LongTapEnd;
|
|
}
|
|
|
|
void Start(){
|
|
|
|
textMesh =(TextMesh) GetComponentInChildren<TextMesh>();
|
|
startColor = gameObject.GetComponent<Renderer>().material.color;
|
|
}
|
|
|
|
// At the long tap beginning
|
|
private void On_LongTapStart( Gesture gesture){
|
|
|
|
// Verification that the action on the object
|
|
if (gesture.pickedObject==gameObject){
|
|
RandomColor();
|
|
}
|
|
}
|
|
|
|
// During the long tap
|
|
private void On_LongTap( Gesture gesture){
|
|
|
|
// Verification that the action on the object
|
|
if (gesture.pickedObject==gameObject){
|
|
textMesh.text = gesture.actionTime.ToString("f2");
|
|
}
|
|
|
|
}
|
|
|
|
// At the long tap end
|
|
private void On_LongTapEnd( Gesture gesture){
|
|
|
|
// Verification that the action on the object
|
|
if (gesture.pickedObject==gameObject){
|
|
gameObject.GetComponent<Renderer>().material.color = startColor;
|
|
textMesh.text="Long tap me";
|
|
}
|
|
|
|
}
|
|
|
|
private 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));
|
|
}
|
|
}
|