namespace Mine2d.game; public enum Control { Up, Down, Left, Right, Stay, Confirm, } public static class ControlKeyExtension { public static SDL_Keycode Key(this Control c) { return c switch { Control.Up => SDL_Keycode.SDLK_w, Control.Down => SDL_Keycode.SDLK_s, Control.Left => SDL_Keycode.SDLK_a, Control.Right => SDL_Keycode.SDLK_d, Control.Stay => SDL_Keycode.SDLK_LCTRL, Control.Confirm => SDL_Keycode.SDLK_SPACE, _ => throw new ArgumentException("Invalid control"), }; } }