Jump to content

Dialog word niet meer uitgevoerd


Recommended Posts

Geplaatst: (bewerkt)

Probleem is opgelost: [MAX_PLAYERS] bij new password weggehaald en bij de dini_get een format gezet.

Ik zit met een probleempje mijn login dialog werkte altijd perfect nu moest ik hem aanpassen omdat ik registreren via de site nu doe maar het probleem is dat hij de dialog niet meer in OnDialogResponse uitvoert deze staat mooi op dialogid 0 en werkte altijd er is ook niets mis aan de ShowDialog.

Code:

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new accountfile[256];
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
format(accountfile, sizeof(accountfile), "%s.user", playername);
if(dialogid == 0) { // Our example inputbox
if(response) {
  new message[256];
  new password[50][MAX_PLAYERS];
  password[playerid] = dini_Get(accountfile, "password");
  if(udb_hash(password[playerid]) != udb_hash(inputtext)){
  SendClientMessage(playerid, COLOR_RED, "The password is wrong.");
  ShowPlayerDialog(playerid,0,DIALOG_STYLE_INPUT,"Login in United Roleplay","Welcome to United Roleplay.\nThis account exist, please log in.\n\nPassword:","Login","Cancel");
  } else {
  job[playerid] = dini_Int(accountfile, "job");
  adminlevel[playerid] = dini_Int(accountfile, "adminlevel");
  format(message, 256, "%s you have succesfully logged in.", playername, inputtext);
 	SendClientMessage(playerid, COLOR_YELLOW, message);
 	logged[playerid] = 1;
 	}
 } else {
 	new kickmessage[256];
 	SendClientMessage(playerid, COLOR_RED, "You cannot enter the server without login or registering!");
       	format(kickmessage, sizeof(kickmessage), "UnitedBot kicked %s (reason: no login, no enter.)", playername);
  SendClientMessageToAll(COLOR_RED, kickmessage);
 	Kick(playerid);
 }
return 1; // we processed it.
}

return 1;
}

als je het volledig uittypt in tekst krijg je dit:

Start Public OnDialogResponse, slaag gegevens op in: playerid, dialogid, listitem, inputtextmaak accountfile aan waarin tot 256 tekens in mogen.maak playername aan waarin de lengte van de naam in mag.Haal de playername op via playerid en slaag het op in playername met de lengte van de naam.Start format waarin playername.user in accountfile word opgeslagen met de lengte ervan.check of dialogid 0 is zoja voer alles uit wat erin staat.check of button 1 is ingedrukt zoja voer alles uit wat erin staat.maak message aan waarin tot 256 tekens in mogen.maak password aan waarin tot 50 tekens in mogen en je [playerid] moet achterzetten voor specifieke aanduiding.haal password uit accountfile (playername.user) en slaag dit op in password[playerid]check of gecodeerde password[playerid] niet gelijk is aan gecodeerde inputtext, zoja voer alles uit wat erin staat.vertel in de kleur COLOR_RED aan de speler dat zijn ingevoerde wachtwoord fout is.laat opnieuw de inlog dialog zien.anders...haal job uit accountfile (playername.user) en slaag dit op in job[playerid]haal adminlevel uit accountfile (playername.user) en slaag dit op in adminlevel[playerid]Start format waarin een tekst met playername en inputtext word opgeslagen in message.stuur de format naar de speler in kleur COLOR_YELLOW.zet logged][playerid] op 1 wat aanduid dat de speler ingelogd is.einde if.anders...maak kickmessage aan waarin tot 256 tekens mogen.Stuur naar de speler in de kleur COLOR_RED dat hij de server niet in kan zonder te registreren of in te loggen.Maak een format aan die vertelt met playername dat Unitedbot de speler kickte met reden: no login, no enter.Zend de bovenstaande tekst in COLOR_RED naar alle spelers.Kick de speler.einde if.return 1einde dialogreturn 1einde public

Bewerkt: door megadreams
Geplaatst:

Sorry voor de dubbelpost:

Ik ben na een tijdje zoeken erachter gekomen dat blijkbaar deze new: new password[50][MAX_PLAYERS]; de code zou gestoord hebben.

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...