Sketched possible solution for player.