Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <sql>
- #include <ocmd>
- #define MYSQL_HOST "127.0.0.1"
- #define MYSQL_USER "root"
- #define MYSQL_PASS ""
- #define MYSQL_DB "testgm"
- #define IsPlayerConnected _IsPlayerConnected
- #define DIALOG_REGISTER 1
- #define DIALOG_LOGIN 2
- enum playerdata
- {
- pMySQLID,
- pName[MAX_PLAYER_NAME],
- pPasswort[128],
- pLevel,
- pMoney,
- pAntiCheatCar,
- bool:pLoggedIn
- }
- enum cars
- {
- cID,
- cModel,
- cColors[2],
- Float:cPos[4],
- bool:cErstellt
- }
- new Spieler[MAX_PLAYERS][playerdata], Cars[MAX_VEHICLES][cars];
- new SQL:shandle;
- main()
- {
- print("\n----------------------------------");
- print(" Test Gamemode");
- print("----------------------------------\n");
- }
- public OnSQLError(SQL:handle, errorid, error[], query[], callback[])
- {
- return 1;
- }
- public OnGameModeInit()
- {
- shandle = sql_connect(SQL_HANDLER_MYSQL, MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DB);
- sql_debug();
- CreateTables();
- LoadCars();
- SetGameModeText("Blank Script");
- AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- return 1;
- }
- public OnGameModeExit()
- {
- sql_disconnect(shandle);
- 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 string[256];
- TogglePlayerSpectating(playerid, 1);
- format(string, sizeof(string), "SELECT `ID` FROM `Accounts` WHERE `Name`='%s' LIMIT 1", SpielerName(playerid));
- sql_query(shandle, string, QUERY_THREADED, "OnCheckAccount", "ri", playerid);
- Check_s0beit(playerid);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- SavePlayer(playerid);
- return 1;
- }
- public OnPlayerSpawn(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 SendClientMessage(playerid, -1, "[SERVER] Unbekannter Befehl.");
- }
- 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[])
- {
- switch(dialogid)
- {
- case DIALOG_REGISTER:
- {
- if(response)
- {
- if(!strlen(inputtext) || strlen(inputtext) > 128) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Test - Register", "Ungültiges Passwort! (1-128 Zeichen)\n\nRegistriere dich jetzt! \nGebe dein Passwort an.", "Bestätigen", "Abbrechen");
- new string[256];
- sql_escape_string(shandle, inputtext, string);
- format(string, sizeof(string), "INSERT INTO `Accounts` (`Name`, `Passwort`, `Level`, `Money`) VALUES ('%s', '%s', '1', '500');", SpielerName(playerid), string);
- sql_query(shandle, string, QUERY_THREADED, "OnPlayerRegistred", "ri", playerid);
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Test - Login", "Logge dich jetzt ein! \nGebe dein Passwort ein.", "Bestätigen", "Abbrechen");
- }
- return 1;
- }
- case DIALOG_LOGIN:
- {
- if(response)
- {
- if(!strlen(inputtext) || strlen(inputtext) > 128) return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Test - Login", "Ungültiges Passwort! (1-128 Zeichen)\n\nLogge dich jetzt ein! \nGebe dein Passwort ein.", "Bestätigen", "Abbrechen");
- new string[256];
- sql_escape_string(shandle, inputtext, string);
- format(string, sizeof(string), "SELECT * FROM `Accounts` WHERE `ID`='%i' AND `Passwort`='%s' LIMIT 1", Spieler[playerid][pMySQLID], string);
- sql_query(shandle, string, QUERY_THREADED | QUERY_CACHED, "OnPlayerLoaded", "ri", playerid);
- Spieler[playerid][pLoggedIn] = true;
- SetSpawnInfo(playerid,0,0,1958.3783, 1343.1572, 15.3746,0,0,0,0,0,0,0);
- TogglePlayerSpectating(playerid, 0);
- }
- return 1;
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- /*forward BanEx(playerid);
- public BanEx(playerid)
- {
- Ban(playerid);
- return 1;
- }*/
- forward AntiCheatTest(playerid);
- public AntiCheatTest(playerid)
- {
- if(GetPlayerMoney(playerid)==0)
- {
- DestroyVehicle(Spieler[playerid][pAntiCheatCar]);
- GivePlayerMoney(playerid, Spieler[playerid][pMoney]);
- }
- else
- {
- DestroyVehicle(Spieler[playerid][pAntiCheatCar]);
- //BanEx(playerid, "[SERVER] Du hast s0beit angeschaltet!");
- return 1;
- }
- return 1;
- }
- forward OnPlayerRegistred(Result:result, playerid);
- public OnPlayerRegistred(Result:result, playerid)
- {
- Spieler[playerid][pMySQLID] = sql_insert_id(result);
- sql_free_result(result);
- return 1;
- }
- forward OnPlayerLoaded(Result:result, playerid);
- public OnPlayerLoaded(Result:result, playerid)
- {
- if(sql_num_rows(result))
- {
- sql_get_field(result, 1, Spieler[playerid][pName]);
- sql_get_field(result, 2, Spieler[playerid][pPasswort]);
- Spieler[playerid][pLevel] = sql_get_field_int(result, 3);
- SetPlayerScore(playerid, Spieler[playerid][pLevel]);
- Spieler[playerid][pMoney] = sql_get_field_int(result, 4);
- SetPlayerMoney(playerid, Spieler[playerid][pMoney]);
- printf("* %s geladen. *", SpielerName(playerid));
- }
- sql_free_result(result);
- return 1;
- }
- forward OnLoadCars(Result:result);
- public OnLoadCars(Result:result)//unvollständig
- {
- new rows = sql_num_rows(result);
- for(new i; i < rows; i++)
- {
- Cars[i][cID] = sql_get_field_int(result, 0);
- Cars[i][cModel] = sql_get_field_int(result, 1);
- Cars[i][cColors][0] = sql_get_field_int(result, 2);
- Cars[i][cColors][1] = sql_get_field_int(result, 3);
- Cars[i][cPos][0] = sql_get_field_float(result, 4);
- Cars[i][cPos][1] = sql_get_field_float(result, 5);
- Cars[i][cPos][2] = sql_get_field_float(result, 6);
- Cars[i][cPos][3] = sql_get_field_float(result, 7);
- Cars[i][cErstellt] = true;
- sql_next_row(result);
- }
- printf("* %i Cars geladen *", rows);
- sql_free_result(result);
- return 1;
- }
- forward OnCheckAccount(Result:result, playerid);
- public OnCheckAccount(Result:result, playerid)
- {
- if(!sql_num_rows(result))
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Test - Register", "Registriere dich jetzt! \nGebe dein Passwort an.", "Bestätigen", "Abbrechen");
- }
- else
- {
- Spieler[playerid][pMySQLID] = sql_get_field_int(result, 0);
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Test - Login", "Logge dich jetzt ein! \nGebe dein Passwort ein.", "Bestätigen", "Abbrechen");
- }
- sql_free_result(result);
- return 1;
- }
- stock CreateTables()
- {
- sql_free_result(sql_query(shandle, "CREATE TABLE IF NOT EXISTS `Accounts` (`ID` INT NOT NULL PRIMARY KEY AUTO_INCREMENT, `Name` VARCHAR(64) NOT NULL, `Passwort` VARCHAR(64) NOT NULL, \
- `Level` INT NOT NULL, `Money` INT NOT NULL);\
- CREATE TABLE IF NOT EXISTS `Cars` (`ID` INT NOT NULL PRIMARY KEY AUTO_INCREMENT, `Model` INT NOT NULL, `Color1` INT NOT NULL, `Color2` INT NOT NULL, `x` FLOAT NOT NULL, `y` FLOAT NOT NULL,\
- `z` FLOAT NOT NULL, `rot` FLOAT NOT NULL);"\
- , QUERY_NONE));
- return 1;
- }
- stock SpielerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- return name;
- }
- stock Check_s0beit(playerid)
- {
- ResetPlayerMoney(playerid), GivePlayerMoney(playerid, 100);
- Spieler[playerid][pAntiCheatCar] = CreateVehicle(565, 487.4806,-1741.2936,10.7610, 0.0000, -1, -1, 100);
- SetPlayerVirtualWorld(playerid,playerid+4214);
- SetVehicleVirtualWorld(Spieler[playerid][pAntiCheatCar],playerid+4214);
- SetVehicleHealth(Spieler[playerid][pAntiCheatCar],700);
- PutPlayerInVehicle(playerid, Spieler[playerid][pAntiCheatCar], 0);
- SetTimerEx("AntiCheatTest",4100,false,"i",playerid);
- return 1;
- }
- stock SetPlayerMoney(playerid, money)
- {
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid, money);
- return 1;
- }
- stock GivePlayerMoneyEx(playerid, money)
- {
- if(money < 0)
- Spieler[playerid][pMoney] -= money;
- else
- Spieler[playerid][pMoney] += money;
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid, Spieler[playerid][pMoney]);
- return 1;
- }
- stock SavePlayer(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- new string[256];
- format(string, sizeof(string), "UPDATE `Accounts` SET \
- `Name`='%s', \
- `Passwort`='%s', \
- `Level`='%i', \
- `Money`='%i' \
- WHERE `ID`='%i'",
- Spieler[playerid][pName], Spieler[playerid][pPasswort], Spieler[playerid][pLevel], Spieler[playerid][pMoney], Spieler[playerid][pMySQLID]);
- sql_free_result(sql_query(shandle, string, QUERY_THREADED));
- printf("* %s gespeichert. *", SpielerName(playerid));
- }
- return 1;
- }
- stock LoadCars()//Unvollständig
- {
- sql_query(shandle, "SELECT * FROM `Cars`", QUERY_THREADED | QUERY_CACHED, "OnLoadCars", "r");
- return 1;
- }
- stock _IsPlayerConnected(playerid)
- {
- if(Spieler[playerid][pLoggedIn] == true) return 1;
- return 0;
- }
- /*stock _ban(playerid)
- {
- SetTimerEx("BanEx", 150, 0, "i", playerid);
- return 1;
- }*/
Advertisement
Add Comment
Please, Sign In to add comment