CapersProject/Assets/02.Scripts/Ui/Tycoon/ManualCocktailButton.cs

36 lines
1012 B
C#
Raw Normal View History

2024-12-02 01:48:44 +00:00
using System;
2024-10-24 05:04:40 +00:00
using UnityEngine;
2024-12-02 01:48:44 +00:00
using UnityEngine.EventSystems;
2024-10-24 05:04:40 +00:00
using UnityEngine.UI;
2024-11-17 04:29:57 +00:00
namespace BlueWater.Uis
{
2024-12-02 01:48:44 +00:00
public class ManualCocktailButton : MonoBehaviour, ISelectHandler
2024-11-17 04:29:57 +00:00
{
[field: SerializeField]
public Image Image { get; private set; }
2024-12-02 01:48:44 +00:00
[field: SerializeField]
public Button Button { get; private set; }
2024-10-24 05:04:40 +00:00
2024-12-02 01:48:44 +00:00
private Action<ManualCocktailButton> _onSelectedAction;
private ManualBook _manual; // 다른 스크립트가 붙은 오브젝트를 참조 (에디터에서 설정 가능)
private void OnDestroy()
2024-11-17 04:29:57 +00:00
{
2024-12-02 01:48:44 +00:00
_onSelectedAction = null;
2024-11-17 04:29:57 +00:00
}
2024-10-24 05:04:40 +00:00
2024-12-02 01:48:44 +00:00
public void OnSelect(BaseEventData eventData)
2024-11-17 04:29:57 +00:00
{
2024-12-02 01:48:44 +00:00
_onSelectedAction?.Invoke(this);
2024-11-17 04:29:57 +00:00
}
2024-12-02 01:48:44 +00:00
2024-11-17 04:29:57 +00:00
public void SetImage(Sprite sprite) => Image.sprite = sprite;
2024-12-02 01:48:44 +00:00
public void AddSelectedAction(Action<ManualCocktailButton> selectedAction)
2024-11-17 04:29:57 +00:00
{
2024-12-02 01:48:44 +00:00
_onSelectedAction += selectedAction;
2024-11-17 04:29:57 +00:00
}
2024-10-24 05:04:40 +00:00
}
2024-11-17 04:29:57 +00:00
}