Fixes issues for #4303

This basically involves fixing the stuff in issue #4303

Fixes #4303
I think it's in reference to the for() loop and show_message()

Considering visible_message() is how we do things these days.