Hello spriteman,
The ClearCollisions command, and the Collisions commands are not used in that manner.
Usually you will set up the collision responses between different 'types' of entity outside your main loop, usually just before it and should never, as far as I know, need to use the ClearCollisions command - which simply removes all collision response relationships between all your different entity types.
I still believe you only need to use the entitydistance to pick up a gun, mainly because the collision commands are usually used to set a relationship between different entity 'types' in regards to their response, whether the first entity will 'stop' 'slide' or 'slide upwards' upon contacting the second, as well as setting the mode of collision detection - sphere to sphere (which is no different than entitydistance to a small extent), or sphere to box or sphere to polygon - with sphere to polygon being overkill for a collision detection between a player and an item to pick up.
The ClearCollisions command, and the Collisions commands are not used in that manner.
Usually you will set up the collision responses between different 'types' of entity outside your main loop, usually just before it and should never, as far as I know, need to use the ClearCollisions command - which simply removes all collision response relationships between all your different entity types.
I still believe you only need to use the entitydistance to pick up a gun, mainly because the collision commands are usually used to set a relationship between different entity 'types' in regards to their response, whether the first entity will 'stop' 'slide' or 'slide upwards' upon contacting the second, as well as setting the mode of collision detection - sphere to sphere (which is no different than entitydistance to a small extent), or sphere to box or sphere to polygon - with sphere to polygon being overkill for a collision detection between a player and an item to pick up.