Forcefield spell: A forcefield will deflect attacks. It is essential for any player. Suggested implementation: Derive a subclass of ASpell called ASpellForceField. Add a bounding sphere to the class, and use that in the ASpellForceField::Tick() function to push the monsters out.
What's next? I would highly recommend that you expand on our little game here. Here are some ideas for expansion:
Create more environments, expand the terrain, add in more houses and buildings
Add quests that come from NPCs
Define more melee weapons such as, swords
Define armor for the player, such as shields
Add shops that sell weapons to the player
Add more monster types
Implement loot drops for monsters
You have literally thousands of hours of work ahead of you. If you happen to be a solo programmer, form working relationships with other souls. You cannot survive in the game marketplace on your own.