All notable changes to this project will be documented in this file.
- Restored support for older versions of Godot (4.0^).
- IArea and IVector.
- Area2DAdapter, Area3DAdapter, Vector2Adapter, Vector3Adapter.
- InteractorSpatial abstract class.
- Long interaction to CharacterInteractor2D.
- The plugin supports operation from custom locations.
- Improved code style.
- Most logic from Interactable2D/3D have been moved to Interactable.
- RayCast field in RayCast2D/3D adapter is now public.
- Interactor2D/3D inherits from InteractorSpatial.
- Some logic from CharacterInteractor2D/3D have been moved to InteractorSpatial.
- Rewritten documentation.
- MouseInteractor2D for interacting in 2D objects via mouse.
- Nullable types are correctly handled.
- Memory leak when checking for closest Interactable.
- Signals in Interactable:
- LongInteractedEvent
- Signals in Interactor:
- LongInteractedWithInteractable
- LongInteract method in Interactor.
- LongInteractionTime property to Interactor.
- Simplified namespaces.
- Updated documentation.
- Renamed AreaInteractionType to EAreaInteractionType & moved to InteractionSystem.Enums namespace.
- Moved EHighlightOn to InteractionSystem.Enums namespace.
- IsFocused, Focusing, IsClosest & ClosestInteractable properties to the Interactor class.
- Example scene: 3DExample.
- Example interactables: Box, OutlineBox, HighlightBox, AllInOneBox.
- Methods: Interact, Focus, Unfocus, Closest, NotClosest are no longer static & do not accept Interactor as second argument.
- Overloads in Interactor2D/3D for methods: Interact, Focus, Unfocus, Closest, NotClosest.
- Example scenes: ExampleInteractable3D, ExampleInteractableProp3D.
- Example interactables: InteractableBox, InteractablePropBox.
- InteractableOutlineComponent & InteractableHighlighterComponent.
- Docs for InteractableOutlineComponent & InteractableHighlighterComponent.
- Metadata added to Area2D/3D takes up less space by writing the path to Interactable instead of a reference.
- Interactable2D/3D tried to set metadata for Area2D/3D on _Ready when running in editor.
- InteractableProp3D.
- Copy of README.md & LICENSE in addon's folder.
- Configuration warnings for Interactable2D/3D.
- Godot SDK version to 4.3.0-dev.1.
- Improved folder structure.
- Updated meshes to use new format.
- Moved Interactables & Interactors under namespaces.
- EOL to LF.
- Moved documentation to the docs folder.
- The exported ZIP file will contain only the addons and examples folders.
- Removed unnecessary comments.
- Interactor class inherits from Node.
- Interactor2D/3D inherits from Interactor.
- Interactable class inherits from Node.
- Interactable2D/3D inherits from Interactable.
- Documentation has been expanded.
- IInteractor interface.
- GetRayCastedInteractable method from Interactor.
- IInteractable interface.
- New examples.
- Plugin implementation in C#.
- More documentation sections in README.
- The ability to debug a plugin (or a game created with it) via VS Code.
- Renamed some signals.
- Renamed some classes.
- Renamed entries in Input Map.
- Renamed/changed some exported variables.
- The way the highlighter is added to the object has been significantly simplified.
- The way the outline is added to an interactive object has been changed (the shader is no longer needed).
- Old examples.
- Outline shader.
- Plugin implementation in GDScript.
- Five new signals for
CharacterBody2DInteractor
andCharacterBody3DInteractor
:interacted_with_interactable
focused_on_interactable
unfocused_interactable
closest_interactable
not_closest_interactable
- Updated examples to reflect new changes.
- Support for
2D
. Interactor2D
class.Interactor3D
class.Interactable2D
class.Interactable3D
class.CharacterBody2DInteractor
class.
- Code refactoring.
- Better directory structure.
- Removed
Interactor
class. - Removed
Interactable
class. README
adjusted to reflect new changes.
InteractableProp
is fully functional, but it is still in anearly
version, a lot can change.Example 3
showing howInteractableProp
works.
- Renamed the main folder and the main file.
- New plugin logo.
CharacterBody3DInteractor
has the ability to trigger theinteracted
signal viaArea3D
on collision or when the interaction button is pressed.CharacterBody3DInteractor
has the option to disableRayCast3D
's ability to runinteracted
signal.- Entirely new examples.
- Removed external documentation in favor of that built into the extension.
InteractableProp
is underInteractable
in node tree (Still WIP).
- Fully reworked examples.
- More extensive documentation.
- Warnings from
CharacterBody3DInteractor
now displays correctly. Area3D
in an example do not correctly detectInteractable
.- Plugin does not load due to errors after removing the old icon.