Table of Contents

Namespace ElectricDrill.SoapRpgFramework.Events

Classes

AttributeChangedGameEvent

Game event that is raised when an attribute changes. Contains information about the attribute that changed, including its previous and new values.

AttributeChangedGameEventListener

Game event that is raised when an attribute changes. Contains information about the attribute that changed, including its previous and new values.

EntityCoreGameEvent

Game event that carries EntityCore data. Used for events that need to pass information about an entity's core component.

EntityCoreGameEventListener

Game event that carries EntityCore data. Used for events that need to pass information about an entity's core component.

EntityLeveledUpGameEvent

Event to notify the change of level of an entity. Parameters are:

  • the entity that changed level
  • the new level
EntityLeveledUpGameEventListener

Event to notify the change of level of an entity. Parameters are:

  • the entity that changed level
  • the new level
GameEvent

A ScriptableObject-based event system that allows decoupled communication between game systems. GameEvents can be raised to notify all registered listeners without requiring direct references.

GameEventGenerator

A ScriptableObject tool for automatically generating GameEvent and GameEventListener classes. Allows developers to define event schemas and generate strongly-typed event classes at design time.

GameEventGenerator.EventParameter

Represents a parameter that can be passed to a generated game event. Supports both native C# types and custom MonoScript-based types.

GameEventGenerator.GameEventDefinition

Defines a complete game event with its name, parameters, and metadata. Contains all information needed to generate the corresponding C# classes.

GameEventGeneric1<T>

A generic ScriptableObject-based event system that can carry one parameter of type T. Supports both MonoBehaviour-based listeners and code-based Action listeners.

GameEventGeneric2<T, U>

A generic ScriptableObject-based event system that can carry two parameters of types T and U. Supports both MonoBehaviour-based listeners and code-based Action listeners.

GameEventGeneric3<T, U, W>

A generic ScriptableObject-based event system that can carry three parameters of types T, U, and W. Supports both MonoBehaviour-based listeners and code-based Action listeners.

GameEventGeneric4<T, U, W, K>

A generic ScriptableObject-based event system that can carry four parameters of types T, U, W, and K. Supports both MonoBehaviour-based listeners and code-based Action listeners.

GameEventListener

MonoBehaviour component that listens to GameEvent objects and responds with UnityEvents. Automatically registers and unregisters itself when enabled/disabled.

GameEventListenerGeneric1<T>

MonoBehaviour component that listens to GameEventGeneric1 objects and responds with UnityEvents. Automatically registers and unregisters itself when enabled/disabled.

GameEventListenerGeneric2<T, U>

MonoBehaviour component that listens to GameEventGeneric2 objects and responds with UnityEvents. Automatically registers and unregisters itself when enabled/disabled.

GameEventListenerGeneric3<T, U, W>

MonoBehaviour component that listens to GameEventGeneric3 objects and responds with UnityEvents. Automatically registers and unregisters itself when enabled/disabled.

GameEventListenerGeneric4<T, U, W, K>

MonoBehaviour component that listens to GameEventGeneric4 objects and responds with UnityEvents. Automatically registers and unregisters itself when enabled/disabled.

IntGameEvent

Game event that carries integer data. A general-purpose event for passing integer values between game systems.

IntGameEventListener

Game event that carries integer data. A general-purpose event for passing integer values between game systems.

StatChangedGameEvent

Game event that is raised when a stat changes. Contains information about the stat that changed, including its previous and new values.

StatChangedGameEventListener

Game event that is raised when a stat changes. Contains information about the stat that changed, including its previous and new values.

Interfaces

IRaisable<T>

Interface for objects that can be raised with one parameter of type T. Defines the contract for events that carry a single piece of data.

IRaisable<T, U>

Interface for objects that can be raised with two parameters of types T and U. Defines the contract for events that carry two pieces of data.

IRaisable<T, U, V>

Interface for objects that can be raised with three parameters of types T, U, and V. Defines the contract for events that carry three pieces of data.

IRaisable<T, U, V, W>

Interface for objects that can be raised with four parameters of types T, U, V, and W. Defines the contract for events that carry four pieces of data.

Enums

GameEventGenerator.EventParameter.NativeType

Enumeration of supported native C# types for event parameters.

GameEventGenerator.EventParameter.ParameterType

Enumeration defining whether the parameter is a native type, a custom MonoScript type, or an enum.