Weeping Angel Effect works on one of them but not multiple at a time

So I’ve got a Weeping Angel enemy, and if you’re not familiar with it, it’s a statue that will always move towards the player, but when the player looks at it, the statue will stop moving. When the player looks away, the statue then continues moving towards the player.

I followed along with this tutorial as well and am providing it here so you can better understand how I set everything up: https://youtu.be/XUFKEJRTaGg?si=R7rSZkI1D70D6tfr

I currently have working blueprint components that allow this to work for one Weeping Angel in the level, but if I have two or more Weeping Angels, both will move towards the player at first, but when I look at both of them and then look away, it only lets one move and the other is just stuck.

An important note is that I am utilizing a PawnSensing component on the player as this will allow for detection of the Weeping Angels.

Freezing Weeping Angel code on the Player Blueprint:

Weeping Angel movement code:

I think it might be due to the fact that I’m only casting to one Weeping Angel blueprint at a time, but I’m not 100% sure. How can I fix this so it will allow all Weeping Angels in the level to properly work?

Hey @DKEditor! Cool idea to make this into an enemy/trap/antiforce! It’s a classic. Boos in Super Mario is another way you can describe it!

So here’s what I’m thinking- the “On See Pawn” might be overlapping itself because it’s executing all of this code on one angel at a time and interrupting itself. I’m thinking maybe during the delay, the other is taking over and the first one never gets reactivated due to that. So here’s what you do.

Take out all of this after the cast. Don’t delete it- you’re going to rebuild it on the weeping angels themselves as an event!

Go to the BP_WeepingAngel and use a “CustomEvent” named whatever you want, like “EventFreeze” or “EventStoneform” or something (try to keep “event” at the front for naming convention and search purposes!).

Put everything after your sequence from the player character here, on the BP_WeepingAngel, on this event. The disable, the stop audio, all of that. Compile and save it.

Now, go back to your player and instead of all of that extra code you’ll pull off of “As BP Weeping Angel” and use the “EventStoneform” or whatever you named the Event. Aaaand that should do it? Hopefully?

The point here is to try to make the processing threads separate and not be running off of one execution line, but to split it to one per statue. :slight_smile:

1 Like

Yep, that seemed to do the trick! Having it run as its own threads seemed to work perfectly! Thank you for your help!

For those wondering what I changed, here is the updated code:

Updated code inside of Player BP:

Newly created Weeping Angel BP event:

1 Like

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