Fix crash when interacting with event-called NPC

Closes #1315

The actual fix is the change in GameStatePlay.cpp. However, I've also
added some bounds checking to MenuTalker.cpp and NPC.cpp to help prevent
some crashes.

Also fixed are the positions of mouse-over tooltips for events. They
should be positioned the same as tooltips when using no mouse.