Nesto sto svi traze, a ima i mnogo drugih provera. Pod OnPlayerConnect Stavite "CheckRPName(playerid, GetName(playerid));"
[pawn]
new rpNameFuck[MAX_PLAYERS];
stock CheckRPName(playerid, name[]) // by RESPONSE
{
if(IsNameInUse(name)) return 1;
else
{
new ch = name[0]; // kreira novu varijablu koja ima vrijednost array name pozicije stringa 0
if(strfind(name, "_") != -1) // ako postoji "_" u imenu nastavlja se
{
if(ch >= 'A' && ch <= 'Z') // ako ch ima vrednost manju ili jednaku 'A' i vecu ili jednaku 'Z'
{
for(new i=0, j=strlen(name); i < j; i++) // za loop
{
if((name >= 0) && (name <= 9)) // number check
{
SendClientMessage(playerid, -1, "Tvoje ime ne sme sadrzavati brojeve."); rpNameFuck[playerid] = 1;
Kick(playerid);
return 1;
}
if(!strfind(name, "_")) // ako je u var i u trenutnom loopu znak _ nastavlja se
{
name[++i]; // povecava se varijabla za +1 sto ce oznaciti pocetak imena
if(name >= 'A' && name <= 'Z') return 1; // ako je taj znak manji ili jednak A ili veci ili jednak Z return-a 1
else // ako to nije tacno
{
rpNameFuck[playerid] = 1; SendClientMessage(playerid, -1, "Prezime mora biti napisano velikim pocetnim slovom."); // onda se stavlja poruka
Kick(playerid);
return 1; // returna 0
}
}
else continue; // ako nije pronadjen znak "_" na trenutnoj poziciji vraca se na pocetak loopa sto oznacava da podize var i za 1
}
return 1; // returna 1
}
else // ako nema na prvoj poziciji velikog slova baca donju poruku i returna 0
{
rpNameFuck[playerid] = 1; SendClientMessage(playerid, -1, "Ime mora biti napisano velikim pocetnim slovom.");
Kick(playerid);
return 1;
}
}
else // ako nema znaka "_" u imenu poruka i return 0
{
rpNameFuck[playerid] = 1; SendClientMessage(playerid, -1, "Vas nick mora biti u formatu Ime_Prezime.");
Kick(playerid);
return 1;
}
}
}
[/pawn]
Moja preporuka vam je da koristite regex.
Mozete sa njim raditi razne provere, kompletnije provere tipa rp ime, email...
Citat: Cadilab poslato Maj 11, 2017, 20:26:27 POSLE PODNE
Moja preporuka vam je da koristite regex.
Mozete sa njim raditi razne provere, kompletnije provere tipa rp ime, email...
Hvala, imao sam u glavi da odradim isto sa regex, ali nikako, ali ipak hvala :)
cemu sluzi `rpNameFuck[playerid]` ako se samo koristi bukvalno ovako rpNameFuck[playerid] = 1;
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 21:03:34 POSLE PODNE
cemu sluzi `rpNameFuck[playerid]` ako se samo koristi bukvalno ovako rpNameFuck[playerid] = 1;
Vjv neka definicja iz moda
Pohvale
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 21:03:34 POSLE PODNE
cemu sluzi `rpNameFuck[playerid]` ako se samo koristi bukvalno ovako rpNameFuck[playerid] = 1;
Pa definisano je new rpNameFuck[MAX_PLAYERS];
Odredjuje da li je ime pravilno ili ne..
Citat: RESPOSNE poslato Maj 11, 2017, 22:07:58 POSLE PODNE
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 21:03:34 POSLE PODNE
cemu sluzi `rpNameFuck[playerid]` ako se samo koristi bukvalno ovako rpNameFuck[playerid] = 1;
Pa definisano je new rpNameFuck[MAX_PLAYERS];
Odredjuje da li je ime pravilno ili ne..
Da ali koja mu je svrha sem da zauzima memoriju i mijenja value?
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 23:05:46 POSLE PODNE
Citat: RESPOSNE poslato Maj 11, 2017, 22:07:58 POSLE PODNE
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 21:03:34 POSLE PODNE
cemu sluzi `rpNameFuck[playerid]` ako se samo koristi bukvalno ovako rpNameFuck[playerid] = 1;
Pa definisano je new rpNameFuck[MAX_PLAYERS];
Odredjuje da li je ime pravilno ili ne..
Da ali koja mu je svrha sem da zauzima memoriju i mijenja value?
I da salje poruku igracu zbog cega je kikovan...
Najs. :)
Moze posluziti...
Citat: RESPOSNE poslato Maj 12, 2017, 15:48:06 POSLE PODNE
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 23:05:46 POSLE PODNE
Citat: RESPOSNE poslato Maj 11, 2017, 22:07:58 POSLE PODNE
Citat: ☢ χÏ...ηdÑ"Ñ_ ☢ poslato Maj 11, 2017, 21:03:34 POSLE PODNE
cemu sluzi `rpNameFuck[playerid]` ako se samo koristi bukvalno ovako rpNameFuck[playerid] = 1;
Pa definisano je new rpNameFuck[MAX_PLAYERS];
Odredjuje da li je ime pravilno ili ne..
Da ali koja mu je svrha sem da zauzima memoriju i mijenja value?
I da salje poruku igracu zbog cega je kikovan...
Poruka se salje sa SendClientMessage f-jom ne mijenjanjem varijable..
Good,posluzit ce nekom...
Cemu sluzi rpnamefuck i isnameinuse?
Moja preporuka je da koristite od Slay-a inc/fs za proveru rp imena gde ima i auto regulacija i 9 slucajeva provera imena i imena koja zaobilaze proveru tipa "Greedy" itd...
http://balkan-samp.com/forum/index.php?topic=69777.msg485843#msg485843
Koristit cu lepo