- 283
- 90
Lua:
#include <a_samp>
#include <a_mysql>
#include <fix>
#include <streamer>
#include <crashdetect>
#include <Pawn.CMD>
#include <Pawn.Regex>
#include <sscanf2>
#include <foreach>
#define MYSQL_HOST "localhost"
#define MYSQL_USER "root"
#define MYSQL_PASS "root"
#define MYSQL_BASE "bloody deatmatch"
#define SCM SendClientMessage
#define SCMTA SendClientMessageToALL
#define SPD ShowPlayerDialog
#define COLOR_WHITE 0xFFFFFFFF
main()
{
print("\n----------------------------------");
print("Bloody DeatMatch - NEW PROJECT");
print("----------------------------------\n");
}
//---------------------- ПЕРЕМЕНАЯ ---------------------
new MySQL:dbHandle;
//---------------------------------------------------------
enum player
{
ID,
NAME[MAX_PLAYER_NAME],
PASSWORD[32],
}
new player_info[MAX_PLAYERS][player];
enum dialogs
{
DLG_NONE,
DLG_REG,
DLG_LOG,
}
public OnGameModeInit()
{
SetGameModeText("Blank Script");
ConnectMySQL();
return 1;
}
stock ConnectMySQL()
{
dbHandle = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_BASE);
switch(mysql_errno())
{
case 0: print("Подключение к MySQL успешно");
default: print("MySQL error!");
}
mysql_log(ERROR | WARNING);
mysql_set_charset("cp1251");
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
return 1;
}
public OnPlayerConnect(playerid)
{
GetPlayerName(playerid, player_info[playerid][NAME], MAX_PLAYER_NAME);
static const fmt_query[] = "SELECT id FROM users WHERE name = '%s'";
new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)];
format(query, sizeof(query), fmt_query, player_info[playerid] [NAME]);
mysql_tquery(dbHandle, query, "CheckRegistration", "i", playerid);
return 1;
}
forward CheckRegistration(playerid);
public CheckRegistration(playerid)
{
new rows;
cache_get_row_count(rows);
if(rows) ShowLogin(playerid);
else ShowRegistration(playerid);
}
stock ShowLogin(playerid)
{
SCM(playerid, COLOR_WHITE, "Игрок зарегистрирован");
}
stock ShowRegistration(playerid)
{
new dialog[410+(-2+MAX_PLAYER_NAME)];
format(dialog, sizeof(dialog),
"{FFFFFF}Уважаемый {594de1}%s{FFFFFF}, мы рады видеть вас на {594de1}---- RolePlay{FFFFFF}\n\
Аккаунт с таким ником не зарегистрирован\n\
Для игры на сервере вы должны пройти регистрацию\n\n\
Придумайте сложный пароль для вашего аккаунта и нажмите\"Далее\"\n\
{e743e4}\t*Пароль должен быть от 8-ми до 36-ти символов\n\
\t*Пароль должен состоять из цифр и латинских символов любого регистра",
player_info[playerid] [NAME]
);
SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "{e743e4}Регистрация{FFFFFF} Ввод пароля", dialog, "Далее", "Выход");
}
Помогите не открывет диалог авторизации на сервере. Код есть, а оно не открывет