I have an Item pickup System which keeps track of the item picked up, but I just don’t know how to make it activate a pop up with that name when the item is picked up.
Hey there @iNiK_Ko! I’ve got a tutorial that goes over basic locational pop ups on items here:
Disclaimer: One or more of these links are unaffiliated with Epic Games. Epic Games is not liable for anything that may occur outside of this Unreal Engine domain. Please exercise your best judgment when following links outside of the forums.
For items you pick up however, you could just take your reference in your inventory whenever you call the function to pick up an object, you’d also spawn a text widget and set the text of that widget to the name of your item in kind of the same way.
Thanks ! I will check it out.
So the issue I have ATM is that I am not sure how to power/execute my play animation from another BP.
You talked about making a Reference but I am not sure what you mean by that.
In popup, you should make a custom event (right click → Add Custom Event) and call it something like PlayPromptAnimation, then in player blueprint you need to somehow get a reference to the popup and call PlayPromptAnimation.
One of many ways to make a reference is saving it in a variable on creating (if the popup is created in the same blueprint)
I got that part to work now i have 1 last issue and that is that if you pick up multiple items one after each other it skips animations or changes the name mid animation.
anyway to only update after the animation is done ?
[ Need a way to fix these ]
- My [Item Name text variable] Update’s too fast which causes the Text to change in middle of the animation
- My animation Skips as soon as another Item is picked up
Unfortunately I am not aware of any built in options, you’ll need to write your own queue system.
One way to do so is to create an array of prompts, and the flow could be like this:
Create a new prompt
check if the array is empty
If yes: add prompt to an array and play animation
If no: just add it to an array
When the prompt is over remove it from an array and check again if array is empty
If yes: do nothing
If no: play the next prompt in the array and repeat
I hope its understable, right now I can’t show you an example in editor.
Thanks ! i will try to replicate it, will let you know if that worked.