i literally just dont know how to call a function from another class :/

Finding the Actor in the world is the tricky part. This is where system design comes in. You want to think of a way to spawn/place your item and be able to find it quickly, there is no “right way” to do this - it all depends on your game, how your world is setup, how the player interacts with that world, etc.

Some examples of approaches:

1.) You just use a TActorIterator<MyActor>, which will iterate over every Actor of that type in the world. This is pretty brute force and potentially slow, but it would work. You could also cache the results and do it just at start up to hide the performance hit and make it one-time only.
2.) You attach a volume to your player that does a query every half a second or so, looking for items.
3.) Your Item has a volume that looks for Players and tells the Player “Hey, you’re looking at me” when they come in range.
4.) You have some system that spawns that Actor and then keeps a reference to it, e.g., MyItemManager which spawns all items in the world in random locations and keeps a list of all the Items it’s spawned.
5.) You have some Actor (e.g., MyDungeon) which is responsible for spawning the loot contained with it, and you just ask the Dungeon “Hey, give me a piece of loot please.”
6.) You have some other Item in the world and you manually setup a reference in the Level Editor (e.g., You have AKey which contains a pointer to ADoor which it unlocks).

If you do the “Battery Collector” tutorial, they go over things like this (and use approach #3).