Jump to content

Banditul

Moderator
  • Posts

    1,134
  • Joined

  • Last visited

  • Days Won

    96

Everything posted by Banditul

  1. 2 chestii: Ori nu ai a_mysql.inc in folderul pawno>includes ori incercci sa compilezi cu alt pawno(nu cel al gm-ului) care nu are acel include
  2. Primele 3 warnings: Cauta functiile si muta foward sau definitia functiilor deasupra utilizari lor. Spre exemplu functia este folosita la OnGameModeInit, tu o muti deasupra(dar trebuie sa fie deasupra tuturor locurilor unde este folosita, de preferat dupa includes/defines) Al patrulea warning: Modifica din Text:variabila in PlayerText:variabila La al cincelea: Asigura-te ca acel string nu este global si incearca sa ti definirea variabelor cat mai locala astfel incat sa nu definesti in 2 locuri string si sa iti dea acel warning. La ultimu: #pragma compress 0 deasupra includes
  3. Te superi daca imi spui unde anume ai vazut remorca atasata de o masina normala? Functia de AttachTrailer functioneaza doar la vechiculele care chiar pot atasa trailer(tir, tractor, tow car si masinuta de aeroport)
  4. Se vede foarte clar ca ai pus virgula intre conditia if-ului si SendClientMessage ceea ce nu are ce cauta + daca pui SendClientMessage acolo ce se afla intre acolade ar putea fi complet ingnorat if(dialogid == DIALOG_CRATES) { { if(listitem == 0) { if(PlayerInfo[playerid][pLegendaryCrates] > 0) { SendClientMessage(playerid, COLOR_WHITE, "Ai Deschis un Crate Legendar"); format(string, sizeof(string), "Legendary Crate"); PlayerTextDrawSetString(playerid, CrateName[playerid]); PlayerTextDrawShow(playerid, CrateName[playerid]); PlayerTextDrawShow(playerid, PreviewCrate[playerid]); PlayerTextDrawShow(playerid, OpenCrate[playerid]); PlayerTextDrawShow(playerid, Reward[playerid]); PlayerTextDrawShow(playerid, Close[playerid]); TextDrawShowForPlayer(playerid, CrateBox); } else return SendClientMessage(playerid, COLOR_ERROR, "Nu ai un crate legendar."); } if(listitem == 1) { if(PlayerInfo[playerid][pEpicCrates] > 0) { SendClientMessage(playerid, COLOR_WHITE, "Ai deschis un crate Epic!"); format(string, sizeof(string), "Epic Crate"); PlayerTextDrawSetString(playerid, CrateName[playerid]); PlayerTextDrawShow(playerid, CrateName[playerid]); PlayerTextDrawShow(playerid, PreviewCrate[playerid]); PlayerTextDrawShow(playerid, OpenCrate[playerid]); PlayerTextDrawShow(playerid, Reward[playerid]); PlayerTextDrawShow(playerid, Close[playerid]); TextDrawShowForPlayer(playerid, CrateBox); } else return SendClientMessage(playerid, COLOR_ERROR, "Nu ai un crate epic."); } if(listitem == 2) { if(PlayerInfo[playerid][pRareCrates] > 0) { SendClientMessage(playerid, COLOR_WHITE, "Ai deschis un crate rar!"); format(string, sizeof(string), "Rare Crate"); PlayerTextDrawSetString(playerid, CrateName[playerid]); PlayerTextDrawShow(playerid, CrateName[playerid]); PlayerTextDrawShow(playerid, PreviewCrate[playerid]); PlayerTextDrawShow(playerid, OpenCrate[playerid]); PlayerTextDrawShow(playerid, Reward[playerid]); PlayerTextDrawShow(playerid, Close[playerid]); TextDrawShowForPlayer(playerid, CrateBox); } else return SendClientMessage(playerid, COLOR_ERROR, "Nu ai un crate rar!"); } return 1; } } Un if poate fi precedat de o singura instructiune sau de multiple instructiuni incorporate intre acolade //If VALID if(conditie) instructiune(); if(conditie == true) instructiune1(); else//cazul in care conditia este diferita de conditia if-ului se ruleaza asta(cazul de fata falsa), cazul in care nu e nici TRUE sau FALSE nu se va executa n instructiune2();//ca si in cazul if-ului simplu, else functioneaza dupa acelasi principiu if(conditie) { instructiune1(); instructiune2 = 1; //etc } //if cu mai multe conditi if(conditie1) instructiune1(); else if(conditieN) instructiuneN(); else instructiuneN1();//Deasemena oricare din aceste cazuri poate avea o instructiune sau multiple instructiune insirate intre acolade(else ruleaza daca restu de else-if nu indeplinesc nici una din conditile date) //if INVALID if(conditie) instructiune1(); instructiune2();//aceasta instructiune nu face parte din conditia if-ului si va fi rulata indiferent de ce zice if-ul(asta daca instructiune este si ea valida si poate fi rulata) if(conditie) instructiune1(); { instructiune2(); instructiune += 1; //etc }//Ca si in cazul de sus, ce se afla intre acolade nu face parte din if si daca cazul este favorabil si codului ii este permis sa ruleze va rula indifierent de conditia impusa
  5. In primul rand, if-urile nu trebuie sa aibe ; dupa ele In al doilea rand, un if trebuie sa aibe si o continuare if(PlayerInfo[playerid][pLegendaryCrates] == 1) //Fa ceva Kick(playerid); if(PlayerInfo[playerid][pEpicCrates] == 1) //Fa altceva SCM(...); if(PlayerInfo[playerid][pRareCrates] == 1) //Fa altceva
  6. Esti sigur ca ai definit handle? new MySQL: handle; Pe la inceputul gm-ului inainte de al folosi?
  7. Sscanf: https://www.google.ro/url?sa=t&source=web&rct=j&url=https://github.com/maddinat0r/sscanf/releases&ved=2ahUKEwjMnvjNze7bAhVHG5oKHT_YCC8QFjACegQICBAB&usg=AOvVaw0FNaK4zzupWhoOLes08bgO Crashdetect: https://www.google.ro/url?sa=t&source=web&rct=j&url=https://github.com/Zeex/samp-plugin-crashdetect/releases&ved=2ahUKEwiuwYPnze7bAhWiA5oKHdBADJ0QFjAAegQIABAB&usg=AOvVaw1UMSQURAUynD2xhfWuRBEP
  8. Restart? Mai degraba crash. Din cate vad e problema la SetPlayerName, dar daca nu dai compile la gm cu argumentul -d3 nu vei stii exact unde(faci un fisier numit pawn.cfg in folderu pawno si scrii in el -d3) + incearca sa folosesti ultima versiune de crashdetect compatibila cu hostu tau Si fa si update la unele pluginuri(sscanf)
  9. Pentru ca OnPlayerText este exact locu unde se trimit. functia in sine este cea care dicteaza trimiterea mesajelor pe chat
  10. Problema ta e la OnPlayerKeyStateChange Tu ai asta if(Speed[playerid] = 1) Dar ar trebui sa fie if(Speed[playerid] == 1)
  11. SQL este usor(nu e asa greu cum zic uni, tine mai mult de cat de bine o sa il intelegi tu) + SQL nu e predispus la coruperea datelor si e mai rapid. Regret ca nu te pot ajuta cu asta, YSI ini e un sistem destul de bunicel avand in vedere ca face parte din categoria de salvare/incarcare din fisier
  12. Asta e din cauza faptului ca atat ceasu de la data cat si alt sistem folosesc variabila Text:Time Ori creezi o variabila Text:CeasTime si inlocuiesti in sistemu de ceas/data ori modifici celalalt sistem
  13. Atunci incearca cu ysi care vine cu gm, din pacate partea de slash ramane la fel, daca te duci la un tutorial YSI vei vedea http://forum.sa-mp.com/showthread.php?t=570957
  14. Nu trebuie sa fie neaparat variabila ca sa se incadreze in eroarea aia. Poti avea doua functii denumite Time
  15. @Yamato tocmai ai dat bump la un topic vechi de 9 luni cu o problema probabil rezolvata
  16. Da a aratat 2531 dar din fisierul gresit, eroarea se afla in systems.inc nu in Onyx.pwn
  17. Ai aratat linia gresita, e 2531 nu 2351 Si cel mai probabil e vorba de un for loop
  18. 2 chestii: 1.Actualizeaza YSI includes: https://github.com/pawn-lang/YSI-Includes/releases/download/v4.0.2/YSI.zip 2. Cand incluzi ceva din YSI se face: #include <YSI\y_ini> ^ Diferenta sta in acel slash
  19. As presupune mai degraba o problema la sscanf din cadrul comenzi pentru ca nu preia bine id-u(asta daca nu altceva alterneaza acea variabila id pe drum)
  20. Majoritatea ownerilor de servere au parolele salvate text si nu hashurate cum ar fi normal pentru ca parola cuiva face parte din lucrurile confidentiale iar distribuirea ei este ilegala(la fel si vizualizarea ei) (dar ne aflam in domeniu sa-mp si nimanui nu ii pasa) de aceea cel mai bun sfat e sa ai o parola separata si unica pt fiecare server pentru ca uni nu au notiunea de privat/confidential
  21. Ok. Asta e interesant. Incearca sa ai un singur main care sa fie deasupra la orice altceva Deasemenea incearca sa faci update la sscanf/streamer si sa pui Whirpool ultimu(in caul in care il ai) Edit: incearca sa ai main de forma main(){ }
  22. Quick search pe google cu eroare si am gasit, ca sa vezi, rezolvarea http://forum.sa-mp.com/showthread.php?t=320382 Iti lipseste main() {} din gm
  23. Imposibil. Ori nu s-a salvat server.cfg ori nu iti recunoaste linia despre plugins pentru ca sigur din acel serverlog reiese faptul ca nu ai linia plugins
  24. Problema ta este faptul ca vectorul tau BikersStunt trebuie sa fie 2D in nici un caz 1D si ar trebui sa fie: new BikersStunt[marime index][stuntB] Si in functie de fiecare index va contine informatiile de care ai nevoie desi dupa cum vad eu treaba marimea indexului ar trebui sa fie 1 si sa folosesti numa indexu 0(pentru ca datele tale din enum sunt repetitive in loc sa fie numa una si sa stochezi in indexi diferiti, dar nu ma bag, sistemu tau)
  25. Iti trebuie mysql r40+ sau poti sa il treci pe r39 doar schimband niste functii Edit: sau ia garage.pwn din folderu r39 si nu r40+
×
×
  • 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.