So I was looking at your code and I have been thinking about a simple way to allow checking if a player has used an ammo pile. I will start by saying that I have a programming background but haven't gotten anywhere with sourcemod scripting so I don't know if this is doable.
I notice at
http://docs.sourcemod.net/api/index....d=show&id=414& that the function allows assigning flags to a client. I wonder if the same basic idea can be used per ammo pile. Create a unique flag on their client ID for each ammo pile and use this to track. If not, then still some other method of storing a flag.
Another simpler implementation is to assign a flag to each client at server connect and then track each use through ammo[APU_IndividualUses] variable but instead of just incrementing you add the assigned flag value. You can set the this as a 32 bit flag since the server can't handle more players. This would ID each player.
Possible problems are when a player disconnects and another comes in. That player, if assigned the previous flag, wouldn't be able to use the ammo pile. Not that much of a problem since it is still limiting resources as intended but it could get frustrating.
Just a couple thoughts. Love the mod and the idea. Limiting resources is a great way of leveling up difficulty without simply upping damage.