fix inifinite loops

See at 658e862d41067eb7cc08ab0528adade31a530e59, the else branch does not do any input, but should set `action` to "QUIT" to terminate the loop, otherwise the loop becomes a infinite loop as `action` is never changed and the loop condition is never false.

Same thing happens in `game::list_monsters`

Should only happen when there are no (unfiltered) items/monsters around - if so, than it fixes #7359.