Object/Actor that heals the player when he is in close range gets interrupted when the player do any attack. How can i make it to be uninterruptible ?

I have an actor which is just an object placed in the world. It has sphere collision and when the player begin to overlapp the sphere collision it starts to heal him and give him mana as well. The problem tough it works as long as i dont attack if i attack it just stops to heal and i need to get out of the collision range and get back to be healed again.
What can be done to make this continuously running and healing no matter what the player does. As long as he is in the close range of it this should not intterupt no matter what…

Here is the BP is pretty simple one and it loops with just a delay node at the end.

Put your heal code in a function, then use SetTimerByFunctionName on begin
overlap and then ClearTimerByFunctionName on endoverlap. Should work.

1 Like

Like this ?

and the timer
bandicam 2023-06-29 23-37-27-651

Anyway i cant set the delay node in a function and it was at the end which loops the heal rate and i had delay node on the emitter so it has timing which emitter spawns. Now i cant use both or is there some workaround to make it loop ? As of right now there is no looping and i just get healed once and thats it have to go out and back in to heal again :frowning:

I wish delay node would work in functions

To make the function loop in SetTimerByFunctionName, tick where it says Looping.

Yeah lol i just see it and tested but it still stops healing when i shoot or use my another skill :confused:

Here how it looks like

I can decrease health or mana with a key while healing and it does not interrupt the healing only when i use any skill

here is this example that this works but not sure why it stops when i shoot

Are you maybe changing the collision profile of the character when you attack?

I dont think so but how can i double check. Is that the “set collision” node on my attack skill ? because im sure that i dont use that there

I’ve just spotted you are calling the start and end function when anything leaves the zone, including maybe a projectile.

That might be it sounds logical those projectile leave the collision. I just tested with another skill i had a movement skill and when im in the circle area this skill do not interrupt the healing.

What can i set on end overlapp so it only count the character when he gets out and ignore all the rest ?

You had it in your first screenshot. Checking the overlapping actor.

Nevermind i fix it i had to put this “is in range” boolean to true up there as well. Now everything works as it should. Thx i will mark the solution with the function timer above that seems to work now :slight_smile:

You had it in your first screenshot. Checking the overlapping actor.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.