Welcome back everyone. Once again in the last video we got our BP player to shoot out a fireball, but it's not very cool yet because we don't have our character playing a cast animation while the fireball is shooting out and also there is no visual effect or character exertion effect while that's happening. So we're going to take care of all that in this one a lot of work to do here. So let's jump right to it. So come to your content Metroidvania animations folder, we want to do a lot of work inside of our counters. Anam BP, double click on her to open her up.
And we're going to start off here in the Event Graph and if you can't find that it is also in the my blueprints tab. You can double click on your Event Graph to find this. Firstly, we need to pass a variable from our BP player to our event graph here to instruct state machine. What's going on that our character has used a fireball. So if you remember from our previous video in our BP player, I've jumped over to this blueprint right here. inside of our magic black fireball, we created a variable called be used fireball and this is what we were going to pass to our anim blueprint to instruct which animation to use.
Okay, so now we need to pass that one along to our animation blueprint. So back over here in our counters, and BP, we are already doing a lot of this off of our event blueprint update animation here is where we're passing all this information from our BP player to this animation blueprint, and I'm going to drag out of our cast a BP player here and find us fireball, we're going to get that. And now I need to pass this to a variable that I create here inside of this animation VP, so let's create one variable right there and we're simply going To call this use fireball, question mark like so then I'm going to drag and drop it. And if I set it right on top of this use fireball, it will create a setter straight away. Let me just organize this a little bit better here.
And we're going to be adding to this as we go along, expand this out. Okay, so that's all good. So now we can jump on over into our state machine and start looking up some animations. So the way to do that is down in the my blueprints tab, under your animgraph. If you click this little drop down here, here is your default state machine. Double click on that, and there it is.
Firstly, we need to create a brand new state we want to be able to shoot out a fireball from an idle or a running animation. So let's right click right about here in your graph. We're going to add a state and we're going to Call this stand, fireball. And with that position right here in the graph, I am going to double click on it. And we want to instruct what animation we want to have play when we shoot out a fireball. Now, something to consider here is we're not just going to be playing an animation when our character is standing completely still, they could be running as well.
So what we need to do is we want to blend together two animations. How are we going to do this? Well, the first animation that I want to blend is our Countess idle run that you can find here in your Asset Browser in the lower right, so drag and drop that into your graph. This is a blend space. And the other animation that I want to blend to this is called cast, simply cast right there. So if you can drag and drop this into your graph.
Okay, now, we need to feed this blendspace a speed value that is available right down here in our variable section that is going to instruct how fast our character is actually locomoting so that they can play a walk, jog, run, etc. Now to blend these two animations together, I'm going to be looking for a special node by right clicking called layered blend per bone. So this is how it works, we've got two poses that it's looking for, you consider the base pose as the lower body. So we'll consider the lower body our legs are walking or running or jogging being from the idle run. And this blend pose zero is going to be our upper body, the casting animation. Now this casting animation basically consists of her sticking her hand out and kind of a cool way there you can see as I hover over it, what it looks like.
Okay, and then we want to take the result of this and plug it into this output animation pose. Now, something you got to be sure to do here in this layered blend per bone node over in the Details panel, we need to set up some extra information. Under where it says layered setup, click this little drop down arrow, click right here where there is this zero element, we need to add a branch filter, click this little plus button over here. And underneath this zero element, expand that out we need to feed this a bone name. Why? Well, by fitting a bowl name here, we're essentially instructing this whole deal right here.
Where do we want to split our animation? Which bone do we want to split this animation at? Well, the one that I want to split this at is called spine underscore oh one. Now I can demonstrate this a little bit easier by just jumping over to this skeleton tab right here. So I'm gonna click over on here Here is our character skeleton. And in the skeleton tree, I'm simply going to look for spine and there is my spine underscore oh one note exactly how it is spelled out.
And if I double click on it, there is our characters spine or one bone. Essentially what I'm saying here is, I want there to be a split animation. I want the idle run for the lower animation from this point down. And I want the cast animation to play from this point up in the animation that we are instructing for our stand. fireball Okay, so make sure you've got spine underscore oh one listed right there. Okay, so that is looking well in good.
Now we need to add some transition rules jump back to your default state machine here. We have an animation for our stand fireball But no rules link to it. So I am going to drag from our idle run right about here, left click and drag. And it should have just attach it. There we go create that transition. And then I'm going to drag a wire back.
So we want to be able to go from idle run to stand fireball and back. Again, if you don't do it just quit, right, it's not going to create that transition. Okay, there we go. And then I also am going to create a transition from our standard fireball to our jump start state, like so. Okay, the first transition that we're going to create is for this idle run to a stand fireball, so make sure that the arrow is running in that direction. Double click on this transition, and we want our player to transition from an idle run to a stand fireball.
When they have used a fireball, you can drag and drop this variable directly in here, that's our transition rule. As soon as we've detected the Yes, they've used a fireball, play that animation. Okay, jumping back to our state machine here. Let's now set a rule for when we need to go back from a stand fireball to an idol runs, double click on this. In our transition rule for this, we are going to right click and do a search for time remaining. And as you start to whittle down, what you're looking for is time remaining ratio, cast that guy right there.
So bring it in, then drag off of it. And we're going to be looking for a less than or equal to float less than or equal to float node. And we're going to say if the ratio of our cast animation is less than 30%, point three, essentially it's 30%. It still has 30% To go or less, then we're going to transition back to our idle slash run state. Okay, so we got that one done. Let's jump back to our state machine and set our next transition rule we've got a bunch of transition rules to set in this one by the way, our transition rule from a stand fireball to a jumpstart click right here, double click on that is simply going to be are we in the air so you can drag and drop that variable is in air into the can enter enter transition, we're saying hey, has a player gone airborne if they have we're going to transition out of our casting of the fireball to a jumpstart.
That is all well and good. next state that we're going to add is going to be smack dab in the middle here, right click right in the middle of this diamond shape. We're going to add a state this one is going To be called jump. fireball Yes, we are going to allow you to shoot out a fireball while you are in the air.