Array Contains always returns false

I have an event that checks if there’s space in the array and then Sets Array Element to self. This works fine and I tested and made sure the actor that is self is there. I then put a branch checking if the array contains self before it checks for space and assigns, so that I can make the item stack. The problem is my Array Variable>Contains>Self returns false. The blasted thing is there though. What do I do to get around this?

Is it changing the name of the item once it’s in the array and it’s checking for that instead of the item itself? I’m trying to figure out why this doesn’t work. I tried making a variable of the same class as the child blueprint I’m specifically working with (the array is of type PickUp blueprint, and the item is a child of PickUp, so I made a variable of the childBP) and tried looking if it contained that. That returns True! But! Then I can’t access it at all - “Accessed None” says the error, when I try to compare variables that are in it after using a Find and Get node together to access it. So it’s there but it’s not there??

Ok I figured it out but I’ll leave this here because I found a great little trick for this. So if you have trouble using the Contains or Find nodes, just use a For Loop and make a variable in the item and check that the value of that variable is the same as the value on the one you want. I made a simple name variable of string and just checked that. Worked like a charm. :slight_smile:

2 Likes