Download

Scaling an object only as it moves forward

I’ve been trying to figure out how to get this working without much success.

Basically I’ve got an OnComponentBeginOverlap node to start the process when the object overlaps something. It then goes over to a timeline where the object gets twice as big using a linear track.

However, how can I make the timeline only play as the object is moving forward? So that if the object stops, it won’t be growing.

Maybe using a timeline isn’t the best way?

I would appreciate any tips or help.

Here’s a screenshot of my blueprint so far:

bbd66529915e1bb3209c7c1d6a384bf65bfc05d8.png

EDIT:

I managed to get a string print when the object is moving or not, and I got another detection to see if the object is being overlapped with another specific object. However I’m having trouble actually getting something triggered if BOTH of these checks turn out to be true. (object IS moving and IS overlapped with X) If only one of those are true, I don’t want the object to be scaled.

Here’s a blueprint screenshot with the relevant parts:

0af7fade252ad0cb7da07d1914c4fde5457270c9.png

I probably wouldn’t use a timeline, but instead set a boolean to true on the overlap.

In the actor’s tick function, check if the actor is moving forward: https://answers.unrealengine.com/questions/55855/how-to-see-if-a-character-is-moving-forward-relati.html

If he is, increase his size and if not, then don’t.