39 lines
1.0 KiB
C#
39 lines
1.0 KiB
C#
using System;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace AibisDream
|
|
{
|
|
public class ChapterItem : MonoBehaviour
|
|
{
|
|
#region 组件
|
|
|
|
[SerializeField] private Image chapterImage;
|
|
[SerializeField] private TMP_Text title;
|
|
[SerializeField] private TMP_Text subtitle;
|
|
[SerializeField] private GameObject markSign;
|
|
|
|
#endregion
|
|
|
|
private ChapterVo _chapterVo;
|
|
public event Action<ChapterVo> OnClick;
|
|
|
|
public void Init(ChapterVo chapterVo)
|
|
{
|
|
_chapterVo = chapterVo;
|
|
|
|
chapterImage.sprite = chapterVo.pic;
|
|
title.text = chapterVo.title;
|
|
subtitle.text = chapterVo.chapter;
|
|
markSign.SetActive(chapterVo.hasSaveFile);
|
|
|
|
GetComponent<Button>().onClick.AddListener(() => OnClick?.Invoke(_chapterVo));
|
|
}
|
|
|
|
public void OnDestroy()
|
|
{
|
|
GetComponent<Button>().onClick.RemoveAllListeners();
|
|
}
|
|
}
|
|
} |