When the player uses their heal, they must meet certain conditions, after this conditional check passes, then it can use an audio / visual cue, remove the appropriate energy and update the UI appropriately
The animation will play, which uses AnimNotify to que when to play audio and VFX and to notify when the animation is a "success".
After the animation comes back successful the player then has their health updated along with the UI being updated
Dodge
Components
Animation Component
Audio Component
Breakdown
The dodge has a similar breakdown as the heal.
A conditional check, an AnimNotify for immunity frames.
I added a launch feature to the dodge, so the player gets some "Traversal" out of it, but I was still playing around with that as the project came to a wrap.
Abilities
Systems
Combat System
VFX / Audio System
Ability System
Components
Combat Component
VFX / Audio Component
Ability Component
Breakdown
This one was a difficult one for me. As there are so many different ways to create an ability system.
I decided to use Actor Components to attach them to the player when they come in contact with the shrine.
At the time of contact the shrine goes through a list of predetermined available abilities. Then removes the ability it chooses from the list, so the next shrine doesn't assign the same ability twice.
I have it so when the component attaches, the ability has a data table of information determined to spawn on sockets. VFX, damage, audio, etc.