Nik_Ull Дата: Воскресенье, 13.02.2011, 12:44:30 | Сообщение # 1
Группа: Пользователи
Сообщений: 184
Как сделать регистрацию на сервере??? Чтоб например когда человек заходит, он должен ввести /reg и пароль и /log и пароль.
Сообщение Как сделать регистрацию на сервере??? Чтоб например когда человек заходит, он должен ввести /reg и пароль и /log и пароль. Автор - Nik_Ull Дата добавления - 13.02.2011 в 12:44:30
valych Дата: Воскресенье, 13.02.2011, 16:16:23 | Сообщение # 2
Группа: Проверенные
Сообщений: 501
Nik_Ull , там целая система)) Могу помочь, но за
Видео-уроки по pawn: https://www.youtube.com/channel/UCizhZElk8rxIPEcP4BHwdxg
Сообщение Nik_Ull , там целая система)) Могу помочь, но за Автор - valych Дата добавления - 13.02.2011 в 16:16:23
Gillette Дата: Воскресенье, 13.02.2011, 17:59:18 | Сообщение # 3
Группа: Заблокированные
Сообщений: 134
Да, там целая система связанная например с LVL и т.д. Вот тебе например, команды и текст, чтобы писало когда заходит человек. Команды: Code
if (strcmp(cmd, "/login", true) ==0 ) { if(IsPlayerConnected(playerid)) { new tmppass[64]; if(gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in."); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /login [password]"); return 1; } strmid(tmppass, tmp, 0, strlen(cmdtext), 255); Encrypt(tmppass); OnPlayerLogin(playerid,tmppass); } return 1; } if (strcmp(cmd, "/register", true) ==0 ) { if(IsPlayerConnected(playerid)) { if(gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in."); return 1; } GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "%s.ini", sendername); new File: hFile = fopen(string, io_read); if (hFile) { SendClientMessage(playerid, COLOR_YELLOW, "That Username is already taken, please choose a different one."); fclose(hFile); return 1; } new tmppass[64]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /register [password]"); return 1; } strmid(tmppass, tmp, 0, strlen(cmdtext), 255); Encrypt(tmppass); OnPlayerRegister(playerid,tmppass); } return 1; }
При коннекте: Code
if(fexist(string)) { gPlayerAccount[playerid] = 1; SendClientMessage(playerid, COLOR_YELLOW, "SERVER: That nick is registered, please login"); SendClientMessage(playerid, COLOR_WHITE, "HINT: You can now login by typing /login <password>"); return 1; } else { gPlayerAccount[playerid] = 0; SendClientMessage(playerid,COLOR_YELLOW,"You dont have an account. Please register by using /register [password]"); return 1; } }
Code
if(gPlayerAccount[i] == 1 && gPlayerLogged[i] == 0) { SendClientMessage(i, COLOR_WHITE, "HINT: You can now login by typing /login <password>"); } }
P.S. взято из стандартного ГФ, еле нашел, т.к. ща все на диалогах -_-
Разработка нового RolePlay мода - 7-222-133, 38-62-81818 - kalmar-69
Сообщение Да, там целая система связанная например с LVL и т.д. Вот тебе например, команды и текст, чтобы писало когда заходит человек. Команды: Code
if (strcmp(cmd, "/login", true) ==0 ) { if(IsPlayerConnected(playerid)) { new tmppass[64]; if(gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in."); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /login [password]"); return 1; } strmid(tmppass, tmp, 0, strlen(cmdtext), 255); Encrypt(tmppass); OnPlayerLogin(playerid,tmppass); } return 1; } if (strcmp(cmd, "/register", true) ==0 ) { if(IsPlayerConnected(playerid)) { if(gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in."); return 1; } GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "%s.ini", sendername); new File: hFile = fopen(string, io_read); if (hFile) { SendClientMessage(playerid, COLOR_YELLOW, "That Username is already taken, please choose a different one."); fclose(hFile); return 1; } new tmppass[64]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /register [password]"); return 1; } strmid(tmppass, tmp, 0, strlen(cmdtext), 255); Encrypt(tmppass); OnPlayerRegister(playerid,tmppass); } return 1; }
При коннекте: Code
if(fexist(string)) { gPlayerAccount[playerid] = 1; SendClientMessage(playerid, COLOR_YELLOW, "SERVER: That nick is registered, please login"); SendClientMessage(playerid, COLOR_WHITE, "HINT: You can now login by typing /login <password>"); return 1; } else { gPlayerAccount[playerid] = 0; SendClientMessage(playerid,COLOR_YELLOW,"You dont have an account. Please register by using /register [password]"); return 1; } }
Code
if(gPlayerAccount[i] == 1 && gPlayerLogged[i] == 0) { SendClientMessage(i, COLOR_WHITE, "HINT: You can now login by typing /login <password>"); } }
P.S. взято из стандартного ГФ, еле нашел, т.к. ща все на диалогах -_-Автор - Gillette Дата добавления - 13.02.2011 в 17:59:18