Files
aibis-dream/Assets/Scripts/MiniGame/Engine/OilGate.cs
T
2024-11-24 17:20:30 +08:00

53 lines
1.1 KiB
C#

using DG.Tweening;
using UnityEngine;
namespace AibisDream
{
public class OilGate : MonoBehaviour
{
private SpriteButton _spriteButton;
private EngineSystem _engineSystem;
private void Start()
{
_engineSystem = transform.parent.GetComponent<EngineSystem>();
}
private void OnEnable()
{
_spriteButton = new SpriteButton(gameObject);
_spriteButton.OnButtonDown += ButtonClick;
_spriteButton.OnButtonUp += ButtonUp;
_spriteButton.OnButtonHold += ButtonHold;
}
private void OnDisable()
{
_spriteButton = null;
}
private void Update()
{
_spriteButton?.CheckButtonClick();
}
private void ButtonClick()
{
transform.DOPause();
transform.DORotate(new Vector3(0, 0, 45), 5f);
}
private void ButtonUp()
{
transform.DOPause();
transform.DORotate(new Vector3(0, 0, 0), 0.2f);
}
private void ButtonHold()
{
_engineSystem.AddOil();
}
}
}