Hello, just showing what I’ve done so far after this lecture. Made some changes to work with the third person, also I plan to have abilities unlocked by skill points in a player menu.
So I have the scriptableobject already placed on the player (which will be unlocked later) and called by the spacebar.
The first animation is called in the ability
public override void Use(GameObject user)
{
Spirit spirit = user.GetComponent<Spirit>();
if(spirit.GetSpiritPoints() < spiritCost) {return;}
CooldownStore cooldownStore = user.GetComponent<CooldownStore>();
if(cooldownStore.CooldownRemaining(this) > 0)
{
return;
}
if(isChannelSkill)
{
Element element = user.GetComponent<Element>();
element.StartChannelAnimation();
}
SkillData data = new SkillData(user);
targetingStrategy.StartTargeting(data,
() => {
TargetAquired(data);
});
}
and the second in the TriggerAnimationEffect, trying to match the delay time where I want it to happen in the animation.