Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- mySQL r39_2 gamemode, su prisijungimo/registracijos sistema.
- #autorius
- f0cus
- #kreditai
- BlueG
- #data
- 2014-08-23
- */
- #include <a_samp>
- #include <a_mysql>
- #include <easyDialog>
- #define SQL_HOST "localhost"
- #define SQL_USER "root"
- #define SQL_PASS ""
- #define SQL_DATA "server-sql"
- #define BALTA 0xFFFFFFFF
- #define RAUDONA 0xFF0000FF
- #undef MAX_PLAYERS
- #define MAX_PLAYERS 100
- #define MAX_PLAYER_PASSWORD 30
- #define MIN_PLAYER_PASSWORD 6
- new sql = -1,
- playerSelectCheck[MAX_PLAYERS];
- forward OnPlayerAccountChecked(playerid, select_check);
- forward OnPlayerRegistered(playerid);
- enum p_DATA
- {
- ORM:ORM_ID,
- ID,
- Vardas,
- Slaptazodis,
- Skin,
- Float:Float[3]
- };
- new pInfo[MAX_PLAYERS][p_DATA];
- main()
- {
- print("\n\n\n\t--\nf0cus R39 gamemode\n\t--\n\n");
- }
- public OnGameModeInit()
- {
- SetGameModeText("f0cus_gm 0.0.1");
- mysql_log(LOG_ALL, LOG_TYPE_HTML);
- sql = mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
- AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- new ORM:ormid = pInfo[playerid][ORM_ID] = orm_create("players", sql);
- playerSelectCheck[playerid]++;
- orm_addvar_int(ormid, pInfo[playerid][ID], "id");
- orm_addvar_int(ormid, pInfo[playerid][Skin], "skin");
- orm_addvar_float(ormid, pInfo[playerid][Float][0], "x");
- orm_addvar_float(ormid, pInfo[playerid][Float][1], "y");
- orm_addvar_float(ormid, pInfo[playerid][Float][2], "z");
- orm_addvar_string(ormid, pInfo[playerid][Vardas], MAX_PLAYER_NAME, "vardas");
- orm_addvar_string(ormid, pInfo[playerid][Slaptazodis], MAX_PLAYER_PASSWORD, "slaptazodis");
- orm_setkey(ormid, "vardas");
- orm_load(ormid, "OnPlayerAccountChecked", "dd", playerid, playerSelectCheck[playerid]);
- return 1;
- }
- public OnPlayerAccountChecked(playerid, select_check)
- {
- /* Kas tas select_check ?
- Zaidejas A prisijungia, SELECT funkcija pradeda veikti, ji uztrunka.
- Kuomet tai vis dar vyksta, zaidejas A su id 2 atsijungia, zaidejas B
- prisijungia su id 2. Galiausiai SELECT funkcija baigiasi, bet blogam zaidejui.
- Mes ta zaideja iskickiname.
- Autorius BlueG
- */
- if(select_check != playerSelectCheck[playerid])
- return Kick(playerid);
- orm_setkey(pInfo[playerid][ORM_ID], "id");
- switch(orm_errno(pInfo[playerid][ORM_ID]))
- {
- case ERROR_OK: // Jei randame zaideja
- {
- Dialog_Show(playerid, Login, DIALOG_STYLE_PASSWORD, "Prisijungimas", "Sveiki! Prasome ivesti savo slaptazodi, norint prisijungti!", "Testi", "Atsaukti");
- SetPVarInt(playerid, "registruotas", 1);
- }
- case ERROR_NO_DATA: // Jei ne
- {
- Dialog_Show(playerid, Register, DIALOG_STYLE_PASSWORD, "Registracija", "Sveiki atvyke i musu serveri! Prasome ivesti\nsavo sugalvota slaptazodi!", "Testi", "Atsaukti");
- SetPVarInt(playerid, "registruota", 0);
- }
- }
- return 1;
- }
- Dialog:Login(playerid, response, listitem, inputtext[])
- {
- if(response)
- {
- if(strcmp(inputtext, pInfo[playerid][Slaptazodis]) == 0)
- {
- SetPVarInt(playerid, "spawned", 1); // Žaidėjas prisijungęs
- SetPVarInt(playerid, "status", 0); // Nustatome, jog zaidejas po prisijungimo
- SetSpawnInfo(playerid, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- }
- else
- {
- if(GetPVarInt(playerid, "trylog") < 3)
- return SetPVarInt(playerid, "trylog", GetPVarInt(playerid, "trylog")) , Dialog_Show(playerid, Login, DIALOG_STYLE_PASSWORD, "Prisijungimas", "Slaptazodis neteisingas! Slaptazodi turite ivesti per 3 kartus!", "Testi", "Atsaukti");
- else
- return Kick(playerid);
- }
- }
- else
- return Kick(playerid);
- return 1;
- }
- Dialog:Register(playerid, response, listitem, inputtext[])
- {
- if(response)
- {
- if(strlen(inputtext) < MIN_PLAYER_PASSWORD || strlen(inputtext) > MAX_PLAYER_PASSWORD)
- return Dialog_Show(playerid, Register, DIALOG_STYLE_PASSWORD, "Registracija", "Slaptazodi turi sudaryti nuo 5 iki 30 simboliu!", "Testi", "Atsaukti");
- orm_save(pInfo[playerid][ORM_ID], "OnPlayerRegistered", "d", playerid);
- }
- else
- return Kick(playerid);
- return 1;
- }
- public OnPlayerRegistered(playerid)
- {
- SendClientMessage(playerid, BALTA, "Sekmingai uzsiregistravote!");
- SetPVarInt(playerid, "status", 1);
- SetPVarInt(playerid, "spawned", 1);
- SetSpawnInfo(playerid, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(GetPVarInt(playerid, "spawned") > 0) // Jei zaidejas prisijunges,
- orm_save(pInfo[playerid][ORM_ID]); // tuomet issaugome ji.
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- switch(GetPVarInt(playerid, "status"))
- {
- case 0: // Prisijungus
- {
- ResetPlayerMoney(playerid);
- SetPlayerPos(playerid, pInfo[playerid][Float][0], pInfo[playerid][Float][1], pInfo[playerid][Float][2]);
- SetPlayerSkin(playerid, pInfo[playerid][Skin]);
- }
- case 1: // Uzsiregistravus
- {
- SetPlayerSkin(playerid, 281);
- SetPlayerPos(playerid, 2695.6880, -1704.6300, 11.8438);
- }
- }
- 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[])
- {
- if (strcmp("/mycommand", cmdtext, true, 10) == 0)
- {
- // Do something here
- return 1;
- }
- return 0;
- }
- 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[])
- {
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- stock GetPlayerNameEx(playerid)
- {
- new returnname[MAX_PLAYER_NAME+1];
- GetPlayerName(playerid, returnname, sizeof(returnname));
- return returnname;
- }
Advertisement
Add Comment
Please, Sign In to add comment