Unity简单实现不点击鼠标一定时间后自动跳转场景的功能

Unity简单实现不点击鼠标一定时间后自动跳转场景的功能

前言

在之前做的雀巢项目中,甲方提出了一个这样的需求:在不进行操作软件的一定时间内,软件需自动跳转场景。当时我实现的思路时设置一个计数器,让其进行自加,自加到一定数值时触发跳转场景的功能,如果中间检测到用户进行操作,例如点击鼠标、点击按钮等功能,则将计数置零,重新开始计数。在这里简单介绍下,具体实现步骤如下:

实现步骤

1.创建两个场景,命名如下图所示:
Unity简单实现不点击鼠标一定时间后自动跳转场景的功能_第1张图片
2.先实现自动跳转场景和打断计数的功能脚本,如下所示:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class LoadScence : MonoBehaviour 
{
    //jisuanshijian
    public float countTime = 0f;

    public Text showText;
	
	// Update is called once per frame
	void Update () 
    {
        CountTime();
        ToBreak();
	}

    void CountTime() 
    {
        countTime += Time.deltaTime;
        showText.text = countTime.ToString("f2");
        if(countTime > 20.0f)
        {
            SceneManager.LoadScene("PartTwo");
        }
    }

    void ToBreak() 
    { 
        if(Input.GetMouseButtonDown(0))
        {
            countTime = 0f;
        }
    }
}

3.打开PartOne场景,将以上脚本挂在到场景中的物体上,并且将两个场景拖拽到Build Setting中,如下图所示:
Unity简单实现不点击鼠标一定时间后自动跳转场景的功能_第2张图片
4.新建一个返回PartOne场景功能的脚本,代码如下所示:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class BackOne : MonoBehaviour 
{

    public void BackThisOne()
    {
        SceneManager.LoadScene("PartOne");
    }
}

5.打开PartTwo场景,将以上脚本挂载到场景内物体上,并且新建一个按钮,将返回PartOne场景的功能绑定到按钮上,如下图所示:
Unity简单实现不点击鼠标一定时间后自动跳转场景的功能_第3张图片
6.返回PartOne场景,运行工程,开始计时,并且点击鼠标可以打断计数,如下图所示:
Unity简单实现不点击鼠标一定时间后自动跳转场景的功能_第4张图片
7.运行20s后,自动跳转场景,完成。
Unity简单实现不点击鼠标一定时间后自动跳转场景的功能_第5张图片

你可能感兴趣的:(技术小计)