On the item check you can just say for each slot if whichitem=type then set found to true, stop loop(system action), so that stops at the correct item slot so then you can just use action add 1 also which would be the correct slot, this gets rid of the other following events.
For the following bit where you are about to call add to inventory you don't need all the duplicate events, just one of them blocks and it sends through the type anyway, so that would be basically on 'not found' condition - > create slot, add to inventory with type etc
And for add to inventory function again you just need single block for those actions not the duplicated ones, the only difference is the frame, instead you could use different animations on 'Item' object for each item and use set animation to 'type', alternatively create separate objects for each item and then create object by name 'type'