I’m new to blueprints, so sorry if it’s a really basic problem.
I have a blueprint that can be selected by the player and rotated however when I put multiple into the level, only the last one placed allows me to de-select and rotate it. I assume it’s something to do with them sharing variables.
It looks like all of this code happens on the thing you are trying to rotate.
The problem is that all those events that say “InputAction” can only fire on the Player Controller, or if the actor has input enabled by the Player Controller.
So you can either drag a pin from your Get Player Controller and Enable Input when an actor is clicked, then disable input after you’re done rotating.
Or you could move all those Input Actions to your Player Controller and pass a reference to the actor you are trying to rotate.
(edit) to answer your question… because it wasn’t put as an answer - it was simply a comment. To simplify - an actor will not respond to an input, unless it has had an “enable input” node included.
A player can only control a single pawn (directly), so if you haven’t specified some way of communicating (one way is through interfaces) between multiple actors, then only one actor/specifically a pawn will react. So if you want to have multiple actors respond to a player input, then you need to link them (through either a direct reference between actors, or through an interface - though this requires a lot more specificity in UE4 than many programming languages).
Note - from my own experience - you also need to be careful that if you have multiple (edit: related) actors that have input enabled - then make sure your event handlers aren’t consuming the input… otherwise the first one that receives the input will destroy it (and any other valid listeners will not respond). If you select the event, in the details it will tell you if its’ consuming the input or not.
Sorry if this doesn’t help… I’m also a beginner, so may be leading you astray. And yes, credit should go to ugmoe for the answer…