using UnityEngine; /// /// Interface for interactive objects that the player can interact with. /// Implement this for gates, bridges, ledges, doors, levers, etc. /// public interface IInteractiveObject { /// /// Get the world position where the player should move to for this interaction /// Vector3 GetInteractionPoint(); /// /// Check if this object can currently be interacted with /// bool CanInteract(); /// /// Perform the interaction. player is the GameObject of the player /// void Interact(GameObject player); /// /// Get a display name for this interactive object /// string GetDisplayName(); }