Nice idea! I think I didn't saw any other games with this take on the idea. Like some other comments said, some more polish would make this game feel a lot nicer! Really cool to see that you still are working on it.
Also, by playing and looking at the source code, I think you should normalize the player's direction vector: this way, while moving diagonally the player won't move faster than going only on a horizontal or vertical direction. Or maybe that's intended!