It might also be that you get the content every frame, while Array Contains only runs once when entering the state; so if you add your Items like tShotgun later on to the Inventory, Array Contains has already finished running.
If so, your best options would be to send a global event to this state when you add Items to your inventory or simulate running this state every frame by sending an event to another state in 'Is Not Contained Event', in the other state have a "Wait" action with like 0.1s or 0.01s delay and connect it back to this state.