Better rate of fire implementation