indnike
Умник
Добрый вечер!
Вообщем вот первая команда /alogin ее надо подправить что бы она работала там вроде MySQL не под мою версию у меня R39-2
Вообщем надо первую команду сделать что бы работала норм поменять MySQL на тот как во второй команде
+++ дам
CASE
2 команда /alogin
CASE
public OnPlayerDisconnect(playerid, reason)
Вообщем вот первая команда /alogin ее надо подправить что бы она работала там вроде MySQL не под мою версию у меня R39-2
Вообщем надо первую команду сделать что бы работала норм поменять MySQL на тот как во второй команде
+++ дам
PHP:
YCMD:alogin(playerid, params[], help)
{
if(PlayerInfo[playerid][pLogin] == 0) return true;
{
SetPVarInt(playerid, "Alogin", 3);
ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
}
new query[2048];
format(query, sizeof(query), "SELECT * FROM "TABLE_ADMIN" WHERE Name = '%s'", PlayerInfo[playerid][pName]);
mysql_query(query);
mysql_store_result();
if(!mysql_fetch_row_format(query)) return true;
if(!strcmp(GetAdmin(PlayerInfo[playerid][pName], "password"), "qwerty", true))
{
SetPVarInt(playerid, "Alogin", 1);
ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
}
else ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена"), SetPVarInt(playerid, "Alogin", 2);
return true;
}
PHP:
case 1227:
{
if(!response) return 1;
if(!strlen(inputtext)) return ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
new query[2048], pass2, level = strval(GetAdmin(PlayerInfo[playerid][pName], "level"));
if(GetPVarInt(playerid, "Alogin") == 1)
{
if(sscanf(inputtext, "s[16]", pass2)) ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
if(!strcmp(inputtext, "qwerty", true)) return ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
if(strlen(inputtext) < 6 || strlen(inputtext) > 16) return ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
format(query, sizeof(query), "UPDATE "TABLE_ADMIN" SET password = '%s' WHERE Name = '%s' LIMIT 1", pass2, PlayerInfo[playerid][pName]);
mysql_query(query);
SendClientMessage(playerid, COLOR_GREEN, "Поздравляем! Вы получили доступ модератора");
PlayerInfo[playerid][pAdmin] = level;
dostup[playerid] = 1;
format(string, 90, "<ALogin> вошел %s[%d]", PlayerInfo[playerid][pName], playerid);
SendAdminMessage(0xF4B800AA, string);
return true;
}
else if(GetPVarInt(playerid, "Alogin") == 2)
{
format(string, 60, "<ALogin> %s[%d]: ввел неверный пароль",PlayerInfo[playerid][pName],playerid);
if(strcmp(inputtext, GetAdmin(PlayerInfo[playerid][pName], "password"), true)) SendAdminMessage(0xF4B800AA, string);
if(strcmp(inputtext, GetAdmin(PlayerInfo[playerid][pName], "password"), true)) return SendClientMessage(playerid, COLOR_GREY, "Вы ввели неверный пароль");
SendMes(playerid, 0xF4B800AA, "Вы авторизировались как модератор %d уровня", level);
PlayerInfo[playerid][pAdmin] = level;
dostup[playerid] = 1;
format(string, 90, "<ALogin> вошел %s[%d]", PlayerInfo[playerid][pName], playerid);
SendAdminMessage(0xF4B800AA, string);
}
if(GetPVarInt(playerid, "Alogin") == 3)
{
if(strlen(inputtext) < 6 || strlen(inputtext) > 16) return ShowPlayerDialogEx(playerid, 1227, DIALOG_STYLE_PASSWORD, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
dostup[playerid] = 0;
SendClientMessage(playerid, COLOR_GREY, "Вы не модератор");
return true;
}
}
2 команда /alogin
PHP:
CMD:alogin(playerid, params[])
{
if(PlayerInfo[playerid][pLogin] == 0) return true;
new query[2048];
format(query, sizeof(query), "SELECT * FROM "TABLE_ADMIN" WHERE name = '%s' LIMIT 1", PlayerInfo[playerid][pName]);
mysql_function_query(mMysql,query,true,"OnMySQL_Query","iis",playerid,16," ");
return true;
}
PHP:
case 14:
{
PlayerInfo[playerid][pAdmin] = cache_get_field_content_int(0,"level");
dostup[playerid] = 1;
format(YCMDstr, 90, "<ALogin> вошел %s[%d]", PlayerInfo[playerid][pName], playerid);
SendAdminMessage(0xF4B800AA, YCMDstr);
}
case 15:
{
cache_get_field_content(0,"password",YCMDstr,mMysql,16);
if(strcmp(inputtext, YCMDstr, true)) return SendClientMessage(playerid, COLOR_GREY, "Вы ввели неверный пароль");
PlayerInfo[playerid][pAdmin] = cache_get_field_content_int(0,"level");
SendMes(playerid, 0xF4B800AA, "Вы авторизировались как модератор %d уровня", PlayerInfo[playerid][pAdmin]);
dostup[playerid] = 1;
format(YCMDstr, 90, "<ALogin> вошел %s[%d]", PlayerInfo[playerid][pName], playerid);
SendAdminMessage(0xF4B800AA, YCMDstr);
}
case 16:
{
if(!r) return true;
cache_get_field_content(0,"password",YCMDstr,mMysql,16);
if(!strcmp(YCMDstr, "qwerty", true))
{
SetPVarInt(playerid, "Alogin", 1);
ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена");
SendClientMessage(playerid, COLOR_GREY, "Зарегистрируйте администраторский пароль. Он должен быть больше 5 и меньше 16 символов!");
}
else ShowPlayerDialog(playerid, 1227, 1, "Админ авторизация", "Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n размером от 6 до 15 символов", "Вход", "Отмена"), SetPVarInt(playerid, "Alogin", 2);
}
public OnPlayerDisconnect(playerid, reason)
PHP:
dostup[playerid] = 0;
format(string, sizeof(string), "<ALogin Off> %s[%d] вышел из игры [lvl:%d]",Name(playerid),playerid,PlayerInfo[playerid][pAdmin]);
ABroadCast(0xF4B800AA, string, 1);
}
