Not bad; could be better.
Suggestions: it's painful to have the workers follow the mouse ALL the time; you should be able to click on the gold and then leave them there until it's mined out.
In addition to being away from the shelter, the port pad should ALSO be away from the top edge (or at least the top left corner, in my experience), otherwise the soldier just shoots off the top of the screen and/or gets touched by some invisible zombie. Regardless, he should ALWAYS shoot at the zombies attacking the shelter OR be able to be controlled by the user (click-to-target, perhaps).
A pause button would be nice.
The score really shouldn't start counting until the zombies come.
I guess that's it for my comments. Good luck!
But the controlling of the workers and the soldier needs to be rethought. Maybe have the workers move to an area selcted by the mouse and then control the soldier the with the arrow keys/awsd. you have the controls conflicting making all movements once the soldier arrives slow and lagged. If you can somehow overcome the computer industry's problem with having two simultaneous human input devices working together, you will be a millionaire.
You have one touch kill on the soldier and a slow firing rate, you have zombies in a number far greater than the money available, the soldiers ammo, and shelters health will allow for a winning condition. You must re code this game from the ground up.