Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在统一的精灵之间切换_C#_Unity3d - Fatal编程技术网

C# 在统一的精灵之间切换

C# 在统一的精灵之间切换,c#,unity3d,C#,Unity3d,我一直在为一个学校项目做一个团结的游戏。目前我正试图在比赛开始前倒计时。我相信这是基础知识,但我对Unity还相当陌生 这是我的剧本: using UnityEngine; using System.Collections; public class StartScreen : MonoBehaviour { static bool sawOnce = false; // Use this for initialization void Start () {

我一直在为一个学校项目做一个团结的游戏。目前我正试图在比赛开始前倒计时。我相信这是基础知识,但我对Unity还相当陌生

这是我的剧本:

using UnityEngine;
using System.Collections;

public class StartScreen : MonoBehaviour {

    static bool sawOnce = false;

    // Use this for initialization
    void Start () {
        if(!sawOnce) {
            GetComponent<SpriteRenderer>().enabled = true;
            Time.timeScale = 0;
        }

        sawOnce = true;
    }

    // Update is called once per frame
    void Update () {
        if(Time.timeScale==0 && (Input.GetKeyDown(KeyCode.Space) || Input.GetMouseButtonDown(0)) ) {
            Time.timeScale = 1;
            GetComponent<SpriteRenderer>().enabled = false;

        }
    }
}
使用UnityEngine;
使用系统集合;
公共类StartScreen:单一行为{
静态bool-sawOnce=假;
//用于初始化
无效开始(){
如果(!sawOnce){
GetComponent().enabled=true;
Time.timeScale=0;
}
sawOnce=真;
}
//每帧调用一次更新
无效更新(){
if(Time.timeScale==0&(Input.GetKeyDown(KeyCode.Space)| | Input.GetMouseButtonDown(0))){
Time.timeScale=1;
GetComponent().enabled=false;
}
}
}

我想在“Time.timeScale=1”之前和“GetComponent().enabled=false;”之后的三个不同精灵之间进行更改。在下一个精灵出现之前,每个精灵应该只显示一秒钟

您应该使用wait语句创建一个新函数。 像这样的东西会有用的

void Update () {
    if(Time.timeScale==0 && (Input.GetKeyDown(KeyCode.Space) || Input.GetMouseButtonDown(0)) ) {
        Time.timeScale = 1;
        changeSprites();
        GetComponent<SpriteRenderer>().enabled = false;

    }
}
    IEnumerator changeSprites(){
        GetComponent<SpriteRenderer>().sprite = SPRITE1
        yield return new WaitForSeconds(1);
        GetComponent<SpriteRenderer>().sprite = SPRITE2
        yield return new WaitForSeconds(1);
        GetComponent<SpriteRenderer>().sprite = SPRITE3
        yield return new WaitForSeconds(1);
    }

}
void更新(){
if(Time.timeScale==0&(Input.GetKeyDown(KeyCode.Space)| | Input.GetMouseButtonDown(0))){
Time.timeScale=1;
改变精灵();
GetComponent().enabled=false;
}
}
IEnumerator changeSprites(){
GetComponent().sprite=SPRITE1
返回新的WaitForSeconds(1);
GetComponent().sprite=SPRITE2
返回新的WaitForSeconds(1);
GetComponent().sprite=SPRITE3
返回新的WaitForSeconds(1);
}
}

添加分号;在每条雪碧线之后。很明显,将SPRITE1更改为实际的sprite。对不起,忘了