Added interface for the GameEvent instead of a fixed default impl