Skip to main content

Examine-Only Interaction

NAMESPACEMyDreamGameStudio.InteractAnything
MENU PATHInteraction System > Utilities > Examine Only Interaction
COMPATIBILITYUnity 6.0+
DOC VERSION

A security gate for secondary mechanics. Put this on a child of an examinable item that should only be interactable while the item is actively being inspected—such as a hidden latch, a combination dial, or a puzzle button.

It disables its listed components on Awake so the source object in the world remains permanently inert. The ExaminePanel automatically re-enables these components only on the cloned object once it is placed on the examine pedestal.


Editor Interface​

EXAMINE-ONLY INTERACTIONSECONDARY ACTIONCLONE GATINGEnsures sub-elements (hidden latches, combination dials, puzzle buttons) remain inert in theworld and only activate when placed on the Examine pedestal.MANAGED EXAMINE ELEMENTS✦ Auto-Detect LocalSaved Colliders0List is empty+-Saved Interactables0List is empty+-Other Generic Behaviours0List is empty+-

Managed Elements​

This component accepts explicit arrays of objects to manage. You can link components that exist on this specific GameObject, or cross-link to sibling objects within the same item hierarchy.

Saved Colliders
Collider[]
Colliders that should be completely disabled in the world. When examined, they are enabled so the Examine Interactor's raycast can hit them.
Saved Interactables
Interactable[]
Core Interactable logic components to suppress. Toggled via their own component.enabled property directly.
Other Generic Behaviours
Behaviour[]
Any other standard Unity components (like custom animation scripts, sound emitters, or particle effects) that should only run while the item is actively being inspected.

Auto-Fallback Logic​

If you do not manually assign any arrays in the Inspector, the ExamineOnlyInteraction script will execute a fallback routine during its Awake() cycle.

It will automatically call GetComponents<Collider>() and GetComponents<Interactable>() on its own GameObject and manage those. This handles the most common use-case (a button guarding its own local collider and script) without requiring you to manually drag and drop references for every single hidden latch in your game.