🚪
Character Interaction System Extended
  • Character Interaction System
    • Visible/Usable conditions
    • Side Movement Handler
    • Side Object Actions
    • Determine Objects Tests
    • Interaction DataObject Class
    • Mechanics Examples
      • Outlined Pickup Object
Powered by GitBook
On this page
  1. Character Interaction System

Interaction DataObject Class

PreviousDetermine Objects TestsNextMechanics Examples

What is it?

This is a utility class that serves as an interaction handler for interactive objects. An instance of this class is created at runtime for each CISInteractionObject component.

You can override several virtual methods within it to customize the game's behavior at various moments of interaction with the object.

Included with the plugin is one preconfigured object - BP_CISDataObjectExample. It toggles the display of a widget above the interactive object and disables player input during interaction.

You can configure this class in two ways. The first method is in the settings of the CISCharacterInteraction component.

The second method is in the settings for each CISInteractionObject component if you need to create specific behavior for individual interactive objects.

To create a new object of this class, simply create a blueprint that inherits from CISInteractionDataObject.

Now let's consider a specific case. For example, during the start of using an object and until it's finished, you want to disable player input.

To achieve this, override the methods for the beginning and end of interaction with the object and implement the necessary logic.

List of all available methods for overriding:

The object entered the character's overlap trigger.
Initialization occurs when the player first enters the object's zone.
The character started moving toward the object.
The character has finished moving towards the object.
The Action with the object has begun.
The character has started using the object
The character has finished using the object.
When the object meets the VisibleConditions.
When the object meets the UsableConditions.