I looked at your CAPX.
You have a wait 1.2 seconds and you are resetting the player to idle anytime it is not attacking so that is causing the delay between attacks. The player goes back to idle only after the 1.2 seconds expires so not a quick reaction if you want multiple attacks one right after the other.
I don't use State for player mechanics which can cause delays and odd actions for that very reason.
If you have buttons down or multiple clicks without reading when button or click is up you get weird results.
I would rewrite it without using State but it is good practice so try some different ways of setting your player to idle only when nothing ELSE is happening including standing on the platform.