Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.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# 如何播放音频文件60分钟_C#_Unity3d - Fatal编程技术网

C# 如何播放音频文件60分钟

C# 如何播放音频文件60分钟,c#,unity3d,C#,Unity3d,我正在创建一个应用程序来播放一些轻松的声音,现在我希望用户指定他希望这些声音播放多长时间。我的音频剪辑只有10分钟,比如说用户希望播放60分钟,这意味着它将重复6次 我已经将for和do与if语句结合使用,但是声音只有在结束时才会播放和停止 Unity AudioSource有一个名为loop的属性: 您可以将音频源设置为循环,直到时间结束。当时间结束时,您只需要调用Stop方法 请注意,您的游戏对象必须连接一个音频源,音频剪辑设置在音频源内。好的,所有要点都提到了。我已经将for和do与if语

我正在创建一个应用程序来播放一些轻松的声音,现在我希望用户指定他希望这些声音播放多长时间。我的音频剪辑只有10分钟,比如说用户希望播放60分钟,这意味着它将重复6次

我已经将for和do与if语句结合使用,但是声音只有在结束时才会播放和停止

Unity AudioSource有一个名为loop的属性:

您可以将音频源设置为循环,直到时间结束。当时间结束时,您只需要调用Stop方法


请注意,您的游戏对象必须连接一个音频源,音频剪辑设置在音频源内。

好的,所有要点都提到了。我已经将for和do与if语句结合使用,但是声音只有在结束后才会播放和停止。;你能展示到目前为止你已经实现的代码吗?太棒了,它成功了。因此,我将它与如下所示的一系列歌曲一起使用,它对我来说非常适合。谢谢你,伙计!当我注意到我所添加的内容远远超出了允许范围时,如何在这里添加代码片段。有没有一种特殊的方法来添加代码?你只需要在游戏对象中把它作为一个单行为类来编写。我编辑了我的答案。
public class AudioHandler : MonoBehaviour {

    public AudioSource source;
    public float duration;

    Start(){
        source = GetComponent<AudioSource>();
    }

    public void StartPlaying(){
        source.loop = true;      //this will make the audio loop forever
        source.Play();
        Invoke("StopPlaying", duration);
    }

    public void StopPlaying(){
        source.Stop();
    }
}