How do I call a function without any instance of the class it is from

How can I do this in blueprint?

Basically I want to be able to use an item in my inventory even though that actor only theoretically. I have the class that the actor is from saved as a variable, and I want to take that class and use a function out of it.

There is 3 way in my knowledge to do this:

  1. Put that function into your player controller blueprint. That way all you have to do is get your current player cotnroller, cast to it’s class then call the function.

  2. Put one instance of the class in the scene, hide it. Then all you need to do is get the first instance of that class and call the function.

  3. Create a static function in C++. No need any instance, though you need to know C++ to do this.