The ready mechanism protects the players from being assigned to a match with settings they didn't explicitly agree with.
It shall be technically possible to start a networked game until all participating players formally agree with the chosen settings.
Therefore assume the readystate from the user interface rather than trusting the server whether the current player is ready.
The server may set readiness to false but not to true.
The ReadyController class stores the ready state of the current player and fires an event if the agreed settings changed.