Event Mechanic

I was thinking about a way to use an event driven mechanic where you move over a map with your player and dependant on the location of the map there is a certain chance that an event will come up. For example I am driving a car on a drawn map of a city and if the player is in a certain location a dialog pops up and the player can choose from different options which will affect further events in the future.

What would be the best method to get this working?

I have already a way to determine the location, is it a good idea to make different array lists for each location which contain an “event” object that refers to a particular event and then randomly choose one of these events? I am a bit confused if it is a bit unwieldy to create a class for each event.