I have set up a Blueprint function library to use for callbacks for all my menu buttons in UMG.
I’m not getting any error messages, but my ButonCallbackQuit function is never entered.
Instead, it is skipped and the next function GetHappyMessage is run.
Why is this?
so should i change the function to be nonstatic? changing the function to blueprint pure makes it seemingly unusable. sorry, i’m not sure what to do to accomplish the goal of setting up my sample c++ code to be used in blueprints. should i maybe remake a more general question?
Whats what Pure nodes is, they are getter nodes called if needed by blueprint VM to get output value, because of that they should not set/change anything only get or compute. You should definitely use them on “Get Happy Message”
Static functions can’t access instance state. BlueprintCallable implies that it is calling it on the instance. Libraries don’t really have an instance so that’s fine. Doing the same on some Actor derived class would not be correct
i did some further debugging and found that the library function was being entered and silently failing with an access violation, producing no side effects.
i opened a new issue to determine if that is intentional behaviour or to see if i’m doing something horribly wrong.