Alright, so I'm working on a platformer game, but I can't decide upon the best way to implement "events" into my game. Let's say the player presses the action button while in front of a computer. The game should then pause level physics/entity updates and display a dialogue box. Or say the player reads a notebook they shouldn't have, and an angry villager confronts you (moving from point A to point B). Maybe the screen shakes. Maybe an event calls ANOTHER event if a choice is made/the player has a specific item in their inventory/et cetera.
The thing is, what IS the best way to structure this?