This is because there must be only one variable that controls when the reloading animation activates, and when a gun's ammo remaining reaches zero, the variable is set to something that disables the reloading animation and the ammunition to be loaded again.
There just needs to be a variable for each weapon that disables the animation for each specific weapon, instead of disabling all three at once.