47 lines
1.7 KiB
C#
47 lines
1.7 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class ScenePickerController : MonoBehaviour {
|
|
[SerializeField] Transform verticalLayoutGroup;
|
|
[SerializeField] GameObject SceneItemPrefab;
|
|
|
|
public enum LoadType {
|
|
TASK,
|
|
SCENE
|
|
};
|
|
|
|
[SerializeField] LoadType loadType = LoadType.TASK;
|
|
|
|
public void SetUp() {
|
|
while (verticalLayoutGroup.childCount > 0) {
|
|
DestroyImmediate(verticalLayoutGroup.GetChild(0).gameObject);
|
|
}
|
|
if (loadType == LoadType.TASK) {
|
|
foreach (AssignedTask task in System.Enum.GetValues(typeof(AssignedTask))) {
|
|
if (task == AssignedTask.None)
|
|
continue;
|
|
if (task != AssignedTask.Clean &&
|
|
task != AssignedTask.Games &&
|
|
GameData.GLOBAL.tasksDoneToday.Contains(task)) {
|
|
continue;
|
|
}
|
|
AssignedTaskInfo info = VNData.GetCurrentUnlockedVersionOf(task);
|
|
if (info != null) {
|
|
GameObject item = Instantiate(SceneItemPrefab);
|
|
item.GetComponent<SceneItemController>().SetTaskFields(info);
|
|
item.transform.SetParent(verticalLayoutGroup);
|
|
}
|
|
}
|
|
} else {
|
|
foreach (Dialogue dialogue in GameData.GLOBAL.viewedScenes) {
|
|
if (!VNData.DIALOGUE_DESCRIPTIONS.ContainsKey(dialogue))
|
|
continue;
|
|
GameObject item = Instantiate(SceneItemPrefab);
|
|
item.GetComponent<SceneItemController>().SetSceneFields(dialogue, VNData.DIALOGUE_DESCRIPTIONS[dialogue]);
|
|
item.transform.SetParent(verticalLayoutGroup);
|
|
}
|
|
}
|
|
}
|
|
}
|