Not sure if I did something funky with my interfaces, but they all are expecting a target to an interface now. When left for target (self) they fail to actually call their event.
However, if you cast the object from itself, it finally works. I experienced this while running through the tutorial made by Unreal Engine for a basic inventory for UMG. Both of the interface calls created in this tutorial continue to fail until I cast them to the actual interface, even though a target of self should suffice. Is anyone else experiencing this?
i dont actually know what is that white input even do, hope someone would say here
but there are two others types of interface event call nodes
the “local one”
and the message one
local one is one which appears if interface what you want to call has implemented into blueprint where you wanna call it from, and has a fixed target of “self”
message one is actual interface message, with target being “the target” where you want to call interface event, also you can plug self to the target so it would act as a “local one”
if there are same interface implemented into blueprint where you wanna call from, Message one would be hidden and only “local one” would appear, but you can find message one with context sensitive disabled. hereall 3 of them in order: “local one” “white one” (which you using) and “Message one”
i hope my poor writing skills would help.
I figured out my resolution to my problem, however it seems odd that I need to cast to the coresponding blueprint to ensure the call is made. I have to feed the object of the blueprint into the object of the cast to the interface, and cast that into the target of the interface call.
Not that it totally blows my mind why it is this way, all the previous interations of this seemed to do it inherently.
I dont understand what you saying, i’m using interfaces everywhere now, due to nature of the project, i would say i have 200+ interface functions and dont have any major issues using them. Everything is simple - call interface, “feed” the target, done.
Do you mean to call it through an actor reference instead? I haven’t had any trouble with it. Drag off the actor you want to interface and type in the function name. It should give you the node that uses an actor reference instead of an interface reference.