Files
2026-03-04 10:03:45 +08:00

76 lines
1.7 KiB
C#

using System;
using UnityEngine;
using UnityEngine.Events;
[Serializable]
public class RodsAudioEvents : MonoBehaviour
{
[Header("Rods")]
[Space(10f)]
public FRod.RodPlayTranform OnRodDamaged;
public FRod.RodPlayTranform OnLineCuted;
public FRod.RodPlayTranform OnFishStriked;
public FRod.RodWhooshEvent OnRodWhooshStart;
public UnityEvent<Transform> OnRodWhooshEnd;
public UnityEvent<Transform> OnRodTension;
private void Start()
{
}
private void OnEnable()
{
FRod.OnRodDamagedGlobal += OnRodDamagedEvent;
FRod.OnLineCutedGlobal += OnLineCutedEvent;
FRod.OnFishStrikedGlobal += OnFishStrikedEvent;
FRod.OnRodWhooshStartGlobal += OnRodWhooshStartEvent;
FRod.OnRodWhooshEndGlobal += OnRodWhooshEndEvent;
FRod.OnRodTensionGlobal += OnRodTensionEvent;
}
private void OnDisable()
{
FRod.OnRodDamagedGlobal -= OnRodDamagedEvent;
FRod.OnLineCutedGlobal -= OnLineCutedEvent;
FRod.OnFishStrikedGlobal -= OnFishStrikedEvent;
FRod.OnRodWhooshStartGlobal -= OnRodWhooshStartEvent;
FRod.OnRodWhooshEndGlobal -= OnRodWhooshEndEvent;
FRod.OnRodTensionGlobal -= OnRodTensionEvent;
}
private void OnRodDamagedEvent(Transform transform)
{
OnRodDamaged?.Invoke(transform);
}
private void OnLineCutedEvent(Transform transform)
{
OnLineCuted?.Invoke(transform);
}
private void OnFishStrikedEvent(Transform transform)
{
OnFishStriked?.Invoke(transform);
}
private void OnRodWhooshStartEvent(float value, Transform transform)
{
OnRodWhooshStart?.Invoke(value, transform);
}
private void OnRodWhooshEndEvent(Transform transform)
{
OnRodWhooshEnd?.Invoke(transform);
}
private void OnRodTensionEvent(Transform transform)
{
OnRodTension?.Invoke(transform);
}
}