Jump to content

Banditul

Moderator
  • Posts

    1.123
  • Joined

  • Last visited

  • Days Won

    97

Everything posted by Banditul

  1. new HouseInfo[100][hInfo]; //undeva in gm HouseInfo[101][hPrice]; Asta ar fi cu asta: error 032: array index out of bounds (variable "HouseInfo") Cat despre error 033: array must be indexed (variable "HouseInfo") Trebuie ca HouseInfo tau sa fie de forma new HouseInfo[100][hInfo];
  2. Toti am trecut prin asta, mai ales ca nu ne-am nascut sa stim tot. Dar uni pur si simplu refuza sa invete bazele. Nu e nimic rau sa copiezi lucruri care sunt relativ "open-source" dar problema e ca foarte multi raman in acest "loop" si nu ii mai poti scoate, degeaba le zici sa invente cand ei prefera sa dea copy-paste
  3. In gm. E o functie pe care o copiezi de unde ai copiat si comenzile. O poti pune oriunde in gm dar cu conditia sa nu se afle in interiorul altor acolade Gresit: functie { OnPlayerModelSelection() { } } Corect: functie() { } OnPlayerModelSelection() { } altafunctie() { }
  4. Problema e de la aVehicleNames[CarInfo[car][cModel]-400] Cele 9 lini care contin asta. De ce? Pentru ca CarInfo[car][cModel] E 0 sau de fapt masina chiar nu exista desi e incarcata din baza de date(ciudat nu?) O solutie ar fi sa faci asa #define IsValidVehicleModelID(%0) (400 <= (%0) <= 611) stock ShowPlayerVehicle(playerid) { new szTitle[180], szDialog[1300], szDialog2[1300], vstatus[1024]; if(GetVehicles(playerid) == 0) return SCM(playerid, COLOR_LGREEN, "Eroare: Nu ai un vehicul personal!"); format(szTitle, sizeof(szTitle), "Vehicles (%d/%d)", GetVehicles(playerid), TotalSlots(playerid)); for(new i = 0; i < 10; i++) { if(i < 5) { if(i < 3) { if(PlayerInfo[playerid][pCarKey][i] != 0) { new car = PlayerInfo[playerid][pCarKey][i]; if(!IsValidVehicleModelID(CarInfo[car][cModel])) continue; if(IsVehicleOccupied(CarInfo[car][Spawned])) format(vstatus, sizeof(vstatus), "{FFFF00}(Occupied){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); else if(CarInfo[car][Spawned] > 0) format(vstatus, sizeof(vstatus), "{26B309}(Spawned){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); else format(vstatus, sizeof(vstatus), "{FF0000}(Despawnat){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); format(szDialog, sizeof(szDialog), "%s\n", vstatus); strcat(szDialog2, szDialog); } else strcat(szDialog2, "{F3FF73}[ empty ]\n"), sVehicle[i][playerid] = 0; } else { if(PlayerInfo[playerid][pCarKey][i] != 0) { new car = PlayerInfo[playerid][pCarKey][i]; if(!IsValidVehicleModelID(CarInfo[car][cModel])) continue; if(IsVehicleOccupied(CarInfo[car][Spawned])) format(vstatus, sizeof(vstatus), "{FFFF00}(Occupied){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); else if(CarInfo[car][Spawned] > 0) format(vstatus, sizeof(vstatus), "{26B309}(Spawned){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); else format(vstatus, sizeof(vstatus), "{FF0000}(Despawnat){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); format(szDialog, sizeof(szDialog), "%s\n", vstatus); strcat(szDialog2, szDialog); } else if(PlayerInfo[playerid][pPremiumAccount] == 1) strcat(szDialog2, "{F3FF73}[ empty ]\n"), sVehicle[i][playerid] = 0; } } else { if(PlayerInfo[playerid][pCarKey][i] != 0) { new car = PlayerInfo[playerid][pCarKey][i]; if(!IsValidVehicleModelID(CarInfo[car][cModel])) continue; if(IsVehicleOccupied(CarInfo[car][Spawned])) format(vstatus, sizeof(vstatus), "{FFFF00}(Occupied){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); else if(CarInfo[car][Spawned] > 0) format(vstatus, sizeof(vstatus), "{26B309}(Spawned){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); else format(vstatus, sizeof(vstatus), "{FF0000}(Despawnat){FFFFFF} %s", aVehicleNames[CarInfo[car][cModel]-400]); format(szDialog, sizeof(szDialog), "%s\n", vstatus); strcat(szDialog2, szDialog); } else if(PlayerInfo[playerid][pSlot][i-5] == 1) strcat(szDialog2, "{F3FF73}[ empty ]\n"), sVehicle[i][playerid] = 0; } } ShowPlayerDialog(playerid, DIALOG_GARAGE, DIALOG_STYLE_LIST, szTitle, szDialog2, "Ok", "Exit"); return 1; }
  5. Linia ar trebuie sa provina din functia ShowPlayerVehicle nu din alta functie/locatie. Eroarea ta se produce in functia ShowPlayerVehicle
  6. Linia 12393 este problema. Arat-o
  7. Sa copiezi doar comanda nu face ca intreg sistemul sa functioneze. Ai ratat sa copiezi cea mai importanta parte, OnPlayerModelSelection functia care se ocupa cu "X a apasat skin Y atunci fa actiunea Z"
  8. Nu. In cazul in care serverul da crash(si ai crashdetect) erorile din serverlog au si numarul liniei unde se petrece. Nu exista nimic care sa iti arate buguri din gm. Doar gasesti bugu si citesti codul pana gasesti problema (daca exista debugger pentru samp/pawn atunci era mai usor sa indentifici probleme)
  9. Dintr-un motiv sau altul modelul masini (gen 411) e incarcat gresit sau supra scris. Pentru ca scriptul in momentul in care vrea sa iti afiseze modelul masini (infernus) scade 400 din modelul masini pentru a lua indexu de la array care contine numele masinilor. Si faptul ca zice -400 in eroare inseamna ca modelul masini e 0 in loc ds cat trebuie sa fie. Ce iti sugerez sa faci e sa faci un fisier pawn.cfg in folderul pawno sa scrii in el -d3, sa folosesti pawno sa ii dai compile si sa reproduci bugu. In momentul in care iti va da crash iar iti va oferi si linia unde e eroarea
  10. Banditul

    Panel Error

    Unknown column 'NickPlayer' in 'where clause Asta defineste intreaga problema. In baza de date pe la tabelul users/players nu ai trecut ca NickPlayer ci ceva ca username sau ce o fi Trebuie sa modifici in panel astfel incat sa se potriveasca cu baza de date
  11. Diferenta dintre += si = e uriasa. Asa ca mai bine nu inlocuieste, sa zicem ca playerul poate da de 2 ori bonus la un interval de timp, nu ar fi ok PlayerInfo[playerid][pPremiumPoints] += 500; //La fel PlayerInfo[playerid][pPremiumPoints] = PlayerInfo[playerid][pPremiumPoints] + 500; Daca PlayerInfo[playerid][pPremiumPoints] e sa zicem 100 primiti la inregistrare = ii va pune direct 500 fara sa mai tina cont de cele 100 puncte
  12. Incearca asa CREATE TABLE `rpg_tickets` ( `id` int(11) NOT NULL, `Author` text NOT NULL, `Player` text NOT NULL, `Details` text NOT NULL, `Date` datetime NOT NULL DEFAULT '1970-01-01 00:00:01' ON UPDATE CURRENT_TIMESTAMP, `Status` int(11) NOT NULL, `IP` varchar(32) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; E posibil ca hostul sa foloseasca o versiune de mysql mai mica de 5.6 care nu accepta in DATETIME sa fie default CURRENT_TIMESTAMP De asemenea ai putea face asa si e acelasi lucru CREATE TABLE `rpg_tickets` ( `id` int(11) NOT NULL, `Author` text NOT NULL, `Player` text NOT NULL, `Details` text NOT NULL, `Date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `Status` int(11) NOT NULL, `IP` varchar(32) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  13. Poti arata acel CREATE TABLE rpg_tickets din fisierul .sql? E posibil ca pe localhost sa ai MariaDB si hostu sa foloseasca MySQL(sau vice versa) si sa fie o vloare pusa gresita la default
  14. Banditul

    Bug /stats

    Ce sunt ? jtext ttext Sau mai bine zis, cum sunt formatate/ce contin. Pentru ca din ce vad le folosesti la job si faction
  15. Banditul

    Problema %n

    for (new i = 0, l = strlen(inputtext); i < l; i ++) { if (inputtext[i] == '%') { inputtext[i] = '#'; } } Pui asta la OnDialogResponse si nu mai ai probleme cu orice de genu %a %n %s etc
  16. Big facepalm
  17. Fiecare isi pun pret pe munca lui in domeniu asta. Fie bani/bunuri sau ceva virtual. Nu ii putem judeca daca asta vor O dam putin in off-topic
  18. Ai fi surprins cati "scripteri" accepta o functie ca compensatie pentru munca depusa
  19. Nu. Codul nu poate afecta incarcarea unui plugin mai ales ca daca pluginul nu se incarca codul tau oricum nu e rulat
  20. Sau poti folosi versiunea https://github.com/pBlueG/SA-MP-MySQL/releases/tag/R41-3 si sa incerci pluginu de linux-static (adica nu cred ca folosesti query din fisiere)
  21. Nu. Sistemul de operare la host e centos 7 nu vad de ce ai folosi un plugin facut pentru debian
  22. Pe langa sa folosesti https://github.com/pBlueG/SA-MP-MySQL/releases/tag/R41-4 versiunea de centos7 (pe care cel mai probabil o folosesti) nu. Daor sa le prezinti eroarea celor de la host si sa verifice ei
  23. pSlot din interiorul enum PlayerInfo nu sa creezi o noua variabila pSlot
  24. #define MAX_SLOTS 5 Nu am spus ca MAX_SLOTS il ai definit in gm, am dat un exemplu de cum ar trebui sa arate
  25. "array must be indexed(variable "pSlot")" pSlot // nu array = nu index pSlot[MAX_SLOTS] // array = index
×
×
  • 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.