I need to store separate values to Variables in different Blueprints of the same class during runtime - but I can't figure it out.

Hopefully this makes sense, I’m dealing with a lot of similar terminology here lol.

Basically:

I have NPC’s that I go up and enter dialogue with. When the player exits the dialogue - I want to store the specific row of dialogue for that specific NPC INSIDE the NPC, so when the player goes back to speak to that specific NPC, it picks up where it left off.

And so, my code does work - but every time I exit dialogue, It stores the integer for the row I want saved to ALL NPC’s because they’re all instances of BP_NPC.

I’ve tried using a MAP variable for the display names of each NPC, but MAP’s being pretty new to me I can’t get that to work. I’ve included everything in the code in the screenshot, hopefully this explanation helps.

Is this possible and if so - how can I do this - it’s killing me :slight_smile:

I’m a bit confused by your structure here. Are the NPC’s interacting with You (the player)? Typically the Player interacts and calls Interface events on the other actors.

Also, any logic that modifies an actor should be coded in said actor.
e.g. Set input Mode UI Only should be coded in the character or controller. Not in some other actor.

Oh and please get away from using Get Player Character and Get Player Controller.

If in the character you call Get Controller. If in controller you call Get Controlled Pawn.