簡體   English   中英

為什么我的 AudioSource 播放一小段音樂然后關閉?

[英]Why my AudioSource plays a little piece of music and then turns of?

我試圖在 Unity 上制作游戲,你需要用節奏射擊目標。

我想讓音樂在場景開始的 2 秒后開始,但它播放了一小段並輪流播放。

public class MouseLook : MonoBehaviour {

public float lookSpeed = 3;
private Vector2 rotation = Vector2.zero;
RaycastHit hit;
int Weapon;
float ShootTimer = 0;
bool isSleeping;
bool isMusicStarted;
AudioSource music;

void Start(){
    Cursor.lockState = CursorLockMode.Locked;
    music = GetComponent<AudioSource>();
}

void Update()
{
    rotation.y += Input.GetAxis("Mouse X");
    rotation.x += -Input.GetAxis("Mouse Y");
    rotation.x = Mathf.Clamp(rotation.x, -15f, 15f);
    transform.eulerAngles = new Vector2(0,rotation.y) * lookSpeed;
    Camera.main.transform.localRotation = Quaternion.Euler(rotation.x * lookSpeed, rotation.y * lookSpeed, 0);
    StartCoroutine("StartingTheMusic"); 
}

IEnumerator StartingTheMusic(){
    yield return new WaitForSeconds(2f);
    music.Play();
    isMusicStarted = true;
}
}

您在每一幀都繼續啟動協程。 在 Start 方法的末尾移動 StartCoroutine("StartingTheMusic") 調用。 那將解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM