using System.Collections; using UnityEngine; public class OverworldEnemy_Interaction : MonoBehaviour { [SerializeField] private Animator EnemyAnimator; [SerializeField] private string SpotPlayerAnimation; [SerializeField] private AudioClip SpotPlayerSound; [SerializeField] private GameObject CheckmarkObject; [SerializeField] private bool LWM_CouldBeOpen; [SerializeField] private bool DWM_CouldBeOpen; public Battle Battle; [HideInInspector] public bool HasBeganBattle; private void Awake() { if ((bool)Battle.BattleSong) { Battle.BattleSong.LoadAudioData(); } } private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.tag == "Player" && !HasBeganBattle) { HasBeganBattle = true; StartCoroutine(SpotPlayerTimed()); } } public void ForceTriggerBattle() { if (!HasBeganBattle) { HasBeganBattle = true; StartCoroutine(SpotPlayerTimed()); } } private IEnumerator SpotPlayerTimed() { BattleSystem.PlayBattleSoundEffect(SpotPlayerSound); MusicManager.PauseMusic(); CheckmarkObject.SetActive(value: true); PlayerManager.Instance._PlayerState = PlayerManager.PlayerState.Cutscene; LWM_CouldBeOpen = LightworldMenu.Instance.CanOpenMenu; DWM_CouldBeOpen = DarkworldMenu.Instance.CanOpenMenu; DarkworldMenu.Instance.CanOpenMenu = false; LightworldMenu.Instance.CanOpenMenu = false; EnemyAnimator.Play(SpotPlayerAnimation); yield return new WaitForSeconds(1f); DarkworldMenu.Instance.CanOpenMenu = DWM_CouldBeOpen; LightworldMenu.Instance.CanOpenMenu = LWM_CouldBeOpen; BattleSystem.StartBattle(Battle, base.transform.position); Object.Destroy(base.gameObject); } }