using UnityEngine; /// /// ListCourseScreen scene manager /// public class ListCoursesScreen : MonoBehaviour { /// /// Reference to the course-list container object /// public Transform courseContainer; /// /// Prefab of the course item object /// public GameObject courseItemPrefab; /// /// Reference to the list of all courses /// public CourseList courseList; /// /// Start is called before the first frame update /// void Start() { PersistentDataController.GetInstance().Load(); User user = UserList.GetCurrentUser(); foreach (Course course in courseList.courses) { // Create instance of prefab GameObject instance = GameObject.Instantiate(courseItemPrefab, courseContainer); // Dynamically load appearance CourseItem item = instance.GetComponent(); item.course = course; var progress = user.GetCourseProgress(course.index); item.progress = progress != null ? progress.progress : 0.0f; } } /// /// Method used as callback for course item onClick events /// public void GotoCourseInfo() { SystemController.GetInstance().LoadNextScene("Common/Scenes/CourseActivityScreen"); } }