Skip to content

v2.0.0

Compare
Choose a tag to compare
@Edvinas01 Edvinas01 released this 07 Jul 15:25
· 94 commits to upm since this release

This release contains major breaking changes and migrates from 2019 (LTS) to 2020 (LTS) in order to utilize generics.

Added

  • BaseScriptableEventEditor by default applies to all BaseScriptableEvent<T> assets. BaseScriptableEventEditor<T> (with a generic type) should be used only if Raise button functionality is required.
  • Additional listener info including listener counts (see below "Added Listeners" label on IScriptableEvent assets).
  • Events, listeners and editors (except editors for Collision* types) for long, double, Quaternion, Collider, Collider2D, Collision, Collision2D types.

Changed

  • All public BaseScriptableEvent<T> methods apart from Raise were renamed to have a *Listener suffix.
  • Each listener now uses a generic BaseScriptableEvent<T> field instead of a concrete implementation. The additional argument for the event type as well as the UnityEvent type is no longer required.
  • All events have been moved to ScriptableEvents.Events namespace to avoid clashing with Unity namespaces.
  • All listeners have been moved to ScriptableEvents.Listeners namespace to avoid clashing with Unity namespaces.
  • trace logging will provide more information.
  • Order of components and scriptable events in menus.

Removed

  • IScriptableEvent interface as it had no use and only added boilerplate.
  • Listeners property from BaseScriptableEvent<T>.
  • All UnityEvent implementations.
  • Duplicate listener check under BaseScriptableEvent<T>.