От
erg rfbfdh
не могу понять где ошибка
//
#include <a_samp>
#include <a_mysql>
#define MYSQL_HOST "localhost"
#define MYSQL_USER "root"
#define MYSQL_PASS ""
#define MYSQL_BASE "newsamp"
#define SCM SendClientMessage
#define SPD ShowPlayerDialog
#define COLOR_WHITE 0xFFFFFFFF
new MySQL: dbHandle;
new query[256];
enum
{
DLG_NOME,
DLG_REG,
};
enum PLAYER_INFO
{
id,
name,
pass
};
new player_info[MAX_PLAYERS] [PLAYER_INFO];
//
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
public OnGameModeInit()
{
dbHandle = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_BASE);
if(mysql_errno()!= 0)
{
print("[MySQL R41-4]: Ïîäêëþ÷åíèå ê áàçå äàííûõ: íåóñïåøíî");
return SendRconCommand("exit");
}
else
{
print("[MySQL R41-4]: Ïîäêëþ÷åíèå ê áàçå äàííûõ: óñïåøíî");
}
SetGameModeText("Parallel");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnGameModeExit()
{
mysql_close(dbHandle);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 2534.7480,2427.5808,54.9348);
InterpolateCameraPos(playerid, 2552.605224, 2426.749267, 22.178434, 2552.605224, 2426.749267, 22.178434, 1000);
InterpolateCameraLookAt(playerid, 2555.998535, 2423.079589, 22.311231, 2555.998535, 2423.079589, 22.311231, 1000);
return 1;
}
public OnPlayerConnect(playerid)
{
GetPlayerName(playerid, player_info[playerid][name], MAX_PLAYER_NAME);
SetTimerEx("CheckAccountFromMysql", 1000, false, "i",playerid);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
switch(random(3))
{
case 0:
{
SetPlayerPos(playerid,1758.4210,-1893.0044,13.5560);
SetPlayerFacingAngle(playerid, 265.3591);
SetCameraBehindPlayer(playerid);
}
case 1:
{
SetPlayerPos(playerid,1155.0690,-1771.6304,16.5992);
SetPlayerFacingAngle(playerid, 355.5767);
SetCameraBehindPlayer(playerid);
}
case 2:
{
SetPlayerPos(playerid,2223.0942,-1175.4476,25.7266);
SetPlayerFacingAngle(playerid, 359.4460);
SetCameraBehindPlayer(playerid);
}
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new str[256];
switch(dialogid)
{
case DLG_REG:
{
if(!response) return Kick(playerid);
if(!(strlen(inputtext) >= 8 && strlen(inputtext)<= 22))
{
SCM(playerid, COLOR_WHITE, "Äëèíà ïàðîëÿ áûòü íå ìåíåå 8 è íå áîëåå 22 ñèìâîëîâ." );
format(str, sizeof(str), "{FFFFFF}Äîáðî ïîæàëîâàòü íà íàø ñåðâåð, âàø íèê: %s[%i]\nÄàííûé àêêàóíò íå çàðåãèñòðèðîâàí, äëÿ ðåãèñòðàöèè ââåäèòå ïàðîëü\nâ ïîëå íèæå:\n", player_info[playerid][name], playerid);
return SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ", str, "Äàëåå", "Îòìåíà");
}
}
for(new i = 0; i < strlen(inputtext); i++)
{
switch(inputtext[i])
{
case `a`..`z`, `A`..`Z`, `0`..`9`: continue;
default:
{
SCM(playerid, COLOR_WHITE, "Ïàðîëü ìîæåò òîëüêî ñîñòîÿòü èç ëàòèíñêèõ ñèìâîëîâ è öèôîð ." );
format(str, sizeof(str), "{FFFFFF}Äîáðî ïîæàëîâàòü íà íàø ñåðâåð, âàø íèê: %s[%i]\nÄàííûé àêêàóíò íå çàðåãèñòðèðîâàí, äëÿ ðåãèñòðàöèè ââåäèòå ïàðîëü\nâ ïîëå íèæå:\n", player_info[playerid][name], playerid);
return SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ", str, "Äàëåå", "Îòìåíà");
}
}
}
player_info[playerid][pass] = EOS;
strins(player_info[playerid][pass], inputtext, 0);
}
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
{
SetPlayerPos(playerid, fX, fY, fZ);
return 1;
}
forward GetAccountFromMysql(playerid);
public GetAccountFromMysql(playerid)
{
format(query, sizeof(query),"SELECT * FROM `accounts` WHERE `name` = `%s", player_info[playerid][name]);
mysql_tquery(dbHandle, query,"CheckAccountFromMysql","i",playerid);
}
forward CheckAccountFromMysql(playerid);
public CheckAccountFromMysql(playerid)
{
new str[256];
if(cache_num_rows() == 0)
{
format(str, sizeof(str), "{FFFFFF}Äîáðî ïîæàëîâàòü íà íàø ñåðâåð, âàø íèê: %s[%i]\nÄàííûé àêêàóíò íå çàðåãèñòðèðîâàí, äëÿ ðåãèñòðàöèè ââåäèòå ïàðîëü\nâ ïîëå íèæå:\n", player_info[playerid][name], playerid);
SPD(playerid, DLG_REG, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ", str, "Äàëåå", "Îòìåíà");
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Äàííûé àêêàóíò çàðåãèñòðèðîâàí íà ñåðâåðå.");
}
}