Hands-on Rust: Chapter 15 typo and question

I finally finished! I found a small typo in chapter 15 in the epub. In one spot the code mentions

impl Template {
  pub fn spawn_entities(

This caused a bit of confusion but it should be in the Templates implementation instead.

Secondly I have a question. I am going to try to extend this a bit since after the book I am still a bit lost putting it all together.
I am thinking of making the combat a bit deeper by forcing the character into a new combat screen when they are adjacent to an enemy. Something superficially similar to how the Pokemon games handle the battles.

Do you think implementing this as a new State and conditionally editing the hud/player_input code to handle input differently when in this state, is a good starting point?