Гарольд
Умник
Здравствуйте
Я решил создать такую хорошую и простую функцию, разделение РП ника на Имя и Фамилию
Примечание: не использовать на нонРП ники, а то получится полная ерунда.
Применение:
new name[24], surname[24];
GetNameAndSurname(playerid, name, surname);
Проверка на РП ник от OKStyle:
Я решил создать такую хорошую и простую функцию, разделение РП ника на Имя и Фамилию
Примечание: не использовать на нонРП ники, а то получится полная ерунда.
PHP:
stock GetNameAndSurname(playerid, name[], surname[]) { // name, surname - переменные, куда записываем имя и фамилию
new plname[24];
GetPlayerName(playerid, plname, 24); // узнаем ник игрока
new RP = strfind(plname, "_"); // Узнаем индекс символа '_' в нике
strmid(name, plname, 0, RP - 1, 255); // внедряем в переменную имени имя (стартуем с начала имени, кончаем перед '_')
strmid(surname, plname, RP, strlen(plname), 255); // внедряем в переменную фамилии фамилию (стартуем с символа '_', кончаем в конце ника)
return true;
}
new name[24], surname[24];
GetNameAndSurname(playerid, name, surname);
Проверка на РП ник от OKStyle:
PHP:
new PlayerName[MAX_PLAYER_NAME],upper;
GetPlayerName(playerid,PlayerName,sizeof(PlayerName));
if(strfind(PlayerName,"_",true) != -1)
{
SendClientMessage(playerid,0xFF0000FF,"Ваш ник не соответствует разрешённым на сервере.");
Kick(playerid);
}
for(new a; a < strlen(PlayerName); a++)
{
if(a >= 0x30 && a <= 0x39) // если цифры в нике
{
SendClientMessage(playerid,0xFF0000FF,"Ваш ник не соответствует разрешённым на сервере.");
Kick(playerid);
}
if(PlayerName[a] == '_')
{
{
if((PlayerName[0] >= 0x61 && PlayerName[0] <= 0x7A) && (PlayerName[a+1] >= 0x61 && PlayerName[a+1])) // если ааа_ббб, а не Ааа_Ббб
{
SendClientMessage(playerid,0xFF0000FF,"Ваш ник не соответствует разрешённым на сервере.");
Kick(playerid);
}
}
}
if(a >= 0x41 && a <= 0x5A) // если ААа_Ббб или любая комбинация, где больше 2х заглавных букв
{
upper++;
if(upper>2)
{
SendClientMessage(playerid,0xFF0000FF,"Ваш ник не соответствует разрешённым на сервере.");
Kick(playerid);
}
}
}
Последнее редактирование:
