In Vanilla server, player keeps sprinting after attacking other entities, but in Bukkit server the sprinting will be cancelled.
But there is also a feature in Vanilla server is that, player can attack with strong knock back for once since he starts sprinting. If he stops sprinting and starts sprinting again, he can make another strong knock back. Bukkit has realized this feature by disable player's sprinting, but its not correct. You can remove isSprinting judgement in attack() method and add a new boolean called "isStrongKnockback" to it (When isStrongKnockback is true, player can make a strong knock back and then isStrongKnockback will be disabled. isStrongKnockback will be set to true again when player resets his sprinting state. (Also add a getter and a setter to this boolean plz)