Slide in all directions

Hello everyone,
i’m creating a Slide action for my FPP_character, and i want him to slide in all 4 directions, based on which input its been pressed (WASD) and which direction he’s going ( the direction he’s going, not the one that he’s facing ).
Last thing, even if i don’t think this is relevant, the character’s slide depends on speed and direction key (WASD), he can run to gain speed and than slide, or he can jump (gain speed form jump boost) and when he lands, e slide (if correct ke is pressed), hope it makes sense…

ex.
Character run on right side → pressed Slide key ( C ) → Slide form left to right side

Thank you for all