I have 2 things to ask

I have a problem when player is holding C4 and on ground is another C4 - it seems that player picked it up however, it doesn't show up in inventory as 2 C4's, so I assume there isn't a check like if player already has C4 like it is with other weapons - when you have primary weapon you can't pickup another primary weapon. So how to fix this - by adding check if user_has_weapon(id, CSW_C4) or making my own pickup code with conditions?
Second thing is register_touch versus WeapPickup event. I need to check if that weapon which is on ground has specific model, if yes give player true on having that item. So, which is better touch weaponbox with conditions or WeapPickup event?
__________________