-
Posts
12 -
Joined
-
Last visited
Content Type
Profiles
Forums
News
Documentation
Everything posted by AlexandruBHD
-
descarca asta de la windows zip pune in gm si nu iti mai apare https://github.com/pBlueG/SA-MP-MySQL/releases/tag/R39-6
-
Am o problema cu sv meu de samp nu porneste samp server ul, ma puteti ajuta? SA-MP Dedicated Server ---------------------- v0.3.7-R2, (C)2005-2015 SA-MP Team [04:02:31] filterscripts = "" (string) [04:02:31] [04:02:31] Server Plugins [04:02:31] -------------- [04:02:31] Loading plugin: mysql [04:02:31] >> plugin.mysql: R39-6 successfully loaded. [04:02:31] Loaded. [04:02:31] Loading plugin: sscanf [04:02:31] [04:02:31] =============================== [04:02:31] sscanf plugin loaded. [04:02:31] Version: 2.8.1 [04:02:31] (c) 2012 Alex "Y_Less" Cole [04:02:31] =============================== [04:02:31] Loaded. [04:02:31] Loading plugin: whirlpool SERVER LOG....daca pornesc samp server, se inchide.....
-
ok, o sa acc cand se deschide telefonul ca e la incarcat, dar ai idee de ce cand pornesc sv nu imi apare sa ma loghez?
-
am insta nu discord @krys.56
-
nici macar nu se compileaza, gg:)) https://imgur.com/7tBrtNV
-
care include? ca nu mrg linku
-
scripting Ajutor cat mai rapid daca se poate...
AlexandruBHD replied to AlexandruBHD's topic in Discuţii scripting
Am rezolvat. -
Bun deci lucrez la un gm de la 0 si am intampiat erorile astea, si sunt la inceput cu scripting-ul... C:\Users\Acer\Desktop\GamemodeDeLa0\gamemodes\eureka.pwn(530) : error 037: invalid string (possibly non-terminated string) C:\Users\Acer\Desktop\GamemodeDeLa0\gamemodes\eureka.pwn(530) : error 017: undefined symbol "Admin" C:\Users\Acer\Desktop\GamemodeDeLa0\gamemodes\eureka.pwn(530) : error 017: undefined symbol "level" C:\Users\Acer\Desktop\GamemodeDeLa0\gamemodes\eureka.pwn(530) : fatal error 107: too many error messages on one line Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 4 Errors. Gamemode // Tranium RPG - Summer Project // Started on: 01.06.2017 (by AlexandruBHD) // Edited by - /* =================================================================== ----------------------- Informations ----------------------- =================================================================== // Group Types type 1: Police type 2: Hitman type 3: Gangs */ #define MAILER_URL "l0k3d-demo.tk/mail.php" #include <a_samp> #include <a_mysql> #include <fixes> #include <foreach> #include <sscanf2> #include <streamer> #include <regex> #include <YSI\y_master> #include <YSI\y_commands> #include <YSI\y_timers> #include <YSI\y_iterate> #include <YSI\y_stringhash> #include <YSI\y_bit> #include <define> #include <fly> #include <sendmail> #include <mSelection> // Natives native WP_Hash(buffer[], len, const str[]); // MySQL Configuration new handle, rows, fields; new BitArray:pLogged<MAX_PLAYERS>, BitArray:flyingStatus<MAX_PLAYERS>, loginTries[MAX_PLAYERS], playerHashedPass[MAX_PLAYERS][129], enteredCode[MAX_PLAYERS] ; new para, para2, strPara[30], gMsg[128] ; new Text:Logo[2], PlayerText:SkinLogo[MAX_PLAYERS], Text:ClockTime, Text:ClockDate ; new Iterator:Admins<MAX_PLAYERS> ; enum playerInfo { pSQLID, pName[MAX_PLAYER_NAME + 1], pPassword[130], pSerialCode[41], pSkin, pLevel, pAdmin, pAge, pSex, pEmail[100], pCash, pBank, pMember, pRank }; new pInfo[MAX_PLAYERS][playerInfo]; enum groupInfo { gID, gName[50], gMotd[128], Float:geX, Float:geY, Float:geZ, Float:giX, Float:giY, Float:giZ, gRankname1[20], gRankname2[20], gRankname3[20], gRankname4[20], gRankname5[20], gRankname6[20], gRankname7[20], gType, gInterior, gDoor, gLeadskin, gPickup, Text3D:gLabel }; new gInfo[MAX_GROUPS][groupInfo]; enum vehInfo { vID, vModel, vGroup, vColor1, vColor2, vCarPlate[11], Float:vX, Float:vY, Float:vZ, Float:vA }; new vInfo[MAX_VEHICLES][vehInfo], vehID[MAX_VEHICLES]; main() { print("\n----------------------------------"); print(" Tranium RPG Gamemode by AlexandruBHD "); print("----------------------------------\n"); } //timers task OneSecond[1000]() { new hour, minutes, seconds, day, month, year, mstr[20]; gettime(hour, minutes, seconds), getdate(year, month, day); format(gMsg, 128,"%02d:%02d", hour, minutes), TextDrawSetString(ClockTime, gMsg); switch(month) { case 1: mstr="january"; case 2: mstr="february"; case 3: mstr="march"; case 4: mstr="april"; case 5: mstr="may"; case 6: mstr="june"; case 7: mstr="iuly"; case 8: mstr="august"; case 9: mstr="september"; case 10: mstr="octomber"; case 11: mstr="november"; case 12: mstr="december"; } format(gMsg, 128,"%02d %s %02d", day, mstr, year), TextDrawSetString(ClockDate, gMsg); foreach(new x: Player) { ResetPlayerMoney(x), GivePlayerMoney(x, pInfo[x][pCash]); } } task FiveMinutes[1000 * (60*5)]() { for(new v; v < MAX_VEHICLES; v++) { if(vInfo[v][vID] > 0 ) { saveVeh(v); } } for(new i; i < MAX_GROUPS; i++) { saveGroup(i); } foreach(new p : Player) { saveAccount(p); } sendAdmins(COLOR_RED, "AdmData: "WHITE"Toate datele server-ului au fost salvate."); } timer kickTimer[500](playerid) { Kick(playerid); } timer securityKick[1000 * 120](playerid) { if(enteredCode[playerid] == 0) { Kick(playerid); } } timer setVehicleZAngle[700](vehicleid) { SetVehicleZAngle(vehicleid, vInfo[vehID[vehicleid]][vA]); } public OnGameModeInit() { handle = mysql_connect("localhost", "root", "eureka", ""); if(handle && mysql_errno(handle) == 0) { print("[MYSQL] Baza de date sa conectat cu succes!"); } else print("[MYSQL] Connection not found."); mysql_tquery(handle, "SELECT * FROM `groups`", "loadGroups", ""); mysql_tquery(handle, "SELECT * FROM `cars`", "loadCars", ""); EnableStuntBonusForAll(0); ShowPlayerMarkers(0); UsePlayerPedAnims(); DisableInteriorEnterExits(); SendRconCommand("language English"); SetGameModeText("E:RPG v1"); Logo[0] = TextDrawCreate(638.400085, 431.573303, "tranium"); TextDrawLetterSize(Logo[0], 0.354799, 1.704532); TextDrawAlignment(Logo[0], 3); TextDrawColor(Logo[0], -1); TextDrawSetShadow(Logo[0], 0); TextDrawSetOutline(Logo[0], 1); TextDrawBackgroundColor(Logo[0], 51); TextDrawFont(Logo[0], 3); TextDrawSetProportional(Logo[0], 1); Logo[1] = TextDrawCreate(602.000915, 423.359893, "rpg"); TextDrawLetterSize(Logo[1], 0.161597, 0.975287); TextDrawAlignment(Logo[1], 1); TextDrawColor(Logo[1], -1); TextDrawSetShadow(Logo[1], 0); TextDrawSetOutline(Logo[1], 1); TextDrawBackgroundColor(Logo[1], 51); TextDrawFont(Logo[1], 2); TextDrawSetProportional(Logo[1], 1); ClockTime = TextDrawCreate(577.599548, 21.653348, "23:45"); TextDrawLetterSize(ClockTime, 0.449999, 1.600000); TextDrawAlignment(ClockTime, 2); TextDrawColor(ClockTime, -1); TextDrawSetShadow(ClockTime, 0); TextDrawSetOutline(ClockTime, 1); TextDrawBackgroundColor(ClockTime, 51); TextDrawFont(ClockTime, 3); TextDrawSetProportional(ClockTime, 1); ClockDate = TextDrawCreate(579.200256, 7.466676, "23 octombrie 2017"); TextDrawLetterSize(ClockDate, 0.177200, 1.712000); TextDrawAlignment(ClockDate, 2); TextDrawColor(ClockDate, -1); TextDrawSetShadow(ClockDate, 0); TextDrawSetOutline(ClockDate, 1); TextDrawBackgroundColor(ClockDate, 51); TextDrawFont(ClockDate, 2); TextDrawSetProportional(ClockDate, 1); return 1; } public OnGameModeExit() { for(new v; v < MAX_VEHICLES; v++) { if(vInfo[v][vID] > 0 ) { saveVeh(v); } } for(new i; i < MAX_GROUPS; i++) { saveGroup(i); } foreach(new p : Player) { saveAccount(p); } mysql_close(handle); return 1; } public OnPlayerRequestClass(playerid, classid) { SetPlayerPos(playerid, -1410.8655,-298.9116,14.1484); SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); return 1; } public OnPlayerConnect(playerid) { new query[128]; mysql_format(handle, query, 128, "SELECT * FROM `players` WHERE `username` = '%e'", GetName(playerid)); mysql_tquery(handle, query, "accountCheck", "i", playerid); // create td SkinLogo[playerid] = CreatePlayerTextDraw(playerid, 532.599975, 405.319976, "LD_SPAC:white"); PlayerTextDrawLetterSize(playerid, SkinLogo[playerid], 0.000000, 0.000000); PlayerTextDrawTextSize(playerid, SkinLogo[playerid], 110.0, 110.0); PlayerTextDrawBoxColor(playerid, SkinLogo[playerid], 0xFFFFFF00); PlayerTextDrawBackgroundColor(playerid, SkinLogo[playerid], 0xFFFFFF00); PlayerTextDrawAlignment(playerid, SkinLogo[playerid], 1); PlayerTextDrawColor(playerid, SkinLogo[playerid], -1); PlayerTextDrawSetShadow(playerid, SkinLogo[playerid], 0); PlayerTextDrawSetOutline(playerid, SkinLogo[playerid], 0); PlayerTextDrawFont(playerid, SkinLogo[playerid], TEXT_DRAW_FONT_MODEL_PREVIEW); PlayerTextDrawSetPreviewRot(playerid, SkinLogo[playerid], 0.000000, 0.000000, -340.000000, 1.000000); PlayerTextDrawSetPreviewModel(playerid, SkinLogo[playerid], SPAWN_SKIN); //show td PlayerTextDrawShow(playerid, SkinLogo[playerid]); TextDrawShowForPlayer(playerid, Logo[0]), TextDrawShowForPlayer(playerid, Logo[1]); TextDrawShowForPlayer(playerid, ClockTime), TextDrawShowForPlayer(playerid, ClockDate); SetSpawnInfo(playerid, 0, 0, 725.6906,-1450.2246,17.6953, 359.4464, 0,0,0,0, 0, 0 ); InitFly(playerid); return 1; } public OnPlayerDisconnect(playerid, reason) { // iterate if(pInfo[playerid][pAdmin] > 0) { Iter_Remove(Admins, playerid); } saveAccount(playerid); resetData(playerid); return 1; } // Login forward accountCheck(playerid); public accountCheck(playerid) { TogglePlayerSpectating(playerid, 1); cache_get_data(rows, fields, handle); if(rows) { ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "SERVER: Login", ""SYN"Bine ai revenit pe "CREM"Tranium RPG"SYN"!\n\nAcest cont este inregistrat deja.\nIntrodu parola pentru a te loga pe contul tau.", "Login", "Cancel"); GameTextForPlayer(playerid, "~y~CONT INREGISTRAT", 5000, 4); } else { ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "SERVER: Register", ""SYN"Bine ai venit pe "CREM"Tranium RPG"SYN"!\n\nAcest cont nu este inregistrat, introdu parola pentru a te inregistra pe server.", "Register", "Cancel"); GameTextForPlayer(playerid, "~y~CONT NEINREGISTRAT", 5000, 4); } InterpolateCameraPos(playerid, 2062.878906, 988.830627, 11.947507, 2022.668579, 1397.960937, 27.489007, 20000); InterpolateCameraLookAt(playerid, 2063.091552, 993.787048, 12.570880, 2022.038208, 1402.912109, 27.785707, 10000); return 1; } forward accountLogin(playerid); public accountLogin(playerid) { cache_get_data(rows, fields, handle); if(rows) { pInfo[playerid][pSQLID] = cache_get_field_content_int(0, "ID"); cache_get_field_content(0, "username", pInfo[playerid][pName], handle, MAX_PLAYER_NAME + 1); cache_get_field_content(0, "SerialCode", pInfo[playerid][pSerialCode], handle, 41); cache_get_field_content(0, "password", pInfo[playerid][pPassword], handle, 129); cache_get_field_content(0, "Email", pInfo[playerid][pEmail], handle, 100); pInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level"); pInfo[playerid][pAdmin] = cache_get_field_content_int(0, "AdminLevel"); pInfo[playerid][pCash] = cache_get_field_content_int(0, "Cash"); pInfo[playerid][pAge] = cache_get_field_content_int(0, "Age"); pInfo[playerid][pSex] = cache_get_field_content_int(0, "Sex"); pInfo[playerid][pBank] = cache_get_field_content_int(0, "Bank"); pInfo[playerid][pMember] = cache_get_field_content_int(0, "Member"); pInfo[playerid][pRank] = cache_get_field_content_int(0, "Rank"); pInfo[playerid][pSkin] = cache_get_field_content_int(0, "Skin"); Clearchat(playerid, 20), SCM(playerid, COLOR_LIGHT, "SERVER: "WHITE"Bine ai revenit, distractie placuta!"); if(pInfo[playerid][pMember]) { SCMEx(playerid, COLOR_TEAL, "Group motd: "GREY"%s", gInfo[pInfo[playerid][pMember]][gMotd]); } if(pInfo[playerid][pAdmin] > 0) { Iter_Add(Admins, playerid); } new serial[41], query[100]; gpci(playerid, serial, 41); if(strcmp(pInfo[playerid][pSerialCode], serial, false)) { new str[200], randCod[10]; format(randCod, 10, randomString(10)); mysql_format(handle, query, 256, "INSERT INTO `accounts_blocked` (`playerID`, `time`, `securityCode`) VALUES ('%d', '%d', '%e')", pInfo[playerid][pSQLID], GetTickCount(), randCod); mysql_tquery(handle, query, "", ""); format(str, 384, "Hello %s!\nYou received this email because you logged in on your account from a different location.\nUse this code to continue the game: %s", GetName(playerid), randCod); SendMail(pInfo[playerid][pEmail], "[email protected]", "Tranium RPG", "Security code!", str); ShowPlayerDialog(playerid, DIALOG_BLOCK, DIALOG_STYLE_PASSWORD, "SERVER: Account blocked", ""SYN"This account is "DRED"blocked "SYN"because you are logged in from a different location.\n\nTo unblock your account you need to use a security cod, sended to your email.\nYou have "CREM"2 minutes "SYN"to use it.", "Proceed", "Cancel"); defer securityKick(playerid); } Bit_Set(pLogged, playerid, true); TogglePlayerSpectating(playerid, 0); SetPlayerScore(playerid, pInfo[playerid][pLevel]); SpawnPlayer(playerid); } else { if(2-loginTries[playerid] != 0) { loginTries[playerid] ++; SCMEx(playerid, COLOR_DRED, "You have %d attempts to login, otherwise you will be kicked from the server.", 3-loginTries[playerid]); ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "SERVER: Login", ""SYN"Bine ai revenit pe "CREM"Tranium RPG"SYN"!\n\nAcest cont este deja inregistrat.\nTe rugam sa introduci parola "DRED"corecta"SYN" pentru a te loga pe contul tau.", "Login", "Cancel"); } else ShowPlayerDialog(playerid, DIALOG_GENERAL, DIALOG_STYLE_MSGBOX, "SERVER: Parola Gresita", "Ai primit kick deoarece ai gresit parola de 3 ori.", "Okay", ""), defer kickTimer(playerid); } return 1; } // Load Data forward loadGroups(); public loadGroups() { cache_get_data(rows, fields); if(rows) { new id, pickup; for(new i; i < rows; i++) { id = cache_get_field_content_int(i, "id"); gInfo[id][gID] = id; cache_get_field_content(i, "Name", gInfo[id][gName], handle, 50); cache_get_field_content(i, "Motd", gInfo[id][gMotd], handle, 128); cache_get_field_content(i, "rankName1", gInfo[id][gRankname1], handle, 20); cache_get_field_content(i, "rankName2", gInfo[id][gRankname2], handle, 20); cache_get_field_content(i, "rankName3", gInfo[id][gRankname3], handle, 20); cache_get_field_content(i, "rankName4", gInfo[id][gRankname4], handle, 20); cache_get_field_content(i, "rankName5", gInfo[id][gRankname5], handle, 20); cache_get_field_content(i, "rankName6", gInfo[id][gRankname6], handle, 20); cache_get_field_content(i, "rankName7", gInfo[id][gRankname7], handle, 20); gInfo[id][geX] = cache_get_field_content_float(i, "eX"); gInfo[id][geY] = cache_get_field_content_float(i, "eY"); gInfo[id][geZ] = cache_get_field_content_float(i, "eZ"); gInfo[id][giX] = cache_get_field_content_float(i, "iX"); gInfo[id][giY] = cache_get_field_content_float(i, "iY"); gInfo[id][giZ] = cache_get_field_content_float(i, "iZ"); gInfo[id][gType] = cache_get_field_content_int(i, "Type"); gInfo[id][gInterior] = cache_get_field_content_int(i, "Interior"); gInfo[id][gDoor] = cache_get_field_content_int(i, "Door"); gInfo[id][gLeadskin] = cache_get_field_content_int(i, "leadSkin"); format(gMsg, 128, "{FF6347}%s`s HQ\n{D2B48C}(%s)", gInfo[id][gName], (gInfo[id][gDoor]) ? ("closed") : ("opened")); if(gInfo[id][gType] == 1) { pickup = 1247; } else if(gInfo[id][gType] == 2) { pickup = 1254; } else { pickup = 1239; } gInfo[id][gPickup] = CreateDynamicPickup(pickup, 1, gInfo[id][geX], gInfo[id][geY], gInfo[id][geZ], -1, -1, -1, 20.0); gInfo[id][gLabel] = CreateDynamic3DTextLabel(gMsg, COLOR_YELLOW, gInfo[id][geX], gInfo[id][geY], gInfo[id][geZ], 100, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, 20.0); } } else print("No groups."); return 1; } forward loadCars(); public loadCars() { cache_get_data(rows, fields, handle); if(rows) { for(new x = 0; x < rows; x++) { new i = cache_get_field_content_int(x, "id"); vInfo[vID] = i; vInfo[vModel] = cache_get_field_content_int(x, "Model"); vInfo[vGroup] = cache_get_field_content_int(x, "Group"); vInfo[vX] = cache_get_field_content_float(x, "pX"); vInfo[vY] = cache_get_field_content_float(x, "pY"); vInfo[vZ] = cache_get_field_content_float(x, "pZ"); vInfo[vA] = cache_get_field_content_float(x, "pA"); cache_get_field_content(x, "CarPlate", vInfo[vCarPlate], handle, 11); vInfo[vColor1] = cache_get_field_content_int(x, "Color1"); vInfo[vColor2] = cache_get_field_content_int(x, "Color2"); new car = CreateVehicle(vInfo[vModel], vInfo[vX], vInfo[vY], vInfo[vZ], vInfo[vA], vInfo[vColor1], vInfo[vColor2], -1); vehID[car] = vInfo[vID]; SetVehicleNumberPlate(car, vInfo[vCarPlate]); } } else print("No cars."); return 1; } forward saveGroup(id); public saveGroup(id) { new query[500]; mysql_format(handle, query, 500, "UPDATE `groups` SET `Name` = '%s', `Motd` = '%s', `eX` = '%f', `eY` = '%f', `eZ` = '%f', `iX` = '%f', `iY` = '%f', `iZ` = '%f', `rankName1` = '%s', `rankName2` = '%s', `rankName3` = '%s', `rankName4` = '%s', `rankName5` = '%s', `rankName6` = '%s', `rankName7` = '%s', `Type` = '%d', `Interior` = '%d', `Door` = '%d', `leadSkin` = '%d' WHERE `id` = '%d'", gInfo[id][gName], gInfo[id][gMotd], gInfo[id][geX], gInfo[id][geY],gInfo[id][geZ], gInfo[id][giX], gInfo[id][giY], gInfo[id][giZ], gInfo[id][gRankname1], gInfo[id][gRankname2], gInfo[id][gRankname3], gInfo[id][gRankname4], gInfo[id][gRankname5], gInfo[id][gRankname6], gInfo[id][gRankname7], gInfo[id][gType], gInfo[id][gInterior], gInfo[id][gDoor], gInfo[id][gLeadskin], id); mysql_tquery(handle, query, "", ""); return 1; } forward saveVeh(car); public saveVeh(car) { new query[500]; mysql_format(handle, query, 500, "UPDATE `cars` SET `Model` = '%d', `Group` = '%d', `CarPlate` = '%e', `pX` = '%f', `pY` = '%f', `pZ` = '%f', `pA` = '%f', `Color1` = '%d', `Color2` = '%d' WHERE `id` = '%d'", vInfo[car][vModel], vInfo[car][vGroup], vInfo[car][vCarPlate], vInfo[car][vX], vInfo[car][vY], vInfo[car][vZ], vInfo[car][vA], vInfo[car][vColor1], vInfo[car][vColor2], car); mysql_tquery(handle, query, "", ""); return 1; } forward saveAccount(playerid); public saveAccount(playerid) { new query[500]; // mysql_format(handle, query, 500, "UPDATE `players` SET `username` = '%e', `Level` = '%d', `Email` = '%e', `AdminLevel` = '%d', `Member` = '%d', `Rank` = '%d', `Skin` = '%d' WHERE `ID` = '%d'", // pInfo[playerid][pName], pInfo[playerid][pLevel], pInfo[playerid][pEmail], pInfo[playerid][pAdmin], pInfo[playerid][pMember], pInfo[playerid] mysql_format(handle, query, 500, "UPDATE `players` SET `username` = '%e', `Level` = '%d', `Email` = '%e', `AdminLevel` = '%d', `Member` = '%d', `Rank` = '%d', `Skin` = '%d', `Cash` = '%d', `Bank` = '%d' WHERE `ID` = '%d'", pInfo[playerid][pName], pInfo[playerid][pLevel], pInfo[playerid][pEmail], pInfo[playerid][pAdmin], pInfo[playerid][pMember], pInfo[playerid][pRank], pInfo[playerid][pSkin], pInfo[playerid][pCash], pInfo[playerid][pBank], pInfo[playerid][pSQLID]); mysql_tquery(handle, query, "", ""); return 1; } forward securityCodeCheck(playerid); public securityCodeCheck(playerid) { cache_get_data(rows, fields, handle); if(rows) { SCM(playerid, COLOR_LIGHTRED, "You have entered the correct code, now you can play!"), enteredCode[playerid] = 1; } else ShowPlayerDialog(playerid, DIALOG_BLOCK, DIALOG_STYLE_PASSWORD, "SERVER: Account blocked", ""SYN"You used a "DRED"incorrect code"SYN", try again.\n\nTo unblock your account you need to use a security cod, sended to your email.\nYou have "CREM"2 minutes "SYN"to use it.", "Proceed", "Cancel"); return 1; } public OnPlayerSpawn(playerid) { if(Bit_Get(pLogged, playerid) == true) { SetPlayerHealth(playerid, 99.00); SetPlayerArmour(playerid, 00.00); SetPlayerSkin(playerid, pInfo[playerid][pSkin]); if(pInfo[playerid][pMember] == 0) { SetPlayerPos(playerid, 725.6906,-1450.2246,17.6953), SetPlayerFacingAngle(playerid, 359.4464); SetPlayerInterior(playerid, 0), SetPlayerVirtualWorld(playerid, 0), SetCameraBehindPlayer(playerid); } else { new i = pInfo[playerid][pMember]; SetPlayerPos(playerid, gInfo[giX], gInfo[giY], gInfo[giZ]); SetPlayerInterior(playerid, gInfo[gInterior]); SetPlayerVirtualWorld(playerid, i+1); SetCameraBehindPlayer(playerid); } } return 1; } public OnPlayerDeath(playerid, killerid, reason) { return 1; } public OnVehicleSpawn(vehicleid) { if(vInfo[vehID[vehicleid]][vID] > 0) { ChangeVehicleColor(vehicleid, vInfo[vehID[vehicleid]][vColor1],vInfo[vehID[vehicleid]][vColor2]); SetVehiclePos(vehicleid, vInfo[vehID[vehicleid]][vX], vInfo[vehID[vehicleid]][vY], vInfo[vehID[vehicleid]][vZ]); defer setVehicleZAngle(vehicleid); } return 1; } public OnVehicleDeath(vehicleid, killerid) { return 1; } public OnPlayerText(playerid, text[]) { format(gMsg, 128, "%s: %s", GetName(playerid), text); SendClientMessageToAll(-1, gMsg); SetPlayerChatBubble(playerid, text, COLOR_GREY, 10.0, 10000); return 0; } public OnPlayerCommandPerformed(playerid, cmdtext[], success) { if (success) return 1; if(!success) return SCMEx(playerid, COLOR_LIGHT, "SERVER: This command ("TEAL"%s"SYN") does not exist.", cmdtext); return 0; } YCMD:ah(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); SCM(playerid, COLOR_TEAL, "----------------------------- Admins Commands-----------------------------"); SCM(playerid, -1, "Admin level 1: /a /vr /vehinfo /gotoveh /gotohq /gotopoint /fly /stopfly /gotods /tbox"); SCM(playerid, -1, "Admin level 2: /moveveh"); SCM(playerid, -1, "Admin level 3: /setleader /groupveh /modelveh /colorveh"); SCM(playerid, -1, "Admin level 4: /sethqint /sethqext"); SCM(playerid, -1, "Admin level 5: /none); SCM(playerid, -1, "Admin level 6: /addvehicle /setadmin "); SCM(playerid, COLOR_TEAL, "---------------------------------------------------------------------------"); return 1; } YCMD:pset(playerid, params[], help) { if(sscanf(params, "us[30]i", para, strPara, para2)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/pset [playerid] [item] [value]"), SCM(playerid, -1, "Items: rank, group, money, bank (moeny)"); switch(YHash(strPara)) { case _H<rank>: { if(para2 < 0 || para2 > 7) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/pset [playerid] [rank] [0-7]"); format(gMsg, 128, "/pset: Admin %s changed %s`s rank to %d.", GetName(playerid), GetName(para), para2), sendAdmins(COLOR_YELLOW, gMsg); SCMEx(playerid, COLOR_LORANGE, "Admin %s changed your rank to %d.", GetName(para), para2); pInfo[para][pRank] = para2; } case _H<group>: { if(gInfo[para2][gID] == 0 && para2 != 0) return SCM(playerid, COLOR_LIGHT, "Error: Invalid group id."); format(gMsg, 128, "/pset: Admin %s changed %s`s group to %s (id: %d).", GetName(playerid), GetName(para), gInfo[para2][gName], para2), sendAdmins(COLOR_YELLOW, gMsg); SCMEx(playerid, COLOR_LORANGE, "Admin %s changed your group to %s.", GetName(para), gInfo[para2][gName]); pInfo[para][pMember] = para2, pInfo[para][pRank] = (para2 == 0) ? (0) : (1); } case _H<money>: { format(gMsg, 128, "/pset: Admin %s changed %s`s money to $%s.", GetName(playerid), GetName(para), FormatNumber(para2)), sendAdmins(COLOR_YELLOW, gMsg); SCMEx(playerid, COLOR_LORANGE, "Admin %s changed your money to $%s.", GetName(para), FormatNumber(para2)); pInfo[para][pCash] = para2; } case _H<bank>: { format(gMsg, 128, "/pset: Admin %s changed %s`s bank money to $%s.", GetName(playerid), GetName(para), FormatNumber(para2)), sendAdmins(COLOR_YELLOW, gMsg); SCMEx(playerid, COLOR_LORANGE, "Admin %s changed your bank money to $%s.", GetName(para), FormatNumber(para2)); pInfo[para][pBank] = para2; } default: { SCM(playerid, COLOR_GREY, "Error: Wrong item."); } } return 1; } YCMD:vr(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); if(IsPlayerInAnyVehicle(playerid)) { SetVehicleToRespawn(GetPlayerVehicleID(playerid)); SCMEx(playerid, -1, ""NON"You succesfull respawned vehicle #%d.", GetPlayerVehicleID(playerid)); } else { if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/vr [vehicle id]"); SetVehicleToRespawn(para); SCMEx(playerid, -1, ""NON"You succesfull respawned vehicle #%d.", para); } return 1; } YCMD:addvehicle(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 6) return adminOnly(playerid, 6); new str[284], Cache:cache_i; if(GetPVarInt(playerid, "AddVehicle") > 0) { new Float:x, Float:y, Float:z, Float:a; GetVehiclePos(GetPVarInt(playerid, "AddVehicle"), x, y, z), GetVehicleZAngle(GetPVarInt(playerid, "AddVehicle"), a); mysql_format(handle, str, 284, "INSERT INTO `cars` (`Model`, `Group`, `CarPlate`, `pX`, `pY`, `pZ`, `pA`, `Color1`, `Color2`) VALUES ('%d', '0', 'Null', '%f', '%f', '%f', '%f', '-1', '-1')", GetVehicleModel(GetPVarInt(playerid, "AddVehicle")), x, y, z, a); cache_i = mysql_query(handle, str); new id = cache_insert_id(); GetVehiclePos(GetPVarInt(playerid, "AddVehicle"), x, y, z), GetVehicleZAngle(GetPVarInt(playerid, "AddVehicle"), a); vInfo[id][vID] = id; vInfo[id][vModel] = GetVehicleModel(GetPVarInt(playerid, "AddVehicle")); vInfo[id][vX] = x, vInfo[id][vY] = y, vInfo[id][vZ] = z, vInfo[id][vA] = a; vInfo[id][vGroup] = 0; vInfo[id][vColor1] = vInfo[id][vColor2] = -1; format(vInfo[id][vCarPlate], 11, "Null"); vehID[GetPVarInt(playerid, "AddVehicle")] = id; SetVehicleToRespawn(GetPVarInt(playerid, "AddVehicle")), DeletePVar(playerid, "AddVehicle"); cache_delete(cache_i); format(str, 100, ""ORANGE"/addvehicle: Admin %s added a new vehicle on server.", GetName(playerid)); sendAdmins(COLOR_WHITE, str); } else { if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, COLOR_GREY, "You can use this command because you are in a vehicle."); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/addvehicle [model]"); if(para < 400 || para > 612) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/addvehicle [400-612]"); new Float:x, Float:y, Float:z, Float:a; GetPlayerPos(playerid, x, y, z), GetPlayerFacingAngle(playerid, a); new vehicle = CreateVehicle(para,x, y, z, a, -1, -1, -1); PutPlayerInVehicle(playerid, vehicle, 0); SetPVarInt(playerid, "AddVehicle", vehicle); } return 1; } YCMD:colorveh(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 3) return adminOnly(playerid, 3); if(sscanf(params, "ii", para, para2)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/colorveh "); new i = GetPlayerVehicleID(playerid); if(i) { if((para < 0 || para > 256) || (para2 < 0 || para2 > 256)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/colorveh "); vInfo[vehID][vColor1] = para, vInfo[vehID][vColor2] = para2; ChangeVehicleColor(i, para, para2); SCMEx(playerid, -1, ""NON"You succesfull changed vehicle colors to %d and %d (for vehicle #%d).", para, para2, i); } else SCM(playerid, -1, "You are not in a vehicle."); return 1; } YCMD:modelveh(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 3) return adminOnly(playerid, 3); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/modelveh [model]"); new i = GetPlayerVehicleID(playerid); if(i) { if(para < 400 || para > 612) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/modelveh [400-612]"); vInfo[vehID][vModel] = para; DestroyVehicle(i); i = CreateVehicle(vInfo[vehID][vModel], vInfo[vehID][vX], vInfo[vehID][vY], vInfo[vehID][vZ], vInfo[vehID][vA], vInfo[vehID][vColor1], vInfo[vehID][vColor2], -1); PutPlayerInVehicle(playerid, i, 0); SCMEx(playerid, -1, ""NON"You succesfull changed vehicle model (for vehicle #%d).", i); } else SCM(playerid, -1, "You are not in a vehicle."); return 1; } YCMD:groupveh(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 3) return adminOnly(playerid, 3); new veh = GetPlayerVehicleID(playerid); if(veh) { if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/groupveh [group id]"); if(gInfo[para][gID] == 0) return SCM(playerid, COLOR_GREY, "Error: Invalid group id."); vInfo[vehID[veh]][vGroup] = para; SetVehicleToRespawn(veh); SCMEx(playerid, COLOR_NON, "Now, this %s (id: %d) its %s`s vehicle.", vehName[GetVehicleModel(veh) - 400], veh, gInfo[para][gName]); } else SCM(playerid, -1, "You are not in a vehicle."); return 1; } YCMD:moveveh(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 2) return adminOnly(playerid, 2); new veh = GetPlayerVehicleID(playerid); if(veh) { GetVehiclePos(veh, vInfo[vehID[veh]][vX], vInfo[vehID[veh]][vY], vInfo[vehID[veh]][vZ]); GetVehicleZAngle(veh, vInfo[vehID[veh]][vA]); SetVehicleToRespawn(veh); SCMEx(playerid, COLOR_NON, "You succesfull moved this %s (id: %d)!", vehName[GetVehicleModel(veh) - 400], veh); } else SCM(playerid, -1, "You are not in a vehicle."); return 1; } YCMD:vehinfo(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/vehinfo [veh id]"); SCMEx(playerid, COLOR_TEAL, ""TEAL"Model: "WHITE"%d | "TEAL"Carplate: "WHITE"%s | "TEAL"Group: "WHITE"%d | "TEAL"Colors: "WHITE"%d, %d", vInfo[vehID[para]][vModel], vInfo[vehID[para]][vCarPlate], vInfo[vehID[para]][vGroup], vInfo[vehID[para]][vColor1], vInfo[vehID[para]][vColor2]); return 1; } YCMD:fly(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); StartFly(playerid), SetPlayerHealth(playerid, 999999.00); Bit_Set(flyingStatus, playerid, true); return 1; } YCMD:stopfly(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); StopFly(playerid), SetPlayerHealth(playerid, 99.00); Bit_Set(flyingStatus, playerid, false); return 1; } YCMD:gotoveh(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/gotoveh [vehicle id]"); new Float:x, Float:y, Float:z; GetVehiclePos(para, Float:x, Float:y, Float:z), SetPlayerPos(playerid, x, y, z+5), SetPlayerVirtualWorld(playerid, GetVehicleVirtualWorld(para)); return 1; } YCMD:gotopoint(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); new Float:x, Float:y, Float:z; if(sscanf(params, "fffi", x, y, z, para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/gotopoint [x] [y] [z] [interior]"); SetPlayerPos(playerid, x, y, z), SetPlayerInterior(playerid, para), SetCameraBehindPlayer(playerid); return 1; } YCMD:gotohq(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/gotohq [id]"); SetPlayerPos(playerid, gInfo[para][geX], gInfo[para][geY], gInfo[para][geZ]); SetPlayerInterior(playerid, 0); SetCameraBehindPlayer(playerid); SCMEx(playerid, -1, "You have teleported to %s`s headquarter.", gInfo[para][gName]); return 1; } YCMD:setadmin(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 6) return adminOnly(playerid, 6); if(sscanf(params, "ui", para, para2)) return SCM(playerid, COLOR_LIGHT, "(SERVER): "WHITE"/setadmin [playerid] [level]"); if(para == INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Error: Invalid player id."); if(pInfo[para][pAdmin] < para2) { SCMEx(para, -1, ""NON"Felicitari! Ai fost promovat/a la admin %d, de catre adminul %s.", para2, GetName(para)); } else if(pInfo[para][pAdmin] > para2 && para2 != 0) { SCMEx(para, -1, ""NON"Adminul %s ti-a dat rank-down la admin %d.", para2, GetName(para)); } else { SCMEx(para, -1, ""NON"You have been removed from Staff Team (administrators), by %s", GetName(para)); } // iterators if(pInfo[para][pAdmin] == 0 && para2 > 0) { Iter_Add(Admins, para); } else if(pInfo[para][pAdmin] > 0 && para2 == 0) { Iter_Remove(Admins, para); } pInfo[para][pAdmin] = para2; SCMEx(playerid, -1, "You have changed %s`s admin level to %d.", GetName(para), para2); return 1; } YCMD:sethqext(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 4) return adminOnly(playerid, 4); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "(SERVER): "WHITE"/sethqext [group id]"); if(gInfo[para][gID] == 0) return SCM(playerid, COLOR_GREY, "Error: Invalid group ID."); GetPlayerPos(playerid, gInfo[para][geX], gInfo[para][geY], gInfo[para][geZ]); DestroyDynamicPickup(gInfo[para][gPickup]); DestroyDynamic3DTextLabel(gInfo[para][gLabel]); format(gMsg, 128, "{FF6347}%s`s HQ\n{D2B48C}(%s)", gInfo[para][gName], (gInfo[para][gDoor]) ? ("closed") : ("opened")); new pickup; if(gInfo[para][gType] == 1) { pickup = 1247; } else if(gInfo[para][gType] == 2) { pickup = 1254; } else { pickup = 1239; } gInfo[para][gPickup] = CreateDynamicPickup(pickup, 1, gInfo[para][geX], gInfo[para][geY], gInfo[para][geZ], -1, -1, -1, 20.0); gInfo[para][gLabel] = CreateDynamic3DTextLabel(gMsg, COLOR_YELLOW, gInfo[para][geX], gInfo[para][geY], gInfo[para][geZ], 100, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, 20.0); SCMEx(playerid, COLOR_TEAL, "(!) "WHITE"The exterior of %s (#%d) was changed successfully.", gInfo[para][gName], para); saveGroup(para); return 1; } YCMD:sethqint(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 4) return adminOnly(playerid, 4); if(sscanf(params, "i", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/sethqint [group id]"); if(gInfo[para][gID] == 0) return SCM(playerid, COLOR_GREY, "Error: Invalid group ID."); GetPlayerPos(playerid, gInfo[para][giX], gInfo[para][giY], gInfo[para][giZ]), gInfo[para][gInterior] = GetPlayerInterior(playerid); SCMEx(playerid, COLOR_TEAL, "(!) "WHITE"The interior of %s (#%d) was changed successfully.", gInfo[para][gName], para); saveGroup(para); return 1; } YCMD:auninvite(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 2) return adminOnly(playerid, 2); if(sscanf(params, "us[30]", para, strPara)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/auninvite [playerid] [reason: max 30 characters]"); if(para == INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Error: Invalid player id."); if(pInfo[para][pMember] == 0) return SCM(playerid, COLOR_GREY, "You can not use this command on civilians."); format(gMsg, 128, "%s was uninvited by Admin %s from %s, reason: %s", GetName(para), GetName(playerid), gInfo[pInfo[para][pMember]][gName], strPara); sendGroup(COLOR_LIGHT, pInfo[para][pMember], gMsg); format(gMsg, 128, "Admin uninvite: %s was uninvited by Admin %s from %s, reason: %s", GetName(para), GetName(playerid), gInfo[pInfo[playerid][pMember]][gName], strPara); sendAdmins(COLOR_DRED, gMsg); format(gMsg, 128, "You got uninvited by Admin %s from %s, reason: %s", GetName(playerid), gInfo[pInfo[playerid][pMember]][gName], strPara); ShowPlayerDialog(para, DIALOG_GENERAL, DIALOG_STYLE_MSGBOX, "SERVER: Uninvite", gMsg, "Close", ""); pInfo[para][pMember] = pInfo[para][pRank] = 0; pInfo[para][pSkin] = SPAWN_SKIN, SetPlayerSkin(para, SPAWN_SKIN); return 1; } YCMD:setleader(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 3) return adminOnly(playerid, 3); new p; if(sscanf(params, "ui", p, para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/setleader [playerid] [group id]"); if(p == INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Error: Invalid player id."); if(pInfo[p][pMember] > 0) return SCM(playerid, COLOR_GREY, "This player is already in a faction, you need to use /auninvite first."); if(gInfo[para][gID] == 0 && para != 0) return SCM(playerid, COLOR_GREY, "Error: Invalid group id."); pInfo[p][pMember] = para, pInfo[p][pRank] = 7; SCMEx(playerid, -1, "You have set %s`s leader to %s.", GetName(p), gInfo[para][gName]), SCMEx(p, -1, ""NON"You have been promoted to %s`s leader by %s. Good job!", gInfo[para][gName], GetName(playerid)); SetPlayerSkin(p, gInfo[para][gLeadskin]), pInfo[p][pSkin] = gInfo[para][gLeadskin]; return 1; } YCMD:a(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); if(isnull(params)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/a [message]"); format(gMsg, 128, "(/a) %s: %s", GetName(playerid), params); sendAdmins(COLOR_ACHAT, gMsg); return 1; } /////////////////////////////////////// YCMD:invite(playerid, params[], help) { if(pInfo[playerid][pRank] < 6 || pInfo[playerid][pMember] == 0) return SCM(playerid, COLOR_GREY, "You are not allowed to use this command."); if(sscanf(params, "u", para)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/invite [playerid]"); if(para == INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Error: Invalid player id."); if(para == playerid) return SCM(playerid, COLOR_GREY, "You can not invite yourself."); if(pInfo[para][pMember] > 0) return SCM(playerid, COLOR_GREY, "You can invite in your group only civilians."); if(GetPVarInt(para, "inviteGroup") == pInfo[playerid][pMember]) return SCM(playerid, COLOR_GREY, "This player is already invited to your group."); SetPVarInt(para, "inviteGroup", pInfo[playerid][pMember]), SetPVarString(para, "inviteName", pInfo[playerid][pName]); SCMEx(playerid, COLOR_NON, "%s was invited, please wait...", GetName(para)); SCMEx(para, COLOR_NON, "You have been invited by %s to join in %s. Type /accept invite to accept.", GetName(playerid), gInfo[pInfo[playerid][pMember]][gName]); return 1; } YCMD:admins(playerid, params[], help) { SCM(playerid, COLOR_TEAL, "---------------------------------------------------------"); foreach(new i : Admins) { SCMEx(playerid, -1, "(%d) %s - admin level %d", i, GetName(i), pInfo[pAdmin]); } SCMEx(playerid, -1, "There are %d %s online. If you have a problem, use report.", Iter_Count(Admins), (Iter_Count(Admins) == 1) ? ("admin") : ("admins")); SCM(playerid, COLOR_TEAL, "---------------------------------------------------------"); return 1; } YCMD:accept(playerid, params[], help) { if(sscanf(params, "s[30]", strPara)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/accept [item]"), SCM(playerid, -1, "Items: invite"); switch(YHash(strPara)) { case _H<invite>: { if(GetPVarInt(playerid, "inviteGroup") == 0) return SCM(playerid, COLOR_GREY, "You haven`t been invited in any group."); new name[MAX_PLAYER_NAME]; pInfo[playerid][pMember] = GetPVarInt(playerid, "inviteGroup"); pInfo[playerid][pRank] = 1, DeletePVar(playerid, "inviteGroup"); pInfo[playerid][pSkin] = gInfo[pInfo[playerid][pMember]][gLeadskin], SetPlayerSkin(playerid, gInfo[pInfo[playerid][pMember]][gLeadskin]); format(gMsg, 128, "%s is now your teammate, invited by %s.", GetName(playerid), GetPVarString(playerid, "inviteName", name, MAX_PLAYER_NAME)); sendGroup(COLOR_LIGHT, pInfo[playerid][pMember], gMsg); format(gMsg, 128, "Congratulations! Now you are %s`s member.", gInfo[pInfo[playerid][pMember]][gName]); ShowPlayerDialog(playerid, DIALOG_GENERAL, DIALOG_STYLE_MSGBOX, "SERVER: Invitation", gMsg, "Close", ""); DeletePVar(playerid, "inviteName"); } default: { SCM(playerid, COLOR_GREY, "Error: Wrong item."); } } return 1; } YCMD:f(playerid, params[], help) { if(pInfo[playerid][pMember] && (gInfo[pInfo[playerid][pMember]][gType] == 3 || gInfo[pInfo[playerid][pMember]][gType] == 2)) { if(isnull(params)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/f(action) [message]"); switch(pInfo[playerid][pRank]) { case 1: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname1], GetName(playerid), params); case 2: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname2], GetName(playerid), params); case 3: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname3], GetName(playerid), params); case 4: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname4], GetName(playerid), params); case 5: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname5], GetName(playerid), params); case 6: format(gMsg, 128, "{1BA6C2}* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname6], GetName(playerid), params); case 7: format(gMsg, 128, "{1BA6C2}* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname7], GetName(playerid), params); } sendGroup(COLOR_FCHAT, pInfo[playerid][pMember], gMsg); } return 1; } YCMD:r(playerid, params[], help) { if(pInfo[playerid][pMember] && gInfo[pInfo[playerid][pMember]][gType] == 1) { if(isnull(params)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/r(adio) [message]"); switch(pInfo[playerid][pRank]) { case 1: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname1], GetName(playerid), params); case 2: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname2], GetName(playerid), params); case 3: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname3], GetName(playerid), params); case 4: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname4], GetName(playerid), params); case 5: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname5], GetName(playerid), params); case 6: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname6], GetName(playerid), params); case 7: format(gMsg, 128, "* %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname7], GetName(playerid), params); } sendGroup(COLOR_RCHAT, pInfo[playerid][pMember], gMsg); } return 1; } YCMD:d(playerid, params[], help) { if(pInfo[playerid][pMember] && gInfo[pInfo[playerid][pMember]][gType] == 1) { if(isnull(params)) return SCM(playerid, COLOR_LIGHT, "Syntax: "WHITE"/d(epartments) [message]"); switch(pInfo[playerid][pRank]) { case 1: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname1], GetName(playerid), params); case 2: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname2], GetName(playerid), params); case 3: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname3], GetName(playerid), params); case 4: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname4], GetName(playerid), params); case 5: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname5], GetName(playerid), params); case 6: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname6], GetName(playerid), params); case 7: format(gMsg, 128, "** %s %s: %s", gInfo[pInfo[playerid][pMember]][gRankname7], GetName(playerid), params); } sendgType(COLOR_DCHAT, gInfo[pInfo[playerid][pMember]][gType], gMsg); } return 1; } YCMD:stats(playerid, params[], help) { showStats(playerid, playerid); return 1; } YCMD:tbox(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); SetPlayerPos(playerid, 2127.3901,2337.2629,10.8203); SendClientMessage(playerid, -1, "Ai fost teleportat cu succes la giftbox."); return 1; } YCMD:gotods(playerid, params[], help) { if(pInfo[playerid][pAdmin] < 1) return adminOnly(playerid, 1); SetPlayerPos(playerid, 328.4269,-1513.5961,36.0391); SendClientMessage(playerid, -1, "(/gotods) Ai fost teleportat cu succes la dealership."); return 1; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { if((vInfo[vehID[vehicleid]][vGroup] > 0 && pInfo[playerid][pMember] != vInfo[vehID[vehicleid]][vGroup]) && pInfo[playerid][pAdmin] == 0) { new Float:x, Float:y, Float:z; GetPlayerPos(playerid, x, y, z), SetPlayerPos(playerid, x, y, z+2); SCMEx(playerid, COLOR_GREY, "This %s can be used only be %s`s members!", vehName[GetVehicleModel(vehicleid) - 400], gInfo[vInfo[vehID[vehicleid]][vGroup]][gName]); } return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { new veh = GetPlayerVehicleID(playerid); if(newstate == PLAYER_STATE_DRIVER) { new vehicleName[30], rand = random(3); switch(rand) { case 0: { format(vehicleName, 30, "~g~%s", vehName[GetVehicleModel(veh) - 400]); } case 1: { format(vehicleName, 30, "~y~%s", vehName[GetVehicleModel(veh) - 400]); } case 2: { format(vehicleName, 30, "~r~~h~%s", vehName[GetVehicleModel(veh) - 400]); } } GameTextForPlayer(playerid, vehicleName, 3000, 1); if((vInfo[vehID[veh]][vGroup] > 0 && pInfo[playerid][pMember] != vInfo[vehID[veh]][vGroup]) && pInfo[playerid][pAdmin] == 0) { new Float:x, Float:y, Float:z; GetPlayerPos(playerid, x, y, z), SetPlayerPos(playerid, x, y, z+2); SCMEx(playerid, COLOR_GREY, "This %s can be used only be %s`s members!", vehName[GetVehicleModel(veh) - 400], gInfo[vInfo[vehID[veh]][vGroup]][gName]); } } if(newstate != PLAYER_STATE_DRIVER && GetPVarInt(playerid, "AddVehicle") > 0 && veh != GetPVarInt(playerid, "AddVehicle")) { DestroyVehicle(GetPVarInt(playerid, "AddVehicle")); SCMEx(playerid, COLOR_LIGHTRED, "Vehicle #%d was destroyed because you left it.", GetPVarInt(playerid, "AddVehicle")), DeletePVar(playerid, "AddVehicle"); } 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) { if(newkeys & KEY_SECONDARY_ATTACK) { new Float: X, Float: Y, Float: Z; GetPlayerPos(playerid, X, Y, Z); if(IsPlayerConnected(playerid)) { for(new i = 0; i < MAX_GROUPS; i++) { if(IsPlayerInRangeOfPoint(playerid, 2.0, gInfo[geX], gInfo[geY], gInfo[geZ])) { if(gInfo[gDoor] == 0 || (pInfo[playerid][pMember] == i && gInfo[gDoor] == 1)) { SetPlayerPos(playerid, gInfo[giX], gInfo[giY], gInfo[giZ]); SetPlayerInterior(playerid, gInfo[gInterior]); SetPlayerVirtualWorld(playerid, i+1); SetCameraBehindPlayer(playerid); } else SCMEx(playerid, -1, "You are not %s`s member.", gInfo[gName]); } else if(IsPlayerInRangeOfPoint(playerid, 2.0, gInfo[giX], gInfo[giY], gInfo[giZ])) { SetPlayerPos(playerid, gInfo[geX], gInfo[geY], gInfo[geZ]); SetPlayerInterior(playerid, 0); SetPlayerVirtualWorld(playerid, 0); SetCameraBehindPlayer(playerid); } } } } if((newkeys & KEY_WALK) && (newkeys & KEY_FIRE)) { if(Bit_Get(flyingStatus, playerid) == true) { StopFly(playerid), SetPlayerHealth(playerid, 99.00); Bit_Set(flyingStatus, playerid, false); GameTextForPlayer(playerid, "~~Flying mode off", 4500, 3); } } 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 query[354]; switch(dialogid) { case DIALOG_REGISTER: { if(response) { new serialCode[41]; WP_Hash(playerHashedPass[playerid], 129, inputtext); gpci(playerid, serialCode, 41); mysql_format(handle, query, 354, "INSERT INTO `players` (`username`, `password`, `SerialCode`, `Skin`) VALUES ('%e', '%e', '%e', '%d')", GetName(playerid), playerHashedPass[playerid], serialCode, SPAWN_SKIN); mysql_tquery(handle, query, "", "" ); Clearchat(playerid, 20); SCM(playerid, COLOR_LIGHT, "REGISTER: "WHITE"Your account was been created! You need to finish all registration steps, otherwise it will be deleted."); ShowPlayerDialog(playerid, DIALOG_SEX, DIALOG_STYLE_MSGBOX, "SERVER: Select your character", ""SYN"Please select your "CREM"character"SYN"!", "Male", "Female"); } else Kick(playerid); } case DIALOG_LOGIN: { if(response) { new hashed[129]; WP_Hash(hashed, 129, inputtext ); mysql_format(handle, query, 256, "SELECT * FROM `players` WHERE `username` = '%e' AND `password` = '%e'", GetName(playerid), hashed); mysql_tquery(handle, query, "accountLogin", "i", playerid); } else Kick(playerid); } case DIALOG_SEX: { if(response) { pInfo[playerid][pSex] = 1; SCM(playerid, COLOR_LIGHT, "GENDER: "WHITE"Thanks, now we know that you are a boy. How old are you?"); } else { pInfo[playerid][pSex] = 2; SCM(playerid, COLOR_LIGHT, "GENDER: "WHITE"Thanks, now we know that you are a girl. How old are you?"); } ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "SERVER: Age", ""SYN"It`s important for us to know how "CREM"old"SYN" are you!", "Proceed", "Cancel"); } case DIALOG_AGE: { if(response) { new age = strval(inputtext); if(age > 0 && age < 50) { new y, m, d; getdate(y, m, d); pInfo[playerid][pAge] = age; SCMEx(playerid, COLOR_LIGHT, "AGE: "WHITE"Ok, you was born in %d. Now, sets the corectly email address.", y-age); ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "SERVER: Email", ""SYN"If you lose your account you can use your "CREM"email address "SYN"to recover your account.", "Set", "Cancel"); } else ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "SERVER: Age", ""SYN"It`s important for us to know how "CREM"old"SYN" are you!", "Male", "Female"); } else Kick(playerid); } case DIALOG_EMAIL: { if(response) { if(IsMail(inputtext)) { format(pInfo[playerid][pEmail], 100, inputtext); mysql_format(handle, query, 284, "UPDATE `players` SET `Sex` = '%d', `Age` = '%d', `Email` = '%e' WHERE `username` = '%e'", pInfo[playerid][pSex], pInfo[playerid][pAge], pInfo[playerid][pEmail], GetName(playerid)); mysql_tquery(handle, query, "", ""); mysql_format(handle, query, 256, "SELECT * FROM `players` WHERE `username` = '%e' AND `password` = '%e'", GetName(playerid), playerHashedPass[playerid]); mysql_tquery(handle, query, "accountLogin", "i", playerid); new Cache:count, sCode[41], pIP[16]; gpci(playerid, sCode, 41), GetPlayerIp(playerid, pIP, 16); mysql_format(handle, query, 200, "SELECT * FROM `players` WHERE `serialCode` = '%e'", sCode); count = mysql_query(handle, query), cache_get_data(rows, fields, handle); format(gMsg, 128, "New account - %s (%d) // %d accounts, ip: %s.", GetName(playerid), playerid, rows, pIP), sendAdmins(COLOR_DRED, gMsg); cache_delete(count); } else ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "SERVER: Email", ""DRED"Error: Invalid email format.\n\n"SYN"If you lose your account you can use your "CREM"email address "SYN"to recover your account.", "Set", "Cancel"); } else Kick(playerid); } case DIALOG_BLOCK: { if(response) { mysql_format(handle, query, 284, "SELECT * FROM `accounts_blocked` WHERE `playerID` = '%d' AND `securityCode` = '%e' ORDER BY `id` DESC LIMIT 1", pInfo[playerid][pSQLID], inputtext); mysql_tquery(handle, query, "securityCodeCheck", "i", playerid); } else Kick(playerid); } } return 1; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; } // stocks stock resetData(playerid) { loginTries[playerid] = 0; SetPVarInt(playerid, "AddVehicle", 0); Bit_Set(pLogged, playerid, false); return 1; } stock showStats(playerid, tid) { new groupName[50]; SCM(playerid, COLOR_TEAL, "-----------------------------------------------------------------"); SCMEx(playerid, -1, "(%d) %s | Level: %d | Money: %s | Bank money: %s", tid, GetName(tid), pInfo[tid][pLevel], FormatNumber(pInfo[tid][pCash]), FormatNumber(pInfo[tid][pBank])); SCMEx(playerid, -1, "Age: %d | Gender: %s | Email address: %s ", pInfo[tid][pAge], (pInfo[tid][pSex] == 1) ? ("Male") : ("Female"), pInfo[tid][pEmail]); format(groupName, 50, "%s, rank %d",gInfo[pInfo[tid][pMember]][gName], pInfo[tid][pRank]); SCMEx(playerid, -1, "Group: %s", (pInfo[tid][pMember]) ? (groupName) : ("No-one")); SCM(playerid, COLOR_TEAL, "-----------------------------------------------------------------"); return 1; } stock FormatNumber(iNum, const szChar[] = ",") { // source: sa-mp.com forum new szStr[16]; format(szStr, sizeof(szStr), "%d", iNum); for(new iLen = strlen(szStr) - 3; iLen > 0; iLen -= 3) { strins(szStr, szChar, iLen); } return szStr; } stock IsMail(const string[]) { // source: sa-mp.com forum static RegEx:mail; if(!mail) { mail = regex_build("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?"); } return regex_match_exid(string, mail); } stock randomString(lenght) { new randomChar[][] = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0" }; new string[20], rand; for(new i; i < lenght; i++) { rand = random(sizeof(randomChar)); strcat(string, randomChar[rand]); } return string; } stock sendAdmins(color, msg[]) { foreach(new i : Player) { if(pInfo[pAdmin] >= 1) { SCMEx(i, color, msg); } } return 1; } stock sendGroup(color, group, msg[]) { for(new i, j = GetPlayerPoolSize(); i <= j; i++) { if(pInfo[pMember] == group) { SCMEx(i, color, msg); } } return 1; } stock sendgType(color, type, msg[]) { foreach(new i : Player) { if(pInfo[pMember] && gInfo[pInfo[pMember]][gType] == type) { SCMEx(i, color, msg); } } return 1; } stock adminOnly(playerid, admin) { SCMEx(playerid, COLOR_GREY, ""GREY"You need to have admin level "ORANGE"%d+"GREY" to use this command.", admin); return 1; } stock SCMEx(playerid, color, fstring[], {Float, _}:...) { // source: sa-mp.com forum #if defined DEBUG printf("[debug] SCM(%d,%d,%s,...)",playerid,color,fstring); #endif new n = numargs() * 4; if (n == 3 * 4) { return SendClientMessage(playerid, color, fstring); } else { new message[255]; new arg_start; new arg_end; new i = 0; #emit CONST.pri fstring #emit ADD.C 0x4 #emit STOR.S.pri arg_start #emit LOAD.S.pri n #emit ADD.C 0x8 #emit STOR.S.pri arg_end for (i = arg_end; i >= arg_start; i -= 4) { #emit LCTRL 5 #emit LOAD.S.alt i #emit ADD #emit LOAD.I #emit PUSH.pri } #emit PUSH.S fstring #emit PUSH.C 128 #emit PUSH.ADR message #emit PUSH.S n #emit SYSREQ.C format i = n / 4 + 1; while (--i >= 0) { #emit STACK 0x4 } return SendClientMessage(playerid, color, message); } } stock GetName(playerid) { new name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, MAX_PLAYER_NAME); return name; } stock Clearchat(player, lines) { for(new l; l <= lines; l++) { SCM(player, -1, " "); } return 1; }
-
poate de la baza de date..nu stiu
-
linia 197 pica pe CMD:stats
-
asa cade si la mine, dar nu inteleg de ce da eroarea aia...si gen nici nu mrg comanda
-
Asta e eroarea: C:\Users\Acer\Desktop\tuts\gamemodes\tuts.pwn(197) : error 035: argument type mismatch (argument 2) Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 1 Error. Asta e gm.. //Includes #include < a_samp > #include < a_mysql > #include < YSI\y_master > #include < YSI\y_timers > #include < YSI\y_commands > #include < YSI\y_va > #include < YSI\y_iterate > #include < YSI\y_hooks > #include < YSI\y_bit > //defines #define SERVER_VERSION "v0.0.1[BETA]" main() { printf("Gamemode-ul este in curs de procesare... [BY ANTIF1X]"); } #define function%0(%1) forward %0(%1); public %0(%1) #define SCM SendClientMessage enum { //Register DIALOG_REGISTER, DIALOG_EMAIL, DIALOG_GENDER, //Login DIALOG_LOGIN } //news new SQL = -1, gQuery[256], gString[256], IncercariParola[MAX_PLAYERS]; //Database Connect Info enum pInfo { pSQLID, pName[MAX_PLAYER_NAME], pPassword[32], pEmail[32], pGender } new PlayerInfo[MAX_PLAYERS][pInfo]; //stocks stock GetName(playerid) { new playerName[MAX_PLAYER_NAME]; GetPlayerName(playerid, playerName, MAX_PLAYER_NAME); return playerName; } public OnGameModeInit() { //mysql connect SQL = mysql_connect("localhost", "root", "tutsdbm", ""); SetGameModeText("RO:RPG "SERVER_VERSION""); 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) { TogglePlayerSpectating(playerid, false); SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraPos(playerid, 1015.9453,-1316.2374,182.0590); SetPlayerCameraLookAt(playerid, 1015.9453,-1316.2374,182.0590); return 1; } public OnPlayerConnect(playerid) { gQuery[0] = EOS; mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE `Name`='%s' LIMIT 1", GetName(playerid)); mysql_tquery(SQL, gQuery, "checkAccount", "i", playerid); return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) { case DIALOG_REGISTER: { if(!response) return Kick(playerid); if(strlen(inputtext) < 6 || strlen(inputtext) > 32) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Register {F5BC11}(RPG.TUTS.RO){FFFFFF}", "Nu ai un cont inregistrat pe server!\n\nScrie o parola in casuta de mai jos. {F5BC11}(6-32 caractere){FFFFFF}", "Register", "Cancel"); gQuery[0] = EOS; mysql_format(SQL, gQuery, sizeof(gQuery), "INSERT INTO `users` (`Name`, `Password`) VALUES ('%s', '%s')", GetName(playerid), inputtext); mysql_tquery(SQL, gQuery, "insertAccount", "i", playerid); gString[0] = EOS; format(gString, sizeof(gString), "{F5BC11}Register:{FFFFFF} Parola ta contine %d caractere.", strlen(inputtext)); SCM(playerid, -1, gString); format(PlayerInfo[playerid][pPassword], 32, inputtext); ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Email {F5BC11}(RPG.TUTS.RO){FFFFFF}", "Scrie un email in casuta de mai jos.\n\nExemplu: {F5BC11}[email protected]{FFFFFF}", "Seteaza", "Cancel"); } case DIALOG_EMAIL: { if(!response) return Kick(playerid); if(strlen(inputtext) < 6 || strlen(inputtext) > 32) return ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Email {F5BC11}(RPG.LUCRAM.RO){FFFFFF}", "Scrie un email in casuta de mai jos.\n\nExemplu: {F5BC11}[email protected]{FFFFFF}", "Seteaza", "Cancel"); gQuery[0] = EOS; mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE `users` SET `Email`='%s' WHERE `ID`='%d'", inputtext, PlayerInfo[playerid][pSQLID]); mysql_tquery(SQL, gQuery, "", ""); gString[0] = EOS; format(gString, sizeof(gString), "{F5BC11}Register:{FFFFFF} Email setat: %s", inputtext); SCM(playerid, -1, gString); format(PlayerInfo[playerid][pEmail], 32, inputtext); ShowPlayerDialog(playerid, DIALOG_GENDER, DIALOG_STYLE_MSGBOX, "Gender {F5BC11}(RPG.TUTS.RO){FFFFFF}", "Seteaza-ti sex-ul:", "Masculin", "Feminin"); } case DIALOG_GENDER: { switch(response) { case 0: { PlayerInfo[playerid][pGender] = 1; SCM(playerid, -1, "{F5BC11}Register:{FFFFFF} Sex setat: Feminin"); } case 1: { PlayerInfo[playerid][pGender] = 2; SCM(playerid, -1, "{F5BC11}Register:{FFFFFF} Sex setat: Masculin"); } } gQuery[0] = EOS; mysql_format(SQL, gQuery, sizeof(gQuery), "UPDATE `users` SET `Gender`='%d' WHERE `ID`='%d'", PlayerInfo[playerid][pGender], PlayerInfo[playerid][pSQLID]); mysql_tquery(SQL, gQuery, "", ""); SpawnPlayer(playerid); } case DIALOG_LOGIN: { if(!response) return Kick(playerid); gQuery[0] = EOS; mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE `Name`='%s' AND `Password`='%s' LIMIT 1", GetName(playerid), inputtext); mysql_tquery(SQL, gQuery, "onLogin", "i", playerid); } } return 1; } //functions function onLogin(playerid) { switch(cache_num_rows()) { case 0: { IncercariParola[playerid] ++; gString[0] = EOS; format(gString, sizeof(gString), "{F5BC11}Login Error:{FFFFFF} Parola incorecta, (%d/3) incercari ramase!", IncercariParola[playerid]); SCM(playerid, -1, gString); if(IncercariParola[playerid] == 3) Kick(playerid); else ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login {F5BC11}(RPG.TUTS.RO){FFFFFF}", "Acest nume este deja inregistrat\n\nScrie parola in casuta de mai jos.", "Login", "Cancel"); } case 1: { new result[64]; PlayerInfo[playerid][pSQLID] = cache_get_field_content_int(0, "ID"); PlayerInfo[playerid][pGender] = cache_get_field_content_int(0, "Gender"); cache_get_field_content(0, "Name", result); format(PlayerInfo[playerid][pName], MAX_PLAYER_NAME, result); cache_get_field_content(0, "Email", result); format(PlayerInfo[playerid][pEmail], 32, result); cache_get_field_content(0, "Password", result); format(PlayerInfo[playerid][pPassword], 32, result); SpawnPlayer(playerid); for(new i = 0; i < 25; i++) SCM(playerid, -1, " "); new string[130]; format(string, sizeof(string), "{F5BC11}(SERVER){FFFFFF} Salut %s bine ai revenit pe server!", GetName(playerid)); SCM(playerid, -1, string); printf("%s (user %d) s-a logat. [Sex: %d, Name: %s, Password: %s, Email: %s]", GetName(playerid), PlayerInfo[playerid][pSQLID], PlayerInfo[playerid][pGender], PlayerInfo[playerid][pName], PlayerInfo[playerid][pPassword], PlayerInfo[playerid][pEmail]); } } return 1; } function insertAccount(playerid) { PlayerInfo[playerid][pSQLID] = cache_insert_id(); printf("%s s-a inregistrat cu SQLID-ul #%d", GetName(playerid), PlayerInfo[playerid][pSQLID]); return 1; } function checkAccount(playerid) { switch(cache_num_rows()) { case 0: ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Register {F5BC11}(RPG.LUCRAM.RO){FFFFFF}", "Nu ai un cont inregistrat pe server!\n\nScrie o parola in casuta de mai jos. {F5BC11}(6-32 caractere){FFFFFF}", "Register", "Cancel"); case 1: ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login {F5BC11}(RPG.LUCRAM.RO){FFFFFF}", "Acest nume este deja inregistrat\n\nScrie parola in casuta de mai jos.", "Login", "Cancel"); } return 1; } CMD:getgift(playerid, params[]) { if(!IsPlayerInRangeOfPoint(playerid, 5.0, 1956.1467,1264.5828,10.8203)) return SendClientMessage(playerid, 0x919191FF, "Eroare: Nu esti in locatia potrivita!"); new string[128], rand = random(3); switch(rand) { case 1: { new money = 10000 + random(500000); format(string, sizeof(string), "Felicitari %s! Ai castigat $%d.", GetName(playerid), money); GivePlayerMoney(playerid, money); } case 2: { new level = random(5); format(string, sizeof(string), "Felicitari %s! Ai castigat %dX level up.", GetName(playerid), level); SetPlayerScore(playerid, GetPlayerScore(playerid)+level); } } SendClientMessage(playerid, 0x4AAB1DFF, string); return 1; } CMD:stats(playerid) { new string[256], name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); format(string, sizeof(string), "Nume: %s (%d) | Level: %d | Ping: %d | Money: %d", name, playerid, GetPlayerScore(playerid), GetPlayerPing(playerid), GetPlayerMoney(playerid)); SendClientMessage(playerid, -1, string); return 1; }