Fun little top-down shooter with good game "juice" through the big chonky bullets and screen shake. Had a few problems when I would accidentally click off screen with my mouse when moving, and this would make my character stuck moving in whatever direction I was holding when I clicked off, but other than that no problems.
One code thing I noticed is that the player actually moves quicker when you're moving diagonally vs. when you're moving straight to the side or vertically. Since I've fallen into this trap before and I am 99% sure what's causing it, I wanted to let you know so that you could learn for your future projects!
I'm assuming you move the character by moving them X amount of distance to the left when they hold down the left key, X amount of distance down when they hold the down key, etc. But if the player holds down BOTH, they will actually end up moving further than the basic X distance if you move them X distance left and X distance down - think of it how the diagonal distance of a square is longer than any of the sides. In Godot, the way to solve this is to use the Vector2 '.normalized()' function when adding the movement. You can search it up to find more info, but the '.normalized()' function basically returns a Vector2 that has the same direction as the original vector, but a length of 1. You can then multiply the new returned vector by whatever speed you want the player to have to change the length.
Good game, fun graphics, and nice job!