namespace ActionRPG.Interfaces { public enum InteractionType { Press, Hold } /// /// Implement this on any object the player can interact with (doors, chests, NPCs, etc.). /// public interface IInteractable { /// Whether this object requires a tap (Press) or a held input (Hold). InteractionType InteractionType { get; } /// Called when the player confirms an interaction. void Interact(); /// Called when the player's raycast enters range of this object. void OnFocused(); /// Called when the player's raycast leaves this object. void OnLostFocus(); } }