I can see one possible bug where if you release E, you didn't stop barrage timer, so it will start the cooldown timer and then once barrage timer has actually finished it could start cooldown timer again. Maybe don't use that OR block, if E is released stop the barrage timer, of course with the other condition 'on barrage timer' you don't need to stop it.