Jump to content

[RW]Robi

Membru
  • Posts

    292
  • Joined

  • Last visited

  • Days Won

    12

Everything posted by [RW]Robi

  1. N-am avut instalat Microsoft Visual C++, si pana se descarca imi lua toata ziua, imi merge destul de greu netul, trebuie sa-l schimb.
  2. Blank GameMode R39-3 (with modules) by [RW]Robi -> FOR EN VERSION PLEASE, USE GOOGLE TRANSLATE! MySQL version: R39-3 (Login & Register system) Languages: Romanian & English -> New functions (important): SM(playerid, color, entext, rotext); Aceasta functie afiseaza un mesaj in functie de limba de vorbire selectata la inregistrare. ShowPD(playerid, dialogid, style, entitle[],rotitle[], eninfo[],roinfo[],enbutton1[],robutton1[],enbutton2[],robutton2[]); Aceasta functie afiseaza un dialog in functie de limba de vorbire selectata la inregistrare. Ce sunt modulele? Modul de joc este facut in asa fel in cat sa fie 'modular', de exemplu, vreti sa creati un sistem de vehicule personale, creati o noua fila care o adaugati in folderul modules cu nume 'vehicle_system' si extensia .pwn, apoi veti merge in GameMode (new.pwn) si pur si simplu veti adauga #include "../modules/vehicle_system.pwn", iar 'pluginul' va fi adaugat pe server la compilare. De ce cu module si nu totul la un loc? Aceasta intrebare sigur exista, ei bine raspunsul este unul simplu, un modul ajuta developerul sa gaseasca mai repede ce are nevoie & compilarea este mult mai rapida, cand modulul este gata complet pur si simplu adaugati in modul de joc #include "../modules/nume_system.pwn" Alte versiuni Daca va fi un feedback pozitiv pentru acest mod de joc, acesta va fi imbunatatit cu sisteme necesare. P.S: Este posibil sa nu ma fi exprimat bine, deoarece nu aveam cuvintele la mine cand am creat acest topic, daca un membru din staff are o descriere mai buna, il rog sa dea un edit. DOWNLOAD: GameMode (Linux & Windows version + Database): Link 1 / Link 2 / Link 3 © SA-MP.RO @[RW]Robi, all rights reserved!
  3. mare scripter, pacat ca nu am auzit de tine deloc.
  4. Cer ca acest subiect sa fie inchis si marcat ca rezolvat.
  5. Ti-am dat comanda completa mai sus, dai un relog.
  6. CMD:dsremove(playerid, params[]) { if(IsPlayerConnected(playerid)) { if(playerVariables[playerid][pAdminLevel] < 6) return S(playerid, -1, AdminOnly); new id, queryString[256], string[256],eroare = 0,idv; if(sscanf(params, "i", id)) return S(playerid, COLOR_GREY, "Syntax: {FFFFFF}/dsremove [model]"); mysql_format(handle, queryString, sizeof(queryString), "SELECT * FROM `stock` WHERE `Model`='%d'",id); new Cache: verificare = mysql_query(handle, queryString); eroare = cache_get_row_count(); if(eroare > 0) { for(new i = 0; i < eroare; i++) { idv = cache_get_field_content_int(i, "ID"); } } cache_delete(verificare); if(eroare < 1) return SendClientMessage(playerid, -1, "Acest model de vehicul nu exista in baza de date."); Stock[idv][vPrice] = -1; mysql_format(handle, queryString, sizeof(queryString), "DELETE FROM stock WHERE `Model` = '%d'", id); mysql_tquery(handle, queryString, "", ""); format(string, sizeof(string), "{F0DF52}/dsremove: Owner %s removed car %d (%s) from the DS.", GetName(playerid), id, VehicleNames[id - 400]); submitToAdmins(string, -1); incarcarestock = 3; } return 1; } Poftim, acum va trebuii sa functioneze.
  7. Pai ai folosit comanda /dsremove [model vehicul, ex 411?] Nu are cum sa nu mearga. Dai /dsremove 411 Si verifica daca se sterge din baza de date.
  8. schimba cu. mysql_format(handle, queryString, sizeof(queryString), "DELETE FROM stock WHERE `Model` = '%d'", id);
  9. L-am ajutat prin Team Viewer, cer T/C acestui subiect si sa fie marcat ca rezolvat.
  10. Era o paranteza care nu isi avea locul, trebuie pusa in alta parte, ia vezi acum. if(dialogid == DIALOG_CLAN) { if(strlen(inputtext) < 2 || strlen(inputtext) > 10) return SendClientMessage(playerid, COLOR_YELLOW2, "Eroare: Clan names must be between 3 and 10 characters."); if(sSlot[playerid] == 10) { ShowPlayerDialog(playerid, DIALOG_CLAN, DIALOG_STYLE_INPUT, "Clan:", "Create Clan:\nClan name must contain between 3 - 10 characters", "Ok", ""); } else if(sSlot[playerid] == 20) { ShowPlayerDialog(playerid, DIALOG_CLAN, DIALOG_STYLE_INPUT, "Clan:", "Create Clan:\nClan name must contain between 3 - 10 characters", "Ok", ""); } else if(sSlot[playerid] == 40) { ShowPlayerDialog(playerid, DIALOG_CLAN, DIALOG_STYLE_INPUT, "Clan:", "Create Clan:\nClan name must contain between 3 - 10 characters", "Ok", ""); } new szDate[256], Year, Month, Day, Hour, Minute, Second; getdate(Year, Month, Day); gettime(Hour, Minute, Second); format(szDate, sizeof(szDate), "%02d/%02d/%d - %02d:%02d:%02d", Day, Month, Year, Hour, Minute, Second); mysql_format(SQL, query, 256, "INSERT INTO `clans` (`Name`, `Owner`, `RegisterDate`, `Color`, `Slots`) VALUES ('%e', '%e', '%e', 'FFFFFF', '%d')", inputtext, PlayerInfo[playerid][pUsername], szDate, sSlot[playerid]); new Cache: result = mysql_query(SQL, query); new i = cache_insert_id(); cache_delete(result); ClanInfo[i][clSlots] = sSlot[playerid]; format(ClanInfo[i][clName], 64, inputtext); format(ClanInfo[i][clOwner], 256, PlayerInfo[playerid][pUsername]); format(ClanInfo[i][clRegisterDate], 256, szDate); format(ClanInfo[i][clColor], 256, "FFFFFF"); PlayerInfo[playerid][pClan] = i; PlayerInfo[playerid][pClanRank] = 6; new szText[256]; format(szText, sizeof(szText), "{FFFFFF}The name chosen for you is: {4790 DE}% s {FFFFFF}.\nThe second step is to choose the tag clan.\nTagul clan must be between {4790DE} 3 {FFFFFF} and {4790DE} 6 {FFFFFF} characters.", inputtext); ShowPlayerDialog(playerid, DIALOG_CLAN2, DIALOG_STYLE_INPUT, "Clan:", szText, "Ok", ""); format(query, sizeof(query), "UPDATE `users` SET `Clan`='%d', `ClanRank`='%d' WHERE `Name`='%s'", PlayerInfo[playerid][pClan], PlayerInfo[playerid][pClanRank], PlayerInfo[playerid][pUsername]); mysql_query(SQL, query); } if(dialogid == DIALOG_CLAN2) { if(strlen(inputtext) < 3 || strlen(inputtext) > 6) { SendClientMessage(playerid, COLOR_YELLOW2, "Eroare: Clan tag must be between 3 and 6 characters."); new szText[256]; format(szText, sizeof(szText), "{FFFFFF}The name chosen for you is: {4790 DE}% s {FFFFFF}.\nThe second step is to choose the tag clan.\nTagul clan must be between {4790DE} 3 {FFFFFF} and {4790DE} 6 {FFFFFF} characters.", inputtext); ShowPlayerDialog(playerid, DIALOG_CLAN2, DIALOG_STYLE_INPUT, "Clan::", szText, "Ok", ""); return 1; } new clanid = PlayerInfo[playerid][pClan]; format(ClanInfo[clanid][clTag], 32, inputtext); format(query, sizeof(query), "UPDATE `clans` SET `Tag`='%s' WHERE `ID`='%d'", inputtext, clanid); mysql_query(SQL, query); new szText[256]; format(szText, sizeof(szText), "{4790DE}%s{FFFFFF}Nume\nNume{4790DE}%s", ClanInfo[clanid][clTag], ClanInfo[clanid][clTag]); ShowPlayerDialog(playerid, DIALOG_CLAN3, DIALOG_STYLE_LIST, "Alege pozitia:", szText, "Ok", ""); } if(dialogid == DIALOG_CLAN3) { new szName[256], clanid = PlayerInfo[playerid][pClan]; ClanInfo[clanid][clTagType] = listitem; format(string, sizeof(string), "Felicitari! Ti-ai cumparat din magazin, un clan cu %d locuri disponibile.", sSlot[playerid]); SendClientMessage(playerid, COLOR_GOLD, string); Update(playerid, pPremiumPointsx); format(string, sizeof(string), "Informatii: Numele clanului, este %s (tag: %s). [clan #%d]", ClanInfo[clanid][clName], ClanInfo[clanid][clTag], PlayerInfo[playerid][pClan]); SendClientMessage(playerid, COLOR_GOLD, string); format(query, sizeof(query), "UPDATE `clans` SET `TagType`='%d' WHERE `ID`='%d'", listitem, clanid); mysql_query(SQL, query); format(ClanInfo[clanid][clRankName1], 32, "Rank 1"); format(ClanInfo[clanid][clRankName2], 32, "Rank 2"); format(ClanInfo[clanid][clRankName3], 32, "Rank 3"); format(ClanInfo[clanid][clRankName4], 32, "Rank 4"); format(ClanInfo[clanid][clRankName5], 32, "Rank 5"); format(ClanInfo[clanid][clRankName6], 32, "Rank 6"); format(ClanInfo[clanid][clMotd], 32, "None"); if(ClanInfo[clanid][clTagType] == 0) { format(szName, sizeof(szName), "%s%s", ClanInfo[clanid][clTag], PlayerInfo[playerid][pUsername]); } else if(ClanInfo[clanid][clTagType] == 1) { format(szName, sizeof(szName), "%s%s", PlayerInfo[playerid][pUsername], ClanInfo[clanid][clTag]); } SetPlayerName(playerid, szName); }
  11. if(dialogid == DIALOG_CLAN) { if(strlen(inputtext) < 2 || strlen(inputtext) > 10) return SendClientMessage(playerid, COLOR_YELLOW2, "Eroare: Clan names must be between 3 and 10 characters."); if(sSlot[playerid] == 10) { ShowPlayerDialog(playerid, DIALOG_CLAN, DIALOG_STYLE_INPUT, "Clan:", "Create Clan:\nClan name must contain between 3 - 10 characters", "Ok", ""); } else if(sSlot[playerid] == 20) { ShowPlayerDialog(playerid, DIALOG_CLAN, DIALOG_STYLE_INPUT, "Clan:", "Create Clan:\nClan name must contain between 3 - 10 characters", "Ok", ""); } else if(sSlot[playerid] == 40) { ShowPlayerDialog(playerid, DIALOG_CLAN, DIALOG_STYLE_INPUT, "Clan:", "Create Clan:\nClan name must contain between 3 - 10 characters", "Ok", ""); } return 1; } new szDate[256], Year, Month, Day, Hour, Minute, Second; getdate(Year, Month, Day); gettime(Hour, Minute, Second); format(szDate, sizeof(szDate), "%02d/%02d/%d - %02d:%02d:%02d", Day, Month, Year, Hour, Minute, Second); mysql_format(SQL, query, 256, "INSERT INTO `clans` (`Name`, `Owner`, `RegisterDate`, `Color`, `Slots`) VALUES ('%e', '%e', '%e', 'FFFFFF', '%d')", inputtext, PlayerInfo[playerid][pUsername], szDate, sSlot[playerid]); new Cache: result = mysql_query(SQL, query); new i = cache_insert_id(); cache_delete(result); ClanInfo[i][clSlots] = sSlot[playerid]; format(ClanInfo[i][clName], 64, inputtext); format(ClanInfo[i][clOwner], 256, PlayerInfo[playerid][pUsername]); format(ClanInfo[i][clRegisterDate], 256, szDate); format(ClanInfo[i][clColor], 256, "FFFFFF"); PlayerInfo[playerid][pClan] = i; PlayerInfo[playerid][pClanRank] = 6; new szText[256]; format(szText, sizeof(szText), "{FFFFFF}The name chosen for you is: {4790 DE}% s {FFFFFF}.\nThe second step is to choose the tag clan.\nTagul clan must be between {4790DE} 3 {FFFFFF} and {4790DE} 6 {FFFFFF} characters.", inputtext); ShowPlayerDialog(playerid, DIALOG_CLAN2, DIALOG_STYLE_INPUT, "Clan:", szText, "Ok", ""); format(query, sizeof(query), "UPDATE `users` SET `Clan`='%d', `ClanRank`='%d' WHERE `Name`='%s'", PlayerInfo[playerid][pClan], PlayerInfo[playerid][pClanRank], PlayerInfo[playerid][pUsername]); mysql_query(SQL, query); } if(dialogid == DIALOG_CLAN2) { if(strlen(inputtext) < 3 || strlen(inputtext) > 6) { SendClientMessage(playerid, COLOR_YELLOW2, "Eroare: Clan tag must be between 3 and 6 characters."); new szText[256]; format(szText, sizeof(szText), "{FFFFFF}The name chosen for you is: {4790 DE}% s {FFFFFF}.\nThe second step is to choose the tag clan.\nTagul clan must be between {4790DE} 3 {FFFFFF} and {4790DE} 6 {FFFFFF} characters.", inputtext); ShowPlayerDialog(playerid, DIALOG_CLAN2, DIALOG_STYLE_INPUT, "Clan::", szText, "Ok", ""); return 1; } new clanid = PlayerInfo[playerid][pClan]; format(ClanInfo[clanid][clTag], 32, inputtext); format(query, sizeof(query), "UPDATE `clans` SET `Tag`='%s' WHERE `ID`='%d'", inputtext, clanid); mysql_query(SQL, query); new szText[256]; format(szText, sizeof(szText), "{4790DE}%s{FFFFFF}Nume\nNume{4790DE}%s", ClanInfo[clanid][clTag], ClanInfo[clanid][clTag]); ShowPlayerDialog(playerid, DIALOG_CLAN3, DIALOG_STYLE_LIST, "Alege pozitia:", szText, "Ok", ""); } if(dialogid == DIALOG_CLAN3) { new szName[256], clanid = PlayerInfo[playerid][pClan]; ClanInfo[clanid][clTagType] = listitem; format(string, sizeof(string), "Felicitari! Ti-ai cumparat din magazin, un clan cu %d locuri disponibile.", sSlot[playerid]); SendClientMessage(playerid, COLOR_GOLD, string); Update(playerid, pPremiumPointsx); format(string, sizeof(string), "Informatii: Numele clanului, este %s (tag: %s). [clan #%d]", ClanInfo[clanid][clName], ClanInfo[clanid][clTag], PlayerInfo[playerid][pClan]); SendClientMessage(playerid, COLOR_GOLD, string); format(query, sizeof(query), "UPDATE `clans` SET `TagType`='%d' WHERE `ID`='%d'", listitem, clanid); mysql_query(SQL, query); format(ClanInfo[clanid][clRankName1], 32, "Rank 1"); format(ClanInfo[clanid][clRankName2], 32, "Rank 2"); format(ClanInfo[clanid][clRankName3], 32, "Rank 3"); format(ClanInfo[clanid][clRankName4], 32, "Rank 4"); format(ClanInfo[clanid][clRankName5], 32, "Rank 5"); format(ClanInfo[clanid][clRankName6], 32, "Rank 6"); format(ClanInfo[clanid][clMotd], 32, "None"); if(ClanInfo[clanid][clTagType] == 0) { format(szName, sizeof(szName), "%s%s", ClanInfo[clanid][clTag], PlayerInfo[playerid][pUsername]); } else if(ClanInfo[clanid][clTagType] == 1) { format(szName, sizeof(szName), "%s%s", PlayerInfo[playerid][pUsername], ClanInfo[clanid][clTag]); } SetPlayerName(playerid, szName); } Foloseste nume intre 3 si 9 caractere.
  12. Da-mi listitemul cand selectezi 'Create clan' EDIT: Mai pe romaneste cand selectezi Create Clan in shop de iti arat celalalt dialog.
  13. Bun si argumenteaza, nu iti apare nici o eroare in chat sau ceva? Ok, dai /shop, dai pe create clan bagi numele si nu mai face nimic?
  14. Deschidele o sesizare si spune-le ca vrei baza de date pentru server.
  15. Adauga codul in aceea sectiune 'Cod', daca tu il pui asa de dezordonat, eu nu stau sa-l aranjez pe tot, deobicei aranjez codul si dupa il repar, nu imi place sa lucrez dezordonat.
  16. Eu nu te pot ajuta cu nimic, pana cand nu ti-a dat datele de la baza de date.
  17. Pai ai nevoie sa urci baza de date oferita de firma de unde ai host, deobicei firma iti ofera datele de la baza ta de date pe email sau intr-un ticket, daca ai host de la 0ping, cere baza de date printr-un ticket si ei ti-o vor da.
  18. Daca nu ne dai codul sursa, ai facut degeaba topicul.
  19. I-am rezolvat eu cu TW, era exact la ce ma gandeam, baza de date era putin cam incarcata si bloca executiile, de aceea trebuia facut un timer.
  20. HMM, cred ca ar fi indicat sa setezi un timer de 3 secunde unde sa se foloseasca: IniStock(); deoarece am intampinat aceasta problema, si serverul sql este putin cam incarcat si blocheaza unele executii in sql.
  21. hopa scuze, doua secunde doar. Edit: CMD:dsprice(playerid, params[]) { if(IsPlayerConnected(playerid)) { if(playerVariables[playerid][pAdminLevel] < 6) return S(playerid, -1, AdminOnly); new idm; new pret,id,sqlselect[300],eroare = 0; if(sscanf(params, "ii", id,pret)) return S(playerid, COLOR_GREY, "Syntax: {FFFFFF}/dsprice [Mode masina (db)] [pret]"); mysql_format(handle, sqlselect, sizeof(sqlselect), "SELECT * FROM `stock` WHERE `Model`='%d'",id); new Cache: verificare = mysql_query(handle, sqlselect); eroare = cache_get_row_count(); if(eroare > 0) { for(new i = 0; i < eroare; i++) { idm = cache_get_field_content_int(i, "ID"); } } cache_delete(verificare); if(eroare < 1) return SendClientMessage(playerid, -1, "Nu exista acel model de vehicul in stock."); mysql_format(handle, sqlselect, sizeof(sqlselect), "UPDATE `stock` SET `Price`= '%d' WHERE `Model`= '%d'", pret, id); mysql_tquery(handle, sqlselect, "",""); format(string, sizeof(string), "{F0DF52}/dsprice: Owner %s changed data for %s | Price: $%s", GetName(playerid), Stock[idm][vName], NumberFormat(pret)); submitToAdmins(string, -1); IniStock(); } return 1; } Ia vezi acum.
  22. CMD:dsprice(playerid, params[]) { if(IsPlayerConnected(playerid)) { if(playerVariables[playerid][pAdminLevel] < 6) return S(playerid, -1, AdminOnly); new pret,id,sqlselect[300],eroare = 0; if(sscanf(params, "ii", id,pret)) return S(playerid, COLOR_GREY, "Syntax: {FFFFFF}/dsprice [Mode masina (db)] [pret]"); mysql_format(handle, sqlselect, sizeof(sqlselect), "SELECT * FROM `stock` WHERE `Model`='%d'",id); new Cache: verificare = mysql_query(handle, sqlselect); eroare = cache_get_row_count(); cache_delete(verificare); if(eroare < 1) return SendClientMessage(playerid, -1, "Nu exista acel model de vehicul in stock."); mysql_format(handle, sqlselect, sizeof(sqlselect), "UPDATE `stock` SET `Price`= '%d' WHERE `ID`= '%d'", Stock[id][vPrice], id); mysql_tquery(handle, sqlselect, "",""); format(string, sizeof(string), "{F0DF52}/dsprice: Owner %s changed data for %s | Price: $%s", GetName(playerid), Stock[id][vName], NumberFormat(pret)); submitToAdmins(string, -1); IniStock(); } return 1; } Ia vezi.
  23. Merge facut si dupa model, vrei sa ti-l fac cu tot cu IniStock si tot?
  24. Pai, trebuie sa pui IniStock() asa parca era, sa se incarce din nou.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.