Jump to content

Legend

Membru
  • Posts

    8
  • Joined

  • Last visited

Everything posted by Legend

  1. Legend

    Problema comenzi

    Trebuie sa inregistrezi acea variabila (kilometrii vehiculului) intr-un fisier sau in baza de date, depinde ce folosesti.
  2. Aceasta problema este cauzata de o comanda care practic "pica" GameMode-ul. Poate fi de exemplu un string imens de mare pus aiurea (eu am patit).
  3. Nume: Legend Nume tutorial: Creeate dialog stil "MSGBOX" Descriere: As dori un tutorial despre cum se face un dialog DIALOG_STYLE_MSGBOX dar cu muuulte randuri si caractere...cat sa incapa 17 denumiri de factiuni si numele liderilor fiecareia. Eu am incercat dar nu am reusit sa-l fac suficient de lung...ori imi da la compilare "Imput line is too long(after substitutions)" ori mi se compileaza bine dar cand dau comanda respectiva imi da "Server: Unknown command"...Va rog sa ma ajutati. Multumesc anticipat!
  4. Nume: Legend Nume tutorial: functia sscanf Descriere: imi puteti face va rog frumos un tutorial despre cum se foloseste functia "sscanf" la un server de samp pe mysql pentru a citi tabele bazei de date? spre exemplu la masini, adica cum fac ca ceea ce este pe mysql sa se aplice la masinile de pe server la CarData la ongamemodeinit...
  5. La cea postata de Wopss sar putea sa ai erori...sa nu ai unele variabile definite + ca pe rgaming nu e PlayerInfo, ci "PlayerData". Uite aici o comanda calumea: if(strcmp(cmd, "/lc", true) == 0 || strmcp(cmd, "/leaderchat", true) == 0) { if(IsPlayerConnected(playerid)) { if(PlayerData[playerid][pMuted] == 1) { SendClientMessage(playerid, COLOR_LIGHTRED, "Nu poti folosi /lc, esti mutit!"); return 1; } if(gPlayerLogged[playerid] == 0) { SendClientMessage(playerid, COLOR_GREY, "{ffffff}Ne pare rau, dar nu esti logat pentru a utiliza aceata comanda!"); return 1; } new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[256]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; result[0] = toupper(result[0]); if(!strlen(result)) { SendUsage(playerid,"(/lc) [leader chat]"); return 1; } if(FindIP(result)) /// Anti-Reclama { new playersip[256]; GetPlayerIp(playerid, playersip, sizeof(playersip)); new year, month,day; getdate(year, month, day); format(string, sizeof(string), "AdmCmd: %s a primit ban de la AdmBOT, motivul: /lc %s (%d-%d-%d)", sendername,(result),month,day,year); AdmCmdsLog(string); format(string, sizeof(string), "AdmBOT: %s a primit Ban Permanent de la AdmBot, Motiv: Reclama(pe /lc)!", sendername); SendClientMessageToAll(COLOR_LIGHTRED, string); SendClientMessage(playerid, COLOR_YELLOW, "Pentru unban vizitati [forumul tau]"); SendClientMessage(playerid, COLOR_YELLOW, "Nu uita sa faci poza {FF0000}(F8)"); PlayerData[playerid][pLocked] = 1; MySQLADDBan(PlayerData[playerid][pSQLID]); new query[MAX_STRING]; format(query, MAX_STRING, "UPDATE cars SET "); new hour,minuite,second; gettime(hour,minuite,second); format(query, sizeof(query), "UPDATE banuri SET BanmD='%d' WHERE idd=%d", minuite, PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET BanoD='%d' WHERE idd=%d", hour, PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET BanzD='%d' WHERE idd=%d", day, PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET BanlD='%d' WHERE idd=%d", month, PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET BanaD='%d' WHERE idd=%d", year, PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET Nume='%s' WHERE idd=%d", PlayerData[playerid][pNume], PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET AdminBan='AdmBOT' WHERE idd=%d", PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET BanReason='Reclama' WHERE idd=%d", PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE banuri SET PlayerIP='%s' WHERE idd=%d", playersip, PlayerData[playerid][pSQLID]); mysql_query(query); format(query, sizeof(query), "UPDATE players SET Locked='%d' WHERE id=%d", PlayerData[playerid][pLocked], PlayerData[playerid][pSQLID]); mysql_query(query); BanEx(playerid, "Reclama"); return 1; } GetPlayerName(playerid, sendername, sizeof(sendername)); if (PlayerData[playerid][pLeader] >= 1) { new ltext[10]; if(PlayerData[playerid][pLeader] == 1) { ltext = "P.Romana"; } else if(PlayerData[playerid][pLeader] == 2) { ltext = "S.R.I."; } else if(PlayerData[playerid][pLeader] == 3) { ltext = "A.Romana"; } else if(PlayerData[playerid][pLeader] == 4) { ltext = "SMURD"; } else if(PlayerData[playerid][pLeader] == 5) { ltext = "Rromii"; } else if(PlayerData[playerid][pLeader] == 6) { ltext = "Taxi"; } else if(PlayerData[playerid][pLeader] == 7) { ltext = "S.Instructor"; } else if(PlayerData[playerid][pLeader] == 8) { ltext = "Hitman Ag."; } else if(PlayerData[playerid][pLeader] == 9) { ltext = "N.Reporter"; } else if(PlayerData[playerid][pLeader] == 10) { ltext = "Remorcari"; } else if(PlayerData[playerid][pLeader] == 11) { ltext = "C.Sadoveanu"; } else if(PlayerData[playerid][pLeader] == 12) { ltext = "C.Capone"; } else if(PlayerData[playerid][pLeader] == 13) { ltext = "C.Duduianu"; } else if(PlayerData[playerid][pLeader] == 14) { ltext = "C.Corsicanu"; } else if(PlayerData[playerid][pLeader] == 15) { ltext = "C.Tobosaru"; } else if(PlayerData[playerid][pLeader] == 16) { ltext = "C.Camataru"; } for(new i = 0; i < MAX_PLAYERS; i ++) { if(PlayerData[pLeader] >= 1) { format(string, sizeof(string), "[LeaderChat] (%s) %s: %s.", ltext, sendername, (result)); SendClientMessage(i, COLOR_LIGHTGREEN, string); } } } else { SendClientMessage(playerid, COLOR_GRAD2, "Nu esti lider la nicio factiune! => Acces respins!"); return 1; } } return 1; }
  6. if(strcmp(cmd, "/skip", true) == 0) { if(IsPlayerConnected(playerid)) { if(Tutorial[playerid] >= 1) { Tutorial[playerid] = 0; SendClientMessage(playerid, COLOR_WHITE, "Text"); format(query, sizeof(query), "UPDATE tabel SET variabila WHERE id=%d", Tutorial[playerid], PlayerData[playerid][pSQLID]); mysql_query(query); } } return 1; } Explicatii: 1. La SendClientMessage, in loc de "Text" pui mesajul care vrei sa-i apara in chat celui care da /skip. Daca vrei sa pui rand nou, pui alt SendClientMessage. 2. inlocuiesti peste tot "Tutorial[playerid]" cu variabila de la tine din gamemode care tine de tutorial. 3. la updatarea mysql, inlocuiesti: "tabel" cu numele tabelului tau din mysql; "variabila" cu numele 'row-ului' (denumirea randului) din baza ta de date.
  7. Daca este FileScript, faci cum a zis TheBest, il treci in server.cfg cum ai facut si tu si dai Save, dar sa nu uiti sa copiezi acel fs in fisierul "FileScripts" al serverului(PS: in fisierul 'filescripts' trebuie pus neaparat si fisierul ".amx". daca tu ai doar cel .pwn , atunci complieazal, pentru a avea si fisierul .amx)
  8. Nume: Legend Nume tutorial: Comanda /leaders offline. Descriere: Salut, as dori sa ma ajutati va rog sa fac o comanda "/leaders" in care sa apara toti liderii, si cei care sunt offline. Serverul ruleaza pe MySQL...as dori sa ma ajutati la comanda propriu-zisa, dar si la extragerea informatiei de pe baza de date MySQL, adica citirea tabelului cu factiuni pentru a lua numele liderului factiunii din MySQL si al pune pe server la pornirea gamemode-ului(ongamemodeinit).
×
×
  • 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.