Wysłany: 2014-02-26, 09:06
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
Witam.Chcia?bym by kto? pom?g? mi z komend? na zmian? nicku.Mianowicie na zmian? has?a zrobi?em tak:
Kod: CMD:zh(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_ZMIANA_HASLA, DIALOG_STYLE_INPUT, "Zmiana has?a", "wpisz nowe haslo", "Zmie?", "Anuluj");
return 1;
}
if(dialogid == DIALOG_ZMIANA_HASLA)
{
if(response)
{
if(strlen(inputtext) >= 4)
{
new konto[128];
format(konto, 128, "Konta/%s.ini", PlayerName(playerid));
djSetInt(konto, "Haslo", num_hash(inputtext));
new a[128];
format(a, 128, "haslo:%s", inputtext);
ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informacja", a, "Ok", "");
}
else SendClientMessage(playerid, CZ, "Has?o musi mie? przynajmniej 4 znaki!");
}
}
Ale nie wiem jak zrobi? zmian? nicku.
By? mo?e przyda si? te? ten kod.
enum gInfo
Kod: {
gZalogowany,
gHaslo,
gAdmin,
gPremium,
gKasa,
gScore,
};
kod pryz rejestracji.
new konto[128];
format(konto, 128, "Konta/%s.ini", PlayerName(playerid));
if(strlen(inputtext) >= 4)
{
djCreateFile(konto);
djSetInt(konto, "Haslo", num_hash(inputtext));
djSetInt(konto, "Adminlvl", 0);
djSetInt(konto, "Premium", 0);
djSetInt(konto, "Kasa", 2500);
djSetInt(konto, "Score", 0);
ShowPlayerDialog(playerid, DIALOG_LOG, DIALOG_STYLE_INPUT, "Panel logowania", "Wpisz poni?ej swoje has?o", "Loguj", "Anuluj");
}
return SendClientMessage(playerid, CZ, "Has?o musi mie? przynajmniej 4 znaki!");
}
}
//przy wyjsciu
forward ZapiszGracza(playerid);
ZapiszGracza(playerid)
{
new kasa = GetPlayerMoney(playerid);
new score = GetPlayerScore(playerid);
new plik[128];
format(plik, sizeof(plik), "Konta/%s.ini", PlayerName(playerid));
djSetInt(plik, "Adminlvl", GraczInfo[playerid][gAdmin]);
djSetInt(plik, "Premium", GraczInfo[playerid][gPremium]);
djSetInt(plik, "Kasa", kasa);
djSetInt(plik, "Score", score);
return 1;
}
Za pomoc piwko i respekt.
Wysłany: 2014-02-26, 10:22
pat5055
Wiek: 26 Na forum: 5805 dni Posty: 24
Nick w MP: ---
Piwa : 841
Kod: if(dialogid == DIALOG_ZMIANANICKU)
{
if(response)
{
if(strlen(inputtext) >= 4)
{
new konto[128];
format(konto, 128, "Konta/%s.ini", inputtext);
SetPlayerName(playerid,inputtext);
//zapis
new a[128];
format(a, 128, "Nowy nick: %s", inputtext);
ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informacja", a, "Ok", "");
}
else SendClientMessage(playerid, CZ, "Has?o musi mie? przynajmniej 4 znaki!");
}
}
"//zapis" zamie? na zapisywanie konta do pliku o ?cie?ce zawartej w stringu "konto".
Po za tym, do gInfo mo?esz doda? jeszcze co? o zmianie nicku - gNick, w?wczas:
Kod: if(dialogid == DIALOG_ZMIANANICKU)
{
if(response)
{
if(strlen(inputtext) >= 4)
{
new konto[128];
format(konto, 128, "Konta/%s.ini", PlayerName(playerid));
djSetInt(konto, "Nick", 1);
format(konto, 128, "Konta/%s.ini", inputtext);
SetPlayerName(playerid,inputtext);
ZapiszGracza(playerid);
new a[128];
format(a, 128, "Nowy nick: %s", inputtext);
ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informacja", a, "Ok", "");
}
else SendClientMessage(playerid, CZ, "Has?o musi mie? przynajmniej 4 znaki!");
}
}
I w onplayerconnect po pobraniu ustawie? gracza z pliku:
[code]
if(gnick)
{
Kick(playerid);
return 0;
}
Wysłany: 2014-02-26, 10:50
Rumun
Wiek: 30 Na forum: 5235 dni Posty: 316
Nick w MP: Rumun
Piwa : 25
Czyli wybra? ten albo ten spos?b ? I mam jeszcze pytanie.Je?eli bym wybra? ten 2 spos?b.
Czy je?eli mam taki kod:
forward ZapiszGracza(playerid);
Kod: ZapiszGracza(playerid)
{
new kasa = GetPlayerMoney(playerid);
new score = GetPlayerScore(playerid);
new plik[128];
format(plik, sizeof(plik), "Konta/%s.ini", PlayerName(playerid));
djSetInt(plik, "Adminlvl", GraczInfo[playerid][gAdmin]);
djSetInt(plik, "Premium", GraczInfo[playerid][gPremium]);
djSetInt(plik, "Kasa", kasa);
djSetInt(plik, "Score", score);
return 1;
}
trzeba by by?o co? w nim zmienia? ?
i podczas rejestracji jest :
Kod: new konto[128];
format(konto, 128, "Konta/%s.ini", PlayerName(playerid));
if(strlen(inputtext) >= 4)
{
djCreateFile(konto);
djSetInt(konto, "Haslo", num_hash(inputtext));
djSetInt(konto, "Adminlvl", 0);
djSetInt(konto, "Premium", 0);
djSetInt(konto, "Kasa", 2500);
djSetInt(konto, "Score", 0);
nale?y dodawa? jaki? kod tu ?
lub tu przy logowaniu?
Kod: new konto[128];
format(konto, 128, "Konta/%s.ini", PlayerName(playerid));
if(strval(dj(konto, "Haslo")) == num_hash(inputtext))
{
new kasa = GraczInfo[playerid][gKasa] = djInt(konto, "Kasa");
GraczInfo[playerid][gAdmin] = djInt(konto, "Adminlvl");
GivePlayerMoney(playerid, kasa);
GraczInfo[playerid][gPremium] = djInt(konto, "Premium");
GraczInfo[playerid][gScore] = djInt(konto, "Score");
SetPlayerScore(playerid, GraczInfo[playerid][gScore]);
GraczInfo[playerid][gZalogowany] = 1;
TogglePlayerControllable(playerid, 1);
SendClientMessage(playerid, JN, "Zalogowa?e?(a?) si?!");
Tagi: zmien :: nick
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: