46 lines
1.6 KiB
C#
46 lines
1.6 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
using TMPro;
|
|
|
|
public class SceneItemController : MonoBehaviour {
|
|
[SerializeField] public TextMeshProUGUI itemTitle;
|
|
[SerializeField] public TextMeshProUGUI itemDescription;
|
|
[SerializeField] public Image redTagImage;
|
|
|
|
Dialogue dialogue = Dialogue.None;
|
|
AssignedTaskInfo info = null;
|
|
|
|
public void SetSceneFields(Dialogue dialogue, Description description) {
|
|
this.dialogue = dialogue;
|
|
itemTitle.SetText(description.name);
|
|
itemDescription.SetText(description.description);
|
|
redTagImage.color = (VNData.RED_TAG_SCENES.Contains(dialogue)) ? Color.white : Color.clear;
|
|
}
|
|
|
|
public void SetTaskFields(AssignedTaskInfo info) {
|
|
this.info = info;
|
|
this.dialogue = info.dialogue;
|
|
itemTitle.SetText(info.name);
|
|
itemDescription.SetText(info.description);
|
|
redTagImage.color = (VNData.RED_TAG_SCENES.Contains(this.dialogue)) ? Color.white : Color.clear;
|
|
}
|
|
|
|
public void ShowScene() {
|
|
// Execute the gameplay effects of the task, if set.
|
|
if (info != null) {
|
|
GameData.GLOBAL.hunger += info.hunger;
|
|
GameData.GLOBAL.mood += info.mood;
|
|
GameData.GLOBAL.money += info.money;
|
|
GameData.GLOBAL.affection += info.affection;
|
|
GameData.GLOBAL.IncrementTime();
|
|
}
|
|
|
|
ManagerController manager = GameObject.FindWithTag("Notifier").GetComponent<ManagerController>();
|
|
GameData.GLOBAL.tasksDoneToday.Add(info.task);
|
|
VNData.NextScene = dialogue;
|
|
manager.TransitionToVNScene();
|
|
}
|
|
}
|