public PlayNewClip ( |
||
audioClip | ||
objID | int | |
objInterface | IDestroyAudioEvent | |
return | void |
private void Update() { if(activePower.CurrentPower != ActivePower.Logio) { activePower.CurrentPower = ActivePower.Logio; } waitAtStart -= Time.deltaTime; if (waitAtStart <= 0 && !triggered) { narrator = NarratorController.NarratorInstance; narrator.PlayNewClip(audioClips[audioClipIndex], gameObject.GetInstanceID(), (IDestroyAudioEvent)this); myState = EAudioState.isPlaying; startTime = Time.time; triggered = true; } if(myState == EAudioState.isWaiting) return; if(myState == EAudioState.isFinished) { if( NarratorController.NarratorInstance.isPlaying() ) myState = EAudioState.isPlaying; if( !colliderToTrigger.isTrigger ) { colliderToTrigger.isTrigger = true; } return; } if(myState == EAudioState.isPaused) { if( Time.time > (startTime + waitTimeBetweenClips)) { if(audioClipIndex == 2) return; if(audioClipIndex == 3) // Out Of Cutscene Bounds { myState = EAudioState.isFinished; trigger.GetComponent<BoxCollider>().isTrigger = true; //Destroy(this); } if(audioClipIndex == 1) { playerInputManager.ControllerConstraints = EControlConstraints.EnableAllExceptPowers; narrator.PlayNewClip(audioClips[audioClipIndex], gameObject.GetInstanceID(), (IDestroyAudioEvent)this); myState = EAudioState.isPlaying; } startTime = Time.time; }// If Timer Hasnt Finished Then Wait } if(myState == EAudioState.isPlaying) { // If narrator hasnt finished return if(audioClipIndex == audioClips.Length && !NarratorController.NarratorInstance.isPlaying()) { myState = EAudioState.isFinished; return; } // Evade NullReferenceExceptions if(audioClipIndex == audioClips.Length) return; if(Time.time < (startTime + audioClips[audioClipIndex].length)) { // Figure out a button to skip (select/back maybe?) if( inputHandler.isSkip ) { narrator.Stop(); startTime = Time.time + 0.25f; myState = EAudioState.isPaused; audioClipIndex++; return; } } if(Time.time > (startTime + audioClips[audioClipIndex].length)) { startTime = Time.time; myState = EAudioState.isPaused; audioClipIndex++; } } }