Jump to content

Trippie

Membru
  • Posts

    12
  • Joined

  • Last visited

Everything posted by Trippie

  1. Prima eroare este din cauza ca, probabil ai folosit cache_get_field_content_int pe o variabila character (varchar in baza de date) sau float Urmatoarele erori sunt din cauza ca nu ai conectat bine baza de date, nu ai pus parola in gamemode Verifica ce versiune de MySQL folosesti Pentru R39-2+ este syntaxa [numele variabilei bazei de date] = mysql_connect(const host[], const user[], const database[], const password[], MySQLOpt:option_id = MySQLOpt:0) Pentru R40+ este syntaxa [numele variabilei bazei de date] = mysql_connect(const host[], const user[], const password[], const database[], MySQLOpt:option_id = MySQLOpt:0)
  2. Salutare din nou. Pastreaza toate modificarile facute dar scoate TAG-ul DynamicPickup: din definirea variabilei pentru ca aparent, TAG-urile trebuiau specificate in versiunile mai vechi de streamer, si la tine probabil nu e cazul, si vezi daca merge.
  3. Salut. Poti sa postezi liniile 15234 si 15251 ca sa vad exact ce face codul respectiv si de unde provine eroarea
  4. Salut. Sunt mai multe lucruri. In primul rand modifica public OnPlayerPickUpDynamicPickup(playerid, pickupid) in public OnPlayerPickUpDynamicPickup(playerid, STREAMER_TAG_PICKUP pickupid) deoarece aceasta este nativa callback-ului. Apoi, la CreateDynamicPickup, al doilea parametru reprezinta PickUp Type-ul, iar 23 nu exista. PickUp type-urile sunt pana la 22, iar daca pui mai mult de 22 iti da valoare null, adica 0, iar PickUp Type 0 nu da trigger la OnPlayerPickUpDynamicPickUp Poti folosi pentru acest System Pickup Type 8 De asemenea, am vazut ca folosesti STREAMER, ceea ce inseamna ca atunci cand declari variabila rob_pickup[playerid][0] trebuie sa o declari cu tag-ul specific Incearca sa modifici lucrurile astea si vezi daca se rezolva problema. M-ar ajuta un +1 daca ti-a fost de folos. Succes.
  5. Salut. Mergi in callback-ul OnGameModeInit() si cauta linia mysql_connect. Dupa accea, completeaza functia cu parametrii necesari mysql_connect(const host[], const username[], const database[], const password[]) - pentru Mysql < r40 Pentru mysql r40+ este mysql_connect(const host[], const user[], const password[], const database[], MySQLOpt:option_id = MySQLOpt:0) Pentru localhost trebuie sa scrii asa: SQL = mysql_connect("localhost", "root", "numele bazei de date", ""); Verifica de asemenea si in server.cfg daca ai mysql.dll trecut pe linia plugins si in gamemode daca ai #include <a_mysql>
  6. Salutare, cel mai probabail nu ai pluginul streamer.inc in includes folder (srv_folder/pawno/includes), sau nu ai introdus in server.cfs pe linia plugins streamer.dll (pt windows) sau streamer.so (pentru Linux)
  7. [ERROR] cache_get_field_content_int - invalid datatype Treaba asta se poate referi la faptul ca incerci sa salvezi variabile de tip integer (int) in variabile de tip char (string-uri, sau array-uri) Ideea e ca syntaxele respective sunt din MYSQL R30, R33 sau R33-6 etc. Personal iti recomand sa treci pe MYSQL R41-4 (ultima versiune cred). Poti verifica liniile de cod si sa vezi daca sunt corect scrise in parametrii, dar normal ar trebui sa arate cam asa: new destination[32]; cache_get_field_content(row_idx, field_name[], destination[]); respectiv int dest = cache_get_field_content_int(row_indx, field_name[]); De asemenea, pentru putina documentatie despre MySQL R33 poti verifica aici https://team.sa-mp.com/wiki/MySQL_R33.html [EDIT] In principiu trebuie sa verifici toate liniile in care apare cache_get_field_content_int si sa scoti al 3-lea parametru daca este prezent, care reprezinta connectionHandle-ul cu baza de date. Adica ceva de genu: new integer = cache_get_field_content_int(0, "integer", connectionHandle); trebuie sa fie new integer = cache_get_field_content_int(0, "integer);
  8. Sterge linia SpawnPlayer(playerid); Ca sa iti explic si ce se intampla, e simplu. De fiecaredata cand folosesti, oriunde in Gamemode functia SpawnPlayer se executa automat Callback-ul OnPlayerSpawn. Practic, daca tu treci in callback functia SpawnPlayer, o sa se creeze un loop infinit.
  9. Salut, toata problema vine de la acest plugin, iar in log-files iti explica clar ce se intampla [14:05:28] Loading plugin: PawnPlus-static.so [14:05:28] Failed (plugins/PawnPlus-static.so: cannot open shared object file: No such file or directory) Pe localhost functioneaza deoarece esti pe Windows, iar Host-urile de regula sunt pe Linux. Daca nu folosesti plugin-ul PawnPlus-static deloc prin gamemode poti sa il stergi din server.cfg, iar in schimb, daca il folosesti, cauta-l pe net, si incearca sa descarci cea mai noua versiune a pluginului, in format .so (pentru Linux) Ma gandesc ca probabil in folder-ul Plugins ai doar anumite plugin-uri atat .dll cat si .so, iar pe acesta il ai doar in format.dll. Sau repet, poate sa fie o versiune mai veche
  10. Trippie

    /hostname

    In primul rand, nu sunt hater, comanda ta este perfect corecta, dar, desi este o comanda asa de simpla, nu stiu de ce te-ai lungit asa de mult cu ea. Este o comanda ce poate fii facuta in 10 randuri, iar string-urile alea de ce sunt asa de mari? Nu cred ca o sa pui tu nume de 64 de caractere la server, si totusi, si daca il pui, de ce string-ul este de 128? I mean, de ce nu ai pus new string[9 + sizeof(name)]? Consumi mult mai putin si in plus, hostname + un spatiu dintre el si numele ocupa 9 caractere, exact de cate ai nevoie. Parerea mea este ca asa este mult mai bine, ocupa si mai putin spatiu si este si mai economic din punct de vedere al procesorului. Corectati-ma daca gresesc. YCMD:hostname(playerid, params[], help) { new serverName[32], string[9+sizeof(serverName)]; if(PlayerInfo[playerid][pAdmin] < 6) return SendClientMessage(playerid, COLOR_YELLOW, AdminOnly); if(sscanf(params, "s[32]", serverName)) return SendClientMessage(playerid, -1, "Syntax: /hostname <Server Name>"); format(string, 9+sizeof(serverName), "hostname %s", serverName); SendRconCommand(string); format(string, 9+sizeof(serverName), "Ai schimbat numele serverului in %s", serverName); SendClientMessage(playerid, -1, string); return 1; } apropo, folosesc YSI Cmd, recomand. (Edit: Nu sunt eu mare scripter, dar lucrurile astea cu marimea string-urilor, cu string-urile locale, globale, etc. tin de optimizare, si daca faci un gamemode de la 0, mai bine te gandesti la lucrurile astea de acum, decat sa ajungi cu gm-ul la 20k linii+ si sa stai cu orele sa cauti prin gm, sa modifici string-uri, etc) Inca un lucru, recomand folosirea mai desa a string-urilor si in general a variabilelor globale. Adica, de ce sa declari inca 2 variabile (string si serverName) cand ai putea sa folosesti alte 2 variabile care sunt deja definite global.
×
×
  • 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.