Beispiel #1
0
    // IRewindStatus

    public void RewindStatusChanged(RewindStatus changingTo)
    {
        switch (changingTo)
        {
        case RewindStatus.Recording:
            DOTween.PlayForwardAll();
            GetComponent <Renderer>().material.color = Color.green;
            HideDeathUI();
            break;

        case RewindStatus.Rewinding:
            DOTween.PlayBackwardsAll();
            GetComponent <Renderer>().material.color = Color.yellow;
            break;

        case RewindStatus.SafeFreeze:
            DOTween.PauseAll();
            GetComponent <Renderer>().material.color = Color.yellow;
            StartCoroutine(nameof(RewindEndingCountdownUi));
            break;

        case RewindStatus.RewindableDeathFreeze:
        case RewindStatus.ResetRequiredDeathFreeze:
            DOTween.PauseAll();
            GetComponent <Renderer>().material.color = new Color(1.0f, 0.5f, 0.0f);
            break;
        }

        // Perform anything that needs to to happen on a specific status change to another
        if (changingTo == RewindStatus.Recording)
        {
            SoundManager.PlayEffect(SoundEffect.Background);
        }
        else
        {
            SoundManager.StopEffect(SoundEffect.Background);
        }

        if (changingTo == RewindStatus.Rewinding)
        {
            SoundManager.PlayEffect(SoundEffect.Rewind);
        }
        else
        {
            SoundManager.StopEffect(SoundEffect.Rewind);
        }

        if (changingTo == RewindStatus.Recording && _currentRewindStatus == RewindStatus.SafeFreeze)
        {
            SoundManager.PlayEffect(SoundEffect.ResumePlayAfterRewind);
        }

        _currentRewindStatus = changingTo;
    }
 public void RewindStatusChanged(RewindStatus changingTo)
 {
     if (changingTo == RewindStatus.Recording)
     {
         _textMesh.enabled = false;
     }
     else
     {
         _textMesh.enabled = true;
     }
 }
    // IRewindStatus

    public void RewindStatusChanged(RewindStatus changingTo)
    {
        switch (changingTo)
        {
        case RewindStatus.Recording:
            break;

        case RewindStatus.Rewinding:
            StartCoroutine(nameof(LensDistortFadeIn));
            break;

        case RewindStatus.SafeFreeze:
            StartCoroutine(nameof(LensDistortFadeOut));
            break;

        case RewindStatus.RewindableDeathFreeze:
            break;
        }
    }
Beispiel #4
0
    private void ChangeStatus(RewindStatus status)
    {
        if (Status == status)
        {
            return;
        }

        Status = status;

        switch (status)
        {
        case RewindStatus.Rewinding:
            break;
        }

        foreach (var listener in _statusListeners)
        {
            listener.RewindStatusChanged(Status);
        }
    }