How to make a boomerang for a 2D sidescrolling game?

Alright so I finally managed to get the boomerang working with the help provided here, albeit with some issues that need to be resolved.

#1.) The first issue is that when the boomerang returns to the player character it gets stuck to the player character instead of returning to their hand.

The issue seems to be that everything after the AddWorldOffset node isn’t working for some reason. It might be because I wasn’t able to hook up the boomerang variable to the Is Overlapping Component node in the same way as usa423’s example but I can’t say for certain.

#2.) The boomerang only goes right even if the player character is facing left.

In this case I almost 100% as to why this isn’t working properly. The ‘Is Facing Right’ Boolean variable doesn’t actually do anything as I don’t know how or where I’m supposed to set up the underlining logic for the Boolean to actually work.

#3.) The boomerang travels too far when thrown, going off-screen before it makes its trip back to the player. I tried cutting the timeline for the boomerang’s movement in half which did reduce the distance that the boomerang travelled but resulted in a weird issue where the boomerang would get caught on objects on its return trip. This is strange because the boomerang is normally able to move completely unimpeded, including through solid objects so I’m not sure why halving the timeline is effecting this.

#4.) And finally, related to the above, I mentioned that the boomerang currently is able to move through all objects. Generally, this is fine as I want it to be able to cut through enemies & to not get caught on solid objects / scenery while its returning to the player, but I would also like for the boomerang to reverse direction and return to the player as soon as it hits a wall rather than travelling through it.