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 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:
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.