private void setCurrentExercise(ExerciseDataItem exercise, int timeOrReps) { setState(State.InProgress); currentExercise = exercise; exerciseText.text = currentExercise.name.ToUpper(); playExerciseTextAnimation(); setTimeText(timeOrReps); }
private void setCurrentExercise(string name, int time) { setState(State.InProgress); currentExercise = null; exerciseText.text = name.ToUpper(); playExerciseTextAnimation(); setTimeText(time); }
public override void init(ListViewDataItem data) { this.data = (ExerciseDataItem)data; nameTmp.text = this.data.name; string searchQuery = this.data.name + " exercise"; string imagesParameter = "&iax=images&ia=images"; linkButton.appendToURL(searchQuery + imagesParameter); }
private void setFinishedState() { //Vars currentSet = 0; exerciseCount = 0; currentExercise = null; //Images backgroundColor = finishedColor; nextBackground.color = new Color(0, 0, 0, 0); //Text exerciseText.text = "Finished!"; timerText.setText(""); //Buttons repeatButton.gameObject.SetActive(true); repeatButton.interactable = true; nextButton.interactable = false; infoButton.button.interactable = false; playButton.interactable = false; pauseButton.interactable = false; }
public override void init(ListViewDataItem data) { this.data = (ExerciseDataItem)data; nameTmp.text = this.data.name; }
private IEnumerator workoutRoutine() { //If no exercises selected get rounds per set value bool noExercisesSelected = currentWorkout.roundsPerSet > 0 && currentWorkout.exercises.Count == 0; int exerciseTotal = noExercisesSelected ? currentWorkout.roundsPerSet : currentWorkout.exercises.Count; totalWorkoutTime = currentWorkout.getTotalWorkoutTimeInSeconds(exerciseTotal); workouteTimePassed = 0; for (currentSet = 0; currentSet < currentWorkout.globalSets; currentSet++) { pauseButton.interactable = false; setText.text = (currentSet + 1).ToString() + " / " + currentWorkout.globalSets; if (currentSet > 1) { playSetTextAnimation(); } bool isSetRest = currentSet > 0; //Reset between sets if we passed set 0 for (exerciseCount = 0; exerciseCount < exerciseTotal; exerciseCount++) { //Null and default if no exercises selected KeyValuePair <string, ExerciseDataItem> pair = noExercisesSelected ? default : _exerciseList[exerciseCount]; ExerciseDataItem exerciseData = noExercisesSelected ? null : pair.Value; if (isSetRest || isExerciseRest(exerciseTotal)) { int restSeconds = currentWorkout.globalRestTime; setRest(restSeconds); //Show next exercise for modes Selection and Random if (currentWorkout.exerciseMode != WorkoutPanel.ExerciseMode.Rounds) { //Be sure to set theNextExercise before calling showNextExercise switch (currentWorkout.exerciseMode) { case WorkoutPanel.ExerciseMode.Random: currentExercise = getRandomExercise(); break; case WorkoutPanel.ExerciseMode.Selection: currentExercise = exerciseData; break; } showNextExercise(); } while (restSeconds > 0) { if (!pauseButton.interactable) { pauseButton.interactable = true; } if (restSeconds <= 3) { playTimeTextAnimation(); secondBeep.Play(); } timerText.setTimeText(restSeconds); float second = 0; while (second < 1) { yield return(new WaitForSecondsRealtime(0.1f)); second += 0.1f; if (paused) { setState(State.Paused); yield return(new WaitUntil(() => !paused)); } } workouteTimePassed++; restSeconds--; progressBar.setProgress(workouteTimePassed / totalWorkoutTime); } } int workoutSeconds = currentWorkout.globalWorkTime; //Set exercise based on workout exercise mode switch (currentWorkout.exerciseMode) { //Use currentExercise after rest otherwise use exerciseData for the first time case WorkoutPanel.ExerciseMode.Random: setCurrentExercise(currentExercise ?? getRandomExercise(), workoutSeconds); break; case WorkoutPanel.ExerciseMode.Rounds: setCurrentExercise("Work", workoutSeconds); break; case WorkoutPanel.ExerciseMode.Selection: setCurrentExercise(currentExercise ?? exerciseData, workoutSeconds); break; } roundBeep.Play(); yield return(new WaitForSecondsRealtime(roundBeep.clip.length)); while (workoutSeconds > 0) { if (!pauseButton.interactable) { pauseButton.interactable = true; } if (workoutSeconds <= 3) { playTimeTextAnimation(); secondBeep.Play(); } timerText.setTimeText(workoutSeconds); float second = 0; while (second < 1) { yield return(new WaitForSecondsRealtime(0.1f)); second += 0.1f; if (paused) { setState(State.Paused); yield return(new WaitUntil(() => !paused)); } } workouteTimePassed++; workoutSeconds--; progressBar.setProgress(workouteTimePassed / totalWorkoutTime); } roundBeep.Play(); } } setState(State.Finished); }