Unity 双击事件代码实现 - 不同点击效果
以下是一个示例代码,当点击两次时,分别产生不同的效果:
using UnityEngine;
public class DoubleClickEvent : MonoBehaviour
{
private float lastClickTime;
private int clickCount;
private void OnMouseDown()
{
clickCount++;
if (clickCount == 1)
{
lastClickTime = Time.time;
}
else if (clickCount >= 2 && Time.time - lastClickTime < 0.5f)
{
// 第二次点击在0.5秒内
Debug.Log('Double Click');
// 在这里执行第二次点击的效果
// ...
}
else
{
clickCount = 1;
lastClickTime = Time.time;
}
}
}
在上述代码中,我们使用 clickCount 和 lastClickTime 两个变量来跟踪点击次数和上一次点击的时间。当点击一次时,我们将 clickCount 加一,并将当前时间保存在 lastClickTime 中。当点击两次并且两次点击的时间间隔小于 0.5 秒时,我们触发双击事件,并在此处执行第二次点击的效果。如果点击次数超过两次或者两次点击的时间间隔超过 0.5 秒,则重新计数点击次数和保存当前时间。
你可以将上述代码附加到任何游戏对象上,当在游戏中点击两次该对象时,将触发双击事件并执行相应的效果。
原文地址: https://www.cveoy.top/t/topic/o5iy 著作权归作者所有。请勿转载和采集!