60 lines
1.3 KiB
C#
60 lines
1.3 KiB
C#
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using UnityEngine;
|
||
|
using UnityEngine.UI;
|
||
|
using TMPro;
|
||
|
|
||
|
[ExecuteAlways]
|
||
|
public class ObjectiveText : MonoBehaviour
|
||
|
{
|
||
|
|
||
|
[SerializeField]
|
||
|
public List<VisualObjectiveItemGUI> visualObjects;
|
||
|
|
||
|
[SerializeField]
|
||
|
private Color inCompleteColor = Color.white;
|
||
|
[SerializeField]
|
||
|
private Color completeColor = Color.yellow;
|
||
|
[SerializeField]
|
||
|
private float speed;
|
||
|
[SerializeField]
|
||
|
private Animator animator;
|
||
|
|
||
|
// Start is called before the first frame update
|
||
|
void Start()
|
||
|
{
|
||
|
|
||
|
}
|
||
|
|
||
|
// Update is called once per frame
|
||
|
void Update()
|
||
|
{
|
||
|
foreach(VisualObjectiveItemGUI item in visualObjects)
|
||
|
{
|
||
|
if (item.isComplete){
|
||
|
item.icon.color = Color.Lerp(item.icon.color, completeColor, Time.deltaTime*speed);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
item.icon.color = Color.Lerp(item.icon.color,inCompleteColor, Time.deltaTime*speed);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
public void FadeOut()
|
||
|
{
|
||
|
animator.Play("FadeOut");
|
||
|
}
|
||
|
public void FadeIn()
|
||
|
{
|
||
|
animator.Play("FadeIn");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
[System.Serializable]
|
||
|
public class VisualObjectiveItemGUI
|
||
|
{
|
||
|
public TMP_Text text;
|
||
|
public Image icon;
|
||
|
public bool isComplete = false;
|
||
|
|
||
|
}
|