Example #1
0
    public static List<TimingsManager.Timing> ParseTimingsFormat(string text, TimingsManager.BaseTriggers possibleTriggers)
    {
        timings = new List<TimingsManager.Timing>();

        previousTime = 0;
        var lines = text.Replace(", ", ",")
                        .Replace(" ", "_")
                        .Replace("\r", "").Split(lineDelimiters);
        foreach (var line in lines)
        {
            var tokens = line.Split(tokenDelimeters);
            var triggers = new List<int>();
            for (var tokenIndex = 1; tokenIndex < tokens.Length; tokenIndex++)
            {
                int trigger = possibleTriggers.GetTrigger(tokens[tokenIndex]);
                if (trigger != TimingsManager.BaseTriggers.NO_TRIGGER)
                {
                    triggers.Add(trigger);
                }
                else
                {
                    Debug.Log("TimingsParser: Unknown trigger: '" + tokens[tokenIndex] + "'");
                }
            }
            AddTimingFromString(tokens[0], triggers);
        }

        return timings;
    }
    protected override void Initialise() 
    {
        // Loads the timings
        timingsManager = new TimingsManager(timingsTextAsset, new NightWalkTriggers());

        // Saves time to skip the intro music when debugging
        debugMusicStartOffset = 0;
        musicAudioSource.time = debugMusicStartOffset;
        musicAudioSource.pitch = Time.timeScale;

        groundY = groundNode.transform.position.y;
        characterRadius = characterController.transform.position.z;

        // Screen fade in
        bool fadeFromBlack = true;
        float duration = 2.0f;
        fader.Fade(fadeFromBlack, duration);
    }
 private void PlayAttemptSound(TimingsManager.TimingResult timingResult)
 {
     AudioClip clip = attemptNoBeat;
     switch (timingResult)
     {
         case TimingsManager.TimingResult.GOOD:
             clip = audioIsOnUpBeat == true ? attemptGoodA : attemptGoodB;
             audioIsOnUpBeat = !audioIsOnUpBeat;
             break;
         case TimingsManager.TimingResult.BAD:
             clip = attemptBad;
             break;
         case TimingsManager.TimingResult.MISS:
             clip = attemptMiss;
             break;
         case TimingsManager.TimingResult.NO_BEAT:
             clip = attemptNoBeat;
             break;
     }
     attemptAudioSource.clip = clip;
     attemptAudioSource.Play();
 }
 protected override void PlayerTimingResult(
     TimingsManager.TimingResult result, List<int> triggers, PlayerAction playerAction)
 {
     switch (result) {
         case TimingsManager.TimingResult.GOOD:
             TimingResultGood(triggers, playerAction);
             break;
         case TimingsManager.TimingResult.BAD:
             TimingResultBad(triggers, playerAction);
             break;
         case TimingsManager.TimingResult.MISS:
             TimingResultMiss(triggers);
             break;
         case TimingsManager.TimingResult.NO_BEAT:
             TimingResultNoBeat(playerAction);
             break;
         default:
             Debug.Log("Unknown TimingResult");
             break;
     }
 }
Example #5
0
 protected abstract void PlayerTimingResult(
     TimingsManager.TimingResult result, List<int> triggers, PlayerAction playerAction);