Whats wrong with these blueprints? Casting?

Im trying to make it so that 1 switch actor wont work unless the other one has already be activated.

I have 2 switch actors in this example, 1 is MultiSwitchWhite the other MultiSwitchGreen. I want to activate switch Green only if switch White has been set first. It doesn’t seem to work.

I have bool vars in each isActiveWhite & isActiveGreen both set to false as default. I think I might not understand casting properly but both blueprints do compile fine. The white one activates and changes colour to a green glow, but when I overlap the green one it stays the same.

God forbid I add more switches to the situation like my plan is, heh.

Thanks for looking and any help appreciated.

what actor does the overlap with the switches? The Player? If it is the player then the “Other Actor” input variable of the EventActorBeginOverlap is going to be a reference to the Player actor that generated the overlap. If it is in fact the white switch, the ignore the rest of my comment lol.

What you need to is have a reference to the white switch actor inside the green switch actor. Create a variable of type BP_MultiSwitchWhite inside BP_MultiSwitchGreen and mark the checkbox that says “Editable”. Checking the Editable checkbox will allow you to do the following: select the green switch placed in the world and in the details panel you should see a dropdown of the newly created variable as a dropdown where you should select the white switch actor. Now the green switch will have a reference to white switch placed in the world that you selected.

Now inside BP_MultiSwitchGreen remove the cast and use the whtie switch variable to get the IsActiveWhite? variable.

Also I would change the name of the bool variables to just “Active” or “IsActive”.

It, WORKED!! :D. I didn’t realize I could create a reference and get it to work like that. I can think of a few blueprints I might have abandoned or worked around. Thanks very much.

I don’t know how to mark this post as resolved.