using UnityEngine;
using UnityEngine.Playables;
///
/// ListMinigameScreen scene manager
///
public class ListMinigamesScreen : MonoBehaviour
{
///
/// Reference to minigame-list container object
///
public Transform minigameContainer;
///
/// Prefab of the minigame item object
///
public GameObject minigameItemPrefab;
///
/// Reference to the list of all minigames
///
public MinigameList minigameList;
///
/// Reference to the scene playable director
///
public PlayableDirector directorEnterFromMainMenu;
///
/// Start is called before the first frame update
///
void Start()
{
foreach (Minigame minigame in minigameList.minigames)
{
// Create instance of prefab
GameObject instance = GameObject.Instantiate(minigameItemPrefab, minigameContainer);
// Dynamically load appearance
MinigameItem item = instance.GetComponent();
item.minigame = minigame;
}
var sys = SystemController.GetInstance();
if (sys.previousScene == SystemController.GetSceneIndex("Common/Scenes/MainMenuScreen"))
directorEnterFromMainMenu.Play();
}
///
/// Method used as callback for minigame item onClick events
///
/// The path to the new scene (path == $"Assets/{sceneName}")
public void LoadScene(string sceneName)
{
SystemController.GetInstance().LoadNextScene(sceneName);
}
}