脚本运行中是不断的将void OnGUI()循环运行
所以用到了bool变量来判断倒数计时器的是否运行
using UnityEngine;
using System.Collections;
public class Label : MonoBehaviour {
private int frametime;
public Texture img;
private bool isclick = false;
private bool tmp;
void OnGUI()
{
GUIStyle sty = new GUIStyle();
sty.normal.textColor = Color.green;
sty.fontSize = 30;
GUIStyle sty1 = new GUIStyle();
sty1.normal.textColor = Color.yellow;
sty1.fontSize = 20;
sty1.normal.background = null;
//sty.fontStyle = ;
if (!isclick)
{
isclick = GUI.Button(new Rect(10, 10, 80, 80), "开始倒计时!",sty1);
}
GUI.Label(new Rect(160, 50, 100, 20), frametime.ToString(),sty);
if(isclick && frametime > 0)
{
frametime--;
}
if (frametime == 0)
{
GUI.Label(new Rect(10, 50, 380, 255), img);
tmp = GUI.Button(new Rect(300, 10, 80, 50), "重新开始",sty1);
if (tmp)
{
frametime = 1000;
isclick = false;
}
}
if(frametime > 0)
{
if( GUI.Button(new Rect(160, 10, 80, 30), "暂停",sty1))
{
isclick = false;
}
}
}
// Use this for initialization
void Start () {
frametime = 1000;
}
// Update is called once per frame
void Update () {
}
}
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
倒计时为0弹出图片
网友评论