Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Odbieramy nasze exportowane funkcje z pliku //mysql-db.js
- let moduleSQL = require('./mysql_db');
- let moduleSHA256 = require('./hash');
- /*
- [===============Panel Rejestracji i Logowania==============]
- */
- var acc = {
- id: "",
- login: "",
- char_name: "",
- pass: "",
- posX: "",
- posY: "",
- posZ: "",
- money: ""
- };
- module.exports = acc;
- mp.events.add('OnPlayerRegisterAttempt', (player, username, password) => {
- // var amount = 2000;
- // player.setVariable('money', amount);
- // acc.money_amount = player.getVariable('money');
- acc.money = 2000;
- // acc.login = moduleSHA256.SHA256(username);
- acc.login = username;
- acc.pass = moduleSHA256.SHA256(password);
- console.log(acc.login);
- console.log(acc.pass);
- acc.char_name = player.name;
- if (moduleSQL.mysqlc.connect) {
- var sqlCheck = 'SELECT * FROM users WHERE login = ? AND password = ?';
- moduleSQL.mysqlc.query(sqlCheck, [acc.login, acc.pass], function (err, result) {
- if (result == 0) {
- console.log("Wysyłam dane do bazy !");
- var sql = `INSERT INTO users (login, password, char_name, money) VALUES ('${acc.login}', '${acc.pass}', '${acc.char_name}','${acc.money}')`;
- moduleSQL.mysqlc.query(sql, function (err, result) {
- if (err) {
- console.log(err);
- player.outputChatBox("Nie udało się zarejestrować.");
- } else {
- player.outputChatBox("Zarejestrowałeś się poprawnie.");
- console.log('Last insert ID:', result.insertId);
- }
- });
- } else {
- player.outputChatBox("Już takie konto istnieje.");
- }
- });
- }
- });
- mp.events.add('OnPlayerLoginAttempt', (player, username, password) => {
- // acc.login = moduleSHA256.SHA256(username);
- acc.login = username;
- acc.pass = moduleSHA256.SHA256(password);
- console.log(acc.login);
- console.log(acc.pass);
- if (moduleSQL.mysqlc.connect) {
- var sqlCheck = 'SELECT * FROM users WHERE login = ? AND password = ?';
- moduleSQL.mysqlc.query(sqlCheck, [acc.login, acc.pass], function (err, result) {
- if (result == 0) {
- var loginResult = 0;
- console.log("Konto nie istnieje.");
- //Wywołuje event ze strony client-side z pliku Main.js
- player.call("LoginResult", [loginResult]);
- } else {
- var loginResult = 1;
- console.log("Konto istnieje.")
- //Wywołuje event ze strony client-side z pliku Main.js
- acc.id = result[0].id;
- acc.login = result[0].login;
- acc.pass = result[0].password;
- acc.char_name = result[0].char_name;
- acc.posX = result[0].posX;
- acc.posY = result[0].posY;
- acc.posZ = result[0].posZ;
- acc.money = result[0].money
- console.log("Dane konta po zalogowaniu: ");
- console.log(acc.id);
- console.log(acc.login);
- console.log(acc.char_name);
- console.log(acc.posX);
- console.log(acc.posY);
- console.log(acc.posZ);
- console.log(acc.money);
- player.call("LoginResult", [loginResult]);
- }
- });
- }
- });
- mp.events.add('LoadAccount', (player) => {
- if (acc.posX == 0 && acc.posY == 0 && acc.posZ == 0) {
- player.spawn(new mp.Vector3(6672.400390625, -7560.73193359375, 11.243311882019043));
- player.outputChatBox(`Witamy na serwerze ! ${player.name}`);
- } else {
- player.spawn(new mp.Vector3(acc.posX, acc.posY, acc.posZ));
- player.outputChatBox(`Witamy na serwerze ! ${player.name}`);
- }
- });
- function SaveAccount(player) {
- moduleSQL.mysqlc.query('UPDATE `users` SET posX = ?, posY = ?, posZ = ?, money = ? WHERE id = ?', [player.position.x.toFixed(2), player.position.y.toFixed(2), player.position.z.toFixed(2), acc.money, acc.id], function (err, res, row) {
- if (err) console.log(err);
- else {
- console.log("Zaaktualizowano dane w bazie MySQL");
- }
- });
- }
- mp.events.add("playerQuit", (player) => {
- SaveAccount(player);
- });
- /*
- [===============System Pojazdów==============]
- */
- var veh = {
- id: "",
- model: "",
- posX: "",
- posY: "",
- posZ: "",
- color1_1: "",
- color1_2: "",
- color1_3: "",
- color2_1: "",
- color2_2: "",
- color2_3: "",
- owner: "",
- acc_id: "",
- spawned: ""
- };
- //Tablica do przechowywania pojazdów gracza.
- var spawnedVehicles = [];
- var spawnStatusVehicles = [];
- //Obiekt do którego przypisany jest utworzony pojazd w celu przekazania jego do komend /engineon i /engineoff
- var spawnedVehicle = {};
- mp.events.addCommand('buycar', (player, _, vehName) => {
- if (vehName && vehName.trim().length > 0) {
- //Domyślne ustawienia kupionego samochodu:
- veh.posX = 7401.07666015625;
- veh.posY = -7560.8955078125;
- veh.posZ = 3.85111141204834;
- veh.color1_1 = 0;
- veh.color1_2 = 255;
- veh.color1_3 = 0;
- veh.color2_1 = 0;
- veh.color2_2 = 255;
- veh.color2_3 = 0;
- veh.model = vehName;
- if (moduleSQL.mysqlc.connect) {
- var sql = `INSERT INTO vehicles (model, posX, posY, posZ, color1_1, color1_2, color1_3, color2_1, color2_2, color2_3, owner, acc_id) VALUES ('${veh.model}', '${veh.posX}', '${veh.posY}','${veh.posZ}','${veh.color1_1}','${veh.color1_2}','${veh.color1_3}','${veh.color2_1}','${veh.color2_2}','${veh.color2_3}','${acc.char_name}','${acc.id}')`;
- moduleSQL.mysqlc.query(sql, function (err, result) {
- if (err) {
- console.log(err);
- player.outputChatBox("Nie udało się kupić pojazdu.");
- } else {
- player.outputChatBox("Kupiłeś pojazd.");
- player.outputChatBox(`ID Twojego pojazdu to: ${result.insertId}`);
- console.log('ID pojazdu przypisane w bazie danych: ', result.insertId);
- }
- });
- }
- }
- });
- mp.events.addCommand('spawnc', (player, _, id) => {
- if (id && id.trim().length > 0) {
- console.log("Wysyłam zapytanie do bazy danych w celu pobrania samochodów należących do gracza, który wywołał komendę.")
- var queryGetVehicle = 'SELECT * FROM vehicles WHERE owner = ? AND acc_id = ? AND veh_id = ?';
- moduleSQL.mysqlc.query(queryGetVehicle, [acc.char_name, acc.id, id], function (err, result) {
- if (result == 0) {
- console.log("Nie masz takiego pojazdu w posiadaniu.");
- } else {
- console.log("Pobieram dane o kupionym samochodzie z bazy i przypisuje do zmiennych");
- veh.id = id;
- veh.model = result[0].model;
- veh.posX = result[0].posX;
- veh.posY = result[0].posY;
- veh.posZ = result[0].posZ;
- veh.color1_1 = result[0].color1_1;
- veh.color1_2 = result[0].color1_2;
- veh.color1_3 = result[0].color1_3;
- veh.color2_1 = result[0].color2_1;
- veh.color2_2 = result[0].color2_2;
- veh.color2_3 = result[0].color2_3;
- veh.owner = result[0].owner;
- veh.acc_id = result[0].acc_id;
- // console.log("Dane pojazdu: ");
- // console.log(veh.id);
- // console.log(veh.model);
- // console.log(veh.posX);
- // console.log(veh.posY);
- // console.log(veh.posZ);
- // console.log(veh.color1_2);
- // console.log(veh.color2_2);
- // console.log(veh.owner);
- // console.log(veh.acc_id);
- var currentVehicle = player.getVariable('PersonalVehicle');
- if (currentVehicle != null) {
- currentVehicle.destroy();
- }
- var spawnedVehicleFromDB = mp.vehicles.new(mp.joaat(`${veh.model}`), new mp.Vector3(veh.posX, veh.posY, veh.posZ), {
- engine: false,
- heading: 90,
- color: [
- [0, 255, 0],
- [0, 255, 0]
- ]
- });
- console.log("Stworzyłem pojazd...");
- player.setVariable('PersonalVehicle', spawnedVehicleFromDB);
- spawnedVehicleFromDB.setVariable('VehID', veh.id);
- spawnedVehicles.push(spawnedVehicleFromDB);
- console.log("Wysyłam obiekt pojazdu do tablicy 'spawnedVehicles' gdzie zapisywane są pojazdy gracza.")
- spawnedVehicleFromDB.setVariable("owner_id", acc.id);
- spawnedVehicle = spawnedVehicleFromDB;
- console.log("Przypisuje numer id konta gracza z bazy danych do utworzonego pojazdu, a następnie przypisuje zmienną przechowująca utworzony pojazd do obiektu 'spawnedVehicle' w celu uzyskania dostępu do niego w komendzie /engineon oraz /engineoff.");
- }
- });
- } else {
- player.outputChatBox("Nie poprawnie wpisana komenda !")
- }
- });
- mp.events.addCommand('savespawnc', (player, _, id) => {
- if (id && id.trim().length > 0) {
- let owner = player.vehicle.getVariable("owner_id");
- console.log(owner);
- if (acc.id == owner) {
- veh.posX = player.position.x;
- veh.posY = player.position.y;
- veh.posZ = player.position.z;
- moduleSQL.mysqlc.query('UPDATE `vehicles` SET posX = ?, posY = ?, posZ = ? WHERE acc_id = ? AND owner = ? AND veh_id = ?', [veh.posX, veh.posY, veh.posZ, acc.id, acc.char_name, id], function (err, res, row) {
- if (err) console.log(err);
- else {
- player.outputChatBox("Zaparkowałeś pojazd w nowym miejscu.");
- }
- });
- } else {
- player.outputChatBox("Nie możesz zaparkować cudzego samochodu.");
- }
- } else {
- player.outputChatBox("Nie poprawnie wpisana komenda.")
- }
- });
- mp.events.addCommand('deletecar', (player, _, vehID) => {
- if (vehID && vehID.trim().length > 0) {
- spawnedVehicles.forEach((vehicle, i) => {
- if (vehicle.getVariable('VehID') == vehID) {
- spawnedVehicles.splice(i, 1);
- vehicle.destroy();
- player.outputChatBox("Usunieto pojazd.");
- }
- })
- }
- });
- mp.events.addCommand('checkcar', (player, id) => {
- console.log(spawnedVehicles);
- });
- mp.events.addCommand('engineon', (player, result) => {
- let owner = player.vehicle.getVariable("owner_id");
- console.log(owner);
- if (acc.id == owner) {
- player.vehicle.engine = true;
- player.outputChatBox("Odpaliłeś silnik.");
- } else {
- player.outputChatBox("Nie masz kluczy do tego samochodu !")
- }
- });
- mp.events.addCommand('engineoff', player => {
- let owner = player.vehicle.getVariable("owner_id");
- console.log(owner);
- if (acc.id == owner) {
- player.vehicle.engine = false;
- player.outputChatBox("Zgasiłeś silnik.");
- } else {
- player.outputChatBox("Nie masz kluczy do tego samochodu !")
- }
- });
- function playerStartEnterVehicleHandler(player) {
- var result = 0;
- player.call("PlayerIsInVehicle", [result]);
- }
- mp.events.add("playerStartEnterVehicle", playerStartEnterVehicleHandler);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement