mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Add confirmation on new player registration (#6849)
* Attempt to add registration confirmation Using SRP auth mechanism, if server sent AUTH_MECHANISM_FIRST_SRP that means the player isn't exist. Also tell player about the server and chosen username. Local game has localhost as IP address of the server. Add RenderingEngine::draw_menu_scene() to draw GUI and clouds background. aborted -> connection_aborted * Rewrite information message text Client::promptConfirmRegister() -> Client::promptConfirmRegistration()
This commit is contained in:
parent
fad263dec9
commit
792752997c
9 changed files with 378 additions and 13 deletions
|
@ -318,6 +318,10 @@ void Client::step(float dtime)
|
|||
initial_step = false;
|
||||
}
|
||||
else if(m_state == LC_Created) {
|
||||
if (m_is_registration_confirmation_state) {
|
||||
// Waiting confirmation
|
||||
return;
|
||||
}
|
||||
float &counter = m_connection_reinit_timer;
|
||||
counter -= dtime;
|
||||
if(counter <= 0.0) {
|
||||
|
@ -974,6 +978,18 @@ void Client::sendInit(const std::string &playerName)
|
|||
Send(&pkt);
|
||||
}
|
||||
|
||||
void Client::promptConfirmRegistration(AuthMechanism chosen_auth_mechanism)
|
||||
{
|
||||
m_chosen_auth_mech = chosen_auth_mechanism;
|
||||
m_is_registration_confirmation_state = true;
|
||||
}
|
||||
|
||||
void Client::confirmRegistration()
|
||||
{
|
||||
m_is_registration_confirmation_state = false;
|
||||
startAuth(m_chosen_auth_mech);
|
||||
}
|
||||
|
||||
void Client::startAuth(AuthMechanism chosen_auth_mechanism)
|
||||
{
|
||||
m_chosen_auth_mech = chosen_auth_mechanism;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue