Ich habe einen sehr langen Audio-Clip, der zu spielen beginnen sollte, wenn eine bestimmte Bedingung erfüllt ist (1. IF im Code unten) und weiterspielen, bis eine andere Bedingung erfüllt ist (2. IF).Stop-Audio-Clip/Audiosource
Das Problem ist, ich kann nicht herausfinden, wie der Audioclip aufhören zu spielen, habe ich versucht audio.Stop(), aber es heißt es gibt eine Definition für Stop(), können Sie helfen?
using UnityEngine;
using System.Collections;
public class PowerShutdown: MonoBehaviour {
public AudioClip[] on_sfx;
int i;
int k;
void Start()
{
k = 1;
}
void Update()
{
if (PlayLevel1.percentageLoadProductionint < 100 && StateManager.activeState is PlayState && Time.timeSinceLevelLoad > 1 && k== 1)
{
AudioSource.PlayClipAtPoint (on_sfx [0], transform.position);
k = 2;
}
if (PlayLevel1.percentageLoadProductionint > 100 && StateManager.activeState is PlayState && Time.timeSinceLevelLoad > 1 && k == 2)
{
audio.Stop();
AudioSource.PlayClipAtPoint (on_sfx [1], transform.position);
k = 1;
}
}
}
Vielen Dank!
Sie müssen 'Stop' an der Audioquelle aufrufen. Besser nicht 'PlayClipAtPoint' verwenden (siehe Antwort von NewDeveloper), sondern eine andere Wiedergabefunktion und ein Gamobject mit angehängter Audioquelle. –
Unity sagt, dass Sie stattdessen GetComponent verwenden sollen() .Stop(); –
Aber es funktioniert nicht, da keine Audiosource an das PowerShutdown-Objekt angehängt ist. –