30 lines
789 B
C#
30 lines
789 B
C#
using UnityEngine;
|
|
|
|
namespace DDD
|
|
{
|
|
public enum InteractionType
|
|
{
|
|
None,
|
|
RestaurantManagementUi,
|
|
Count
|
|
}
|
|
public interface IInteractable
|
|
{
|
|
bool CanInteract();
|
|
bool OnInteracted(IInteractor interactor, ScriptableObject interactionPayloadSo = null);
|
|
InteractionType GetInteractionType();
|
|
GameObject GetInteractableGameObject();
|
|
void InitializeInteraction(InteractionType interactionType);
|
|
float GetRequiredHoldTime();
|
|
}
|
|
public interface IInteractor
|
|
{
|
|
GameObject GetInteractorGameObject();
|
|
}
|
|
|
|
public interface IInteractionSolver
|
|
{
|
|
bool ExecuteInteraction(IInteractor interactor, IInteractable interactable, ScriptableObject interactionPayloadSo = null);
|
|
}
|
|
}
|