/* PUBLIC METHODS */ public IEnumerator FirstStep() { m_isRunning = true; // Prevent 2nd sequence to be launched in parallel m_lastIteration = false; // Reset last iteration bool just in case StartCoroutine(m_HUD.DisplayStartSequence()); // 3-2-1 sequence yield return(new WaitForSeconds(3)); // Wait for start sequence end m_timer.Begin(); // Start timer yield return(new WaitForSeconds(m_temporisationTime)); // Temporisation m_HUD.DisplayTexture(m_DBM.GetTargetOrderList()[m_i]); // Display first arrow m_targetManager.SetTargetInteractible(m_DBM.GetTargetOrderList()[m_i]); // Make first target shootable m_i++; // Prepare for next iteration StopCoroutine("FirstStep"); // Clean up }