I like this type of gameplay.
Some stuff:
It feels weird that I have to start the game with a key press, mouse clicks don't work.
But then the Main Menu is controlled by a mouse.
Try to keep controls across game states consistent.
Being able to use both keys or mouse would be nice.
There are 2 broken seams that scroll by in the title screen.

If you have access to shaders in your render pipeline you could easily fix this by doing a texture offset to fake the scrolling.
The Credits button opens on MouseDown and closes on MouseUp.
This is fine but the Credits image has a Back button built into it that can't be used.
Both styles are fine, just do one or the other.
I like that you can shoot more than once per turn.
But when you miss a shot it doesn't count as part of your turn, only when you hit.
This feels weird, like there is no pushiment for clicking all over the place randomly.
I would be happy to lose part of my turn, it would make me play more carefully.
Especially when shooting into the dark at sound waves, it would make sense to lose part of a turn for missing.
Another solution would be to not play the shoot animation when the tile is empty.
But I'd really rather receive the punishment.
Edit:(after playing some more I notice that the FlameThrower is the only weapon that takes a turn when you miss)
The Esc key instantly quits the current game and goes to the title screen.
It'd be nice to have a pause menu to select Title Screen, Options, Quit etc.
Or just warn the player with a Yes, No button that the game will end.
The tile movement is fun, I like this sort of thing.
The position interpolation on the Vampires movement feels nice.
Try interpolating the player movement between tiles, even if its quick.
It might feel good and make the motion more consistant between all characters in the game.
The font at the top and bottom of the screen is kind of blurry compared to everything else.
The health number flickers when it hits the 170 max.
Run the:
if(health > healthMax)
health = healthMax;
Before the render, not after.
Or just dont run it at all.
Something like:
class Player
{
void Update()
{
if(health < healthMax)
RegainHealth();
}
void RegainHealth()
{
health += healthRecoverAmount;
if(health > healthMax)
health = healthMax;
}
}
When I press SpaceBar I lose a turn and it says "You decided to wait for a moment".
When I press almost any other key like z,x,c,h,u,i,k etc. I still lose a turn but there is no message.
Also it would be nice if there was some obvious benefit to waiting, like regaining more health, or my next shot would be more accurate.
In Windowed Mode there is a strange amount of mouse gutter on the right side.
Enter the window from right to left and the cursor will not appear on screen for more distance than expected.
Enter the window from left to right and the cursor appears instantly like expected.
This also happens at the bottom of the window.
It'd be great to see controls in game.
When you step over a weapon "Press 'P' to pick up weapon" could appear.
I see that you can view the controlls with F1.
Customizable keys would also be a plus.
I find not knowing the name of a weapon until I pick it up and press 'I' a little strange.
You show the stats of the gun when the player steps on it, you could also put the name above the gun.
The color of the stats text is also REALLY dark and hard to read in many places.

The guns all feel very similar.
You could play up the fact that your game is tile based and chess like, using tile formations to differentiate the weapons, items, enemies, etc.
An example of what I mean:



Just curious, what language are you developing in?
I like what you have so far.
keep working and make it great.
