Search Results for

    Show / Hide Table of Contents

    Class Interactor

    Allows interaction with InteractableObjects. Inherit from this class to implement custom interaction behaviors. Use InteractionHandler and InteractabilityChecker attributes to mark methods responsible for implementations. Details see InteractionHandlerAttribute and InteractabilityCheckerAttribute.

    Use RegisterInteractorAttribute to register marked methods as interaction handlers and interactability checkers for this interactor. Unregistered interactor will not be able to perform interactions even if handlers and checkers are defined.

    Each interactor can only have 1 implementation of interation handling and interactability checker with 1 type of InteractableObject. Interactors without any interaction handlers are allowed but will not be able do interactions.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    Interactor
    GeneralInteractor
    Inventory
    Inherited Members
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(string, float)
    MonoBehaviour.InvokeRepeating(string, float, float)
    MonoBehaviour.CancelInvoke(string)
    MonoBehaviour.IsInvoking(string)
    MonoBehaviour.StartCoroutine(string)
    MonoBehaviour.StartCoroutine(string, object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(string)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(object)
    MonoBehaviour.destroyCancellationToken
    MonoBehaviour.useGUILayout
    MonoBehaviour.didStart
    MonoBehaviour.didAwake
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, out Component)
    Component.TryGetComponent<T>(out T)
    Component.GetComponent(string)
    Component.GetComponentInChildren(Type, bool)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(bool)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, bool)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(bool)
    Component.GetComponentsInChildren<T>(bool, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, bool)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>(bool)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, bool)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(bool)
    Component.GetComponentsInParent<T>(bool, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(string)
    Component.CompareTag(TagHandle)
    Component.SendMessageUpwards(string, object, SendMessageOptions)
    Component.SendMessageUpwards(string, object)
    Component.SendMessageUpwards(string)
    Component.SendMessageUpwards(string, SendMessageOptions)
    Component.SendMessage(string, object)
    Component.SendMessage(string)
    Component.SendMessage(string, object, SendMessageOptions)
    Component.SendMessage(string, SendMessageOptions)
    Component.BroadcastMessage(string, object, SendMessageOptions)
    Component.BroadcastMessage(string, object)
    Component.BroadcastMessage(string)
    Component.BroadcastMessage(string, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: LobsterFramework.Interaction
    Assembly: LobsterFramework.dll
    Syntax
    [RequireComponent(typeof(Collider2D))]
    public abstract class Interactor : MonoBehaviour

    Methods

    | Improve this Doc View Source

    CheckInteractability(IInteractable)

    Check the interactablity between the interactor and the object using the corresponding checker, if no checker is defined, return default value where no interaction is available

    Declaration
    public InteractionPrompt CheckInteractability(IInteractable interactableObject)
    Parameters
    Type Name Description
    IInteractable interactableObject

    The object to be queried

    Returns
    Type Description
    InteractionPrompt

    The interactability of this object

    | Improve this Doc View Source

    GetInteractablesInRange(List<IInteractable>)

    Get all of the interatables in range of this interactor. Note that this does not guarantee that they can be interacted with. Use CheckInteractability to check for this info.

    Declaration
    public void GetInteractablesInRange(List<IInteractable> objects)
    Parameters
    Type Name Description
    List<IInteractable> objects
    | Improve this Doc View Source

    Interact(IInteractable, InteractionType)

    Attempts to interact with the interactable

    Declaration
    public void Interact(IInteractable interactable, InteractionType interactionType)
    Parameters
    Type Name Description
    IInteractable interactable

    The object to interact with

    InteractionType interactionType

    The type of the interaction

    Events

    | Improve this Doc View Source

    OnInteractableAdded

    Called when an interactable gets in range

    Declaration
    public event Action<IInteractable> OnInteractableAdded
    Event Type
    Type Description
    Action<IInteractable>
    | Improve this Doc View Source

    OnInteractableRemoved

    Called when an interactable goes out of range

    Declaration
    public event Action<IInteractable> OnInteractableRemoved
    Event Type
    Type Description
    Action<IInteractable>
    • Improve this Doc
    • View Source
    In This Article
    Back to top LobsterFramework documentation