no se en delphi, pero en javascript y muchos otros, te permite leer dos teclas a la vez, que son la tecla Ctrl y Alt. Podrías usar esas.
Así, para mover la nave usas las flechas y para disparar el control o el alt.
Todo sería preguntar si la tecla control o alt está pulsada y si hay alguna más. En javascript creo que era algo así como:
if(event.AltKey && event.keyCode = '143') //imaginando que es alt y flecha izquierda
{
//Se está disparando y moviendo hacia la izquierda
}
if(event.AltKey && event.keyCode == '145') // alt + flecha derecha
{
//se está disparando y moviendo a la derecha
}
Y así con todos.
Estoy casi seguro de que Delphi debe contemplar por separado cuando se pulsa alt o ctrl.
No se si esto te servirá, pero weno, una idea es una idea. :sisi:
Suerte,
un saludo