Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <a_mysql>
- #include <sscanf2>
- #include <izcmd>
- #define FILTERSCRIPT
- #define SQL_HOST "localhost" // the ip of your mysql server
- #define SQL_USER "root" // the username of your mysql account
- #define SQL_PASS "" // the password of your mysql account
- #define SQL_DB "kayit" // the database name
- #define DIALOG_LOGIN 0
- #define DIALOG_REGISTER 1
- #define DIALOG_REWARD 2
- #define DIALOG_STATISTIC 3
- enum playerinfo
- {
- pUsername[24],
- pPassword[64],
- pIP[16],
- pMoney,
- pAdminLevel,
- pDJLevel,
- pKills,
- pDeaths,
- pLogged,
- pScore
- };
- new MySQL:dbHandle;
- new Invalid[MAX_PLAYERS];
- new pInfo[MAX_PLAYERS][playerinfo];
- stock pName(playerid)
- {
- new gName[MAX_PLAYER_NAME];
- GetPlayerName( playerid, gName, sizeof gName );
- return gName;
- }
- stock MySQL_Register(playerid, passwordstring[])
- {
- new Query[512], IP[16], str1[300];
- GetPlayerIp(playerid, IP, sizeof(IP));
- strcat(Query,"INSERT INTO `PlayerData`(`Username`,`Password`,`pMoney`,`pAdminLevel`,`pDJLevel`,`pKills`,`pDeaths`,`pIP`,`pScore`)");
- strcat(Query," VALUES ('%s', SHA1('%s'),0,0,0,0,0,'%s',0)");
- mysql_format(dbHandle,Query,sizeof(Query),Query,pName(playerid),passwordstring,IP);
- mysql_query(dbHandle,Query,false);
- format(str1,sizeof(str1),"{FFFFFF}Kayit olduğunuz için teşekkürler.\n{FFFFFF}Başlangıç parası olarak{E24234} $10,000{FFFFFF} hesabınıza yatırıldı.");
- ShowPlayerDialog(playerid,DIALOG_REWARD,DIALOG_STYLE_MSGBOX,"{FF0000}Owsla Gaming - {FFFFFF}Giriş",str1,"Play","");
- pInfo[playerid][pLogged] = 1;
- GivePlayerMoney(playerid, 10000);
- return 1;
- }
- stock MySQL_Login(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- new Query[512], savestr[50], rows;
- mysql_format(dbHandle,Query, sizeof(Query), "SELECT * FROM `PlayerData` WHERE `Username` = '%s'", pName(playerid));
- mysql_query(dbHandle,Query);
- cache_get_row_count(rows);
- if(rows)
- {
- cache_get_value_name(0, "pMoney", savestr); pInfo[playerid][pMoney] = strval(savestr);
- cache_get_value_name(0, "pAdminLevel", savestr); pInfo[playerid][pAdminLevel] = strval(savestr);
- cache_get_value_name(0, "pDJLevel", savestr); pInfo[playerid][pDJLevel] = strval(savestr);
- cache_get_value_name(0, "pKills", savestr); pInfo[playerid][pKills] = strval(savestr);
- cache_get_value_name(0, "pDeaths", savestr); pInfo[playerid][pDeaths] = strval(savestr);
- cache_get_value_name(0, "pScore", savestr); pInfo[playerid][pScore] = strval(savestr);
- ResetPlayerMoney(playerid), GivePlayerMoney(playerid, pInfo[playerid][pMoney]);
- SetPlayerScore(playerid, pInfo[playerid][pScore]);
- pInfo[playerid][pLogged] = 1;
- }
- pInfo[playerid][pLogged] = 1;
- }
- return 1;
- }
- stock SaveStats(playerid)
- {
- new Query[256];
- mysql_format(dbHandle,Query, sizeof(Query), "UPDATE `PlayerData` SET `pMoney` = '%d', `pAdminLevel` = '%d', `pDJLevel` = '%d' WHERE `Username` = '%s'",
- GetPlayerMoney(playerid),
- pInfo[playerid][pAdminLevel],
- pInfo[playerid][pDJLevel],
- pName(playerid));
- mysql_query(dbHandle,Query,false);
- mysql_format(dbHandle,Query, sizeof(Query), "UPDATE `PlayerData` SET `pKills` = '%d', `pDeaths` = '%d', `pScore` = '%d' WHERE `Username` = '%s'",
- pInfo[playerid][pKills],
- pInfo[playerid][pDeaths],
- GetPlayerScore(playerid),
- pName(playerid));
- mysql_query(dbHandle,Query,false);
- return 1;
- }
- stock ResetVars(playerid)
- {
- ResetPlayerMoney(playerid);
- SetPlayerScore(playerid, 0);
- pInfo[playerid][pMoney] = 0;
- pInfo[playerid][pAdminLevel] = 0;
- pInfo[playerid][pDJLevel] = 0;
- pInfo[playerid][pKills] = 0;
- pInfo[playerid][pDeaths] = 0;
- pInfo[playerid][pScore] = 0;
- pInfo[playerid][pLogged] = 0;
- return 1;
- }
- main()
- {
- new Yil,Ay,Gun,Saat,Dakika,Saniye;
- getdate(Yil, Ay, Gun);
- gettime(Saat,Dakika,Saniye);
- printf("» ===============[E][X][C][I][S][I][O][N]=============== «");
- printf("» «");
- printf("» «");
- printf("» By Excision «");
- printf("» «");
- printf("» ===============[E][X][C][I][S][I][O][N]=============== «");
- printf("» =========== Tarih: %d/%d/%d Saat: %d:%d:%d =========== «",Gun, Ay, Yil, Saat, Dakika, Saniye);
- }
- public OnGameModeInit()
- {
- mysql_log(ERROR | DEBUG);
- new MySQLOpt:options = mysql_init_options();
- mysql_set_option(options, AUTO_RECONNECT, false);
- mysql_set_option(options, POOL_SIZE, 0);
- dbHandle = mysql_connect(SQL_HOST, SQL_USER, SQL_PASS, SQL_DB, options);
- if(!mysql_errno(dbHandle))
- {
- print("[SERVER] MySQL Basarili bi sekilde baglandi");
- }
- else
- {
- print("[SERVER]: MySQL Baglantisi basarili degil. Sunucu kapatiliyor.");
- SendRconCommand("exit");
- }
- for(new i = false; i <= 311; i++)
- {
- AddPlayerClass(i, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- }
- return 1;
- }
- public OnGameModeExit()
- {
- mysql_close();
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- if(pInfo[playerid][pLogged] == 0) return 0;
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- if(!GetPVarInt(playerid,"objetamam"))
- {
- InterpolateCameraPos(playerid, 1715.780151, 2823.544189, 36.216690, 1471.657958, 2773.792968, 28.092153, 5000);
- InterpolateCameraLookAt(playerid, 1720.558837, 2824.614990, 35.208034, 1466.663818, 2773.906494, 28.306930, 5000);
- SetPVarInt(playerid,"objetamam",1);
- }
- SetPlayerPos(playerid, 1451.924438, 2773.822265, 27.432954);
- SetPlayerFacingAngle(playerid, 270.432495);
- switch(random(5))
- {
- case 0: ClearAnimations(playerid), SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE1);
- case 1: ClearAnimations(playerid), SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE2);
- case 2: ClearAnimations(playerid), SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE3);
- case 3: ClearAnimations(playerid), SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE4);
- case 4: ClearAnimations(playerid), ApplyAnimation(playerid,"DANCING","DNCE_M_B",4.0,1,0,0,0,-1);
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- SetPVarInt(playerid, "objetamam", 0);
- SendDeathMessage(-1, playerid, 200);
- ResetVars(playerid);
- new Query[300], rows, string1[128];
- mysql_format(dbHandle,Query, sizeof(Query), "SELECT * FROM `PlayerData` WHERE `Username` = '%e'", pName(playerid));
- mysql_query(dbHandle,Query);
- cache_get_row_count(rows);
- if(rows)
- {
- format(string1,sizeof(string1),"{00CC00}Welcome back %s\nPlease login to contiune.",pName(playerid));
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"{FF0000}Owsla Gaming - {FFFFFF}Giriş",string1,"Login","Quit");
- }
- else if(!rows)
- {
- format(string1,sizeof(string1),"Welcome %s\nEnter new password and click register to contiune.",pName(playerid));
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,"{FF0000}Owsla Gaming - {FFFFFF}Kayit",string1,"Register","Quit");
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- SaveStats(playerid);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- SetPlayerPos(playerid, 0,0,0);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(killerid != INVALID_PLAYER_ID)
- {
- pInfo[playerid][pKills]++;
- GivePlayerMoney(killerid, 1000);
- SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
- }
- pInfo[playerid][pDeaths]++;
- GivePlayerMoney(playerid, -1000);
- switch(reason)
- {
- case 47: SendDeathMessage(playerid, -1, 47);
- case 53: SendDeathMessage(playerid, -1, 53);
- case 54: SendDeathMessage(playerid, -1, 54);
- default: SendDeathMessage(killerid, playerid, reason);
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- switch(dialogid)
- {
- case DIALOG_REGISTER:
- {
- if(response)
- {
- if(!strlen(inputtext) || strlen(inputtext) > 128)
- {
- new string1[128];
- SendClientMessage(playerid, -1, "[ERROR]: You must insert a password between 1-128 characters!");
- format(string1, sizeof(string1), "Welcome %s\nPlease register to contiune.",pName(playerid));
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "{FF0000}Owsla Gaming - {FFFFFF}Kayit", string1, "Register", "Quit");
- }
- else if(strlen(inputtext) > 0 && strlen(inputtext) < 128)
- {
- new escpass[100];
- mysql_escape_string(inputtext, escpass);
- MySQL_Register(playerid, escpass);
- }
- }
- if(!response)
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_MSGBOX, "{FF0000}Owsla Gaming - {FFFFFF}Kick", "You must register to play", "Close", "");
- Kick(playerid);
- }
- }
- case DIALOG_LOGIN:
- {
- if(!response)
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_MSGBOX, "{FF0000}Owsla Gaming - {FFFFFF}Kick", "You must login to play", "Close", "");
- Kick(playerid);
- }
- if(response)
- {
- new query[200], rows;
- mysql_format(dbHandle, query, sizeof(query), "SELECT `Username` FROM PlayerData WHERE Username = '%s' AND Password = SHA1('%e')", pName(playerid), inputtext);
- mysql_query(dbHandle, query);
- cache_get_row_count(rows);
- if(rows) MySQL_Login(playerid);
- if(!rows)
- {
- Invalid[playerid]++;
- if(Invalid[playerid]==4)
- {
- Kick(playerid);
- }
- else
- {
- new str1[256];
- format(str1,sizeof(str1),"{FFFF00}Wrong password!\n\n{00CC00}Welcome back %s\nPlease login to contiune.\n\n{FFFF00}Login chance: %d",pName(playerid),4-Invalid[playerid]);
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"{FF0000}Owsla Gaming - {FFFFFF}Giriş",str1,"Login","Quit");
- }
- }
- }
- }
- }
- return 1;
- }
- CMD:changename(playerid, params[])
- {
- new newname[25], Query[256], rows;
- if(sscanf(params,"s[24]",newname)) return SendClientMessage(playerid, -1, "[USAGE]: /changename [newname(max:24 char)]");
- if(strlen(newname) > 24) return SendClientMessage(playerid, -1, "[USAGE]: /changename [newname(max:24 char)]");
- mysql_format(dbHandle,Query, sizeof(Query), "SELECT * FROM `PlayerData` WHERE `Username` = '%e'", newname);
- mysql_query(dbHandle,Query);
- cache_get_row_count(rows);
- if(rows)
- {
- SendClientMessage(playerid, -1, "[ERROR]: This name already used! Try another!");
- }
- else if(!rows)
- {
- mysql_format(dbHandle,Query, sizeof(Query), "UPDATE `PlayerData` SET `Username` = '%e' WHERE `Username` = '%e'", newname, pName(playerid));
- mysql_query(dbHandle,Query,false);
- new str1[128];
- format(str1,sizeof str1, "[INFO]: %s has changed his name become %s", pName(playerid), newname);
- SendClientMessageToAll(0xFFFFFFFF, str1);
- SetPlayerName(playerid, newname);
- }
- return 1;
- }
- CMD:changepass(playerid, params[])
- {
- new newpass[65], Query[256];
- if(sscanf(params,"s[64]",newpass)) return SendClientMessage(playerid, -1, "[USAGE]: /changepass [newpass(max:24 64)]");
- if(strlen(newpass) > 64) return SendClientMessage(playerid, -1, "[USAGE]: /changepass [newpass(max:64 char)]");
- mysql_format(dbHandle, Query, sizeof(Query), "UPDATE `PlayerData` SET `Password` = SHA1('%e') WHERE `Username` = '%s'", newpass, pName(playerid));
- mysql_query(dbHandle, Query, false);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement