ProjectDDD/Assets/_DDD/_Scripts/GameEvent/InteractionSubsystem.cs

26 lines
907 B
C#
Raw Normal View History

using System;
using UnityEngine;
namespace DDD
{
public interface IInteractionSubsystemObject
{
void InitializeSubsystem();
bool CanInteract();
bool OnInteracted(IInteractor interactor, ScriptableObject payloadSo = null);
}
public interface IInteractionSubsystemObject<T> : IInteractionSubsystemObject where T : Enum
{
T GetInteractionSubsystemType();
void SetInteractionSubsystemType(T inValue);
}
public interface IInteractionSubsystemSolver
{
}
public interface IInteractionSubsystemSolver<T> : IInteractionSubsystemSolver where T : Enum
{
2025-08-27 04:18:44 +00:00
bool ExecuteInteractionSubsystem(IInteractor interactor, IInteractable interactable, ScriptableObject payload = null);
bool CanExecuteInteractionSubsystem(IInteractor interactor = null, IInteractable interactable = null, ScriptableObject payload = null);
}
}