33 lines
996 B
C#
33 lines
996 B
C#
using BriarQueen.Data.Identifiers;
|
|
using BriarQueen.Framework.Events.UI;
|
|
using BriarQueen.Framework.Managers.Levels.Data;
|
|
using BriarQueen.Framework.Managers.Player.Data;
|
|
using BriarQueen.Framework.Managers.UI;
|
|
using Cysharp.Threading.Tasks;
|
|
using UnityEngine;
|
|
|
|
namespace BriarQueen.Game.Items.Environment.General
|
|
{
|
|
public class EnvironmentTrigger : BaseItem
|
|
{
|
|
[Header("Interaction")]
|
|
[SerializeField]
|
|
private EnvironmentInteractKey _interactKey;
|
|
|
|
[SerializeField]
|
|
private bool _removeTrigger;
|
|
|
|
public override UICursorService.CursorStyle ApplicableCursorStyle => UICursorService.CursorStyle.Inspect;
|
|
|
|
public override async UniTask OnInteract(ItemDataSo item = null)
|
|
{
|
|
if (!CheckEmptyHands())
|
|
return;
|
|
|
|
EventCoordinator.Publish(new DisplayInteractEvent(InteractEventIDs.Get(_interactKey)));
|
|
|
|
if (_removeTrigger)
|
|
await Remove();
|
|
}
|
|
}
|
|
} |