using TMPro;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.UI;
///
/// Manager infopage for the Courses
///
public class CourseActivityScreen : MonoBehaviour
{
// vvv TEMPORARY STUFF vvv
public GameObject playButton;
public GameObject previewButton;
// ^^^ TEMPORARY STUFF ^^^
public GameObject restartButton;
///
/// Reference to the courses
///
public CourseList courseList;
///
/// Reference to the course progress
///
private PersistentDataController.SavedCourseProgress progress;
///
/// Title Display
///
public TMP_Text title;
///
/// Description Display
///
public TMP_Text description;
///
/// Image Display (Thumbnail)
///
public Image courseImage;
///
/// Progress bar Display
///
public Slider progressBar;
///
/// Reference to the progressBar gameObject
///
public GameObject progressObject;
///
/// Reference to the 'completed' gameObject
///
public GameObject completedObject;
///
/// Reference to the scene playable director
///
public PlayableDirector directorEnterFromCourseMenu;
///
/// Sets the infopage for a given course
///
void Start()
{
int index = courseList.currentCourseIndex;
Course course = courseList.courses[index];
// vvv TEMPORARY STUFF vvv
playButton.SetActive(course.theme.modelIndex != ModelIndex.NONE);
previewButton.SetActive(course.theme.modelIndex == ModelIndex.NONE);
// ^^^ TEMPORARY STUFF ^^^
title.text = course.title;
description.text = course.description;
courseImage.sprite = course.thumbnail;
//progressBar.value = progressValue;
// Set progress
PersistentDataController.GetInstance().Load();
progress = UserList.GetCurrentUser().GetCourseProgress(course.index);
if (progress != null)
{
progressBar.value = progress.progress;
if (progress.progress == 1.0f)
{
playButton.SetActive(false);
previewButton.SetActive(false);
progressObject.SetActive(false);
completedObject.SetActive(true);
}
if (progress.inUseLearnables > 0)
{
restartButton.SetActive(true);
playButton.transform.Find("Button Text").GetComponent().text = "Verder";
}
else
{
restartButton.SetActive(false);
}
}
else
{
progressBar.value = 0.0f;
restartButton.SetActive(false);
playButton.transform.Find("Button Text").GetComponent().text = "Begin";
}
var sys = SystemController.GetInstance();
if (sys.previousScene == SystemController.GetSceneIndex("Common/Scenes/CoursesMenuScreen"))
directorEnterFromCourseMenu.Play();
}
///
/// Callback to reset and start the course
///
public void ResetCourseProgress()
{
UserList.GetCurrentUser().ResetCourseProgress(progress.courseIndex);
UserList.Save();
progressBar.value = 0.0f;
StartCourse();
}
///
/// Callback to start the course
///
public void StartCourse()
{
SystemController.GetInstance().LoadNextScene("Courses/Scenes/CourseScreen");
}
}