-
Posts
1.123 -
Joined
-
Last visited
-
Days Won
97
Content Type
Profiles
Forums
News
Documentation
Everything posted by Banditul
-
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];
-
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
-
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() { }
-
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; }
-
Linia ar trebuie sa provina din functia ShowPlayerVehicle nu din alta functie/locatie. Eroarea ta se produce in functia ShowPlayerVehicle
-
Linia 12393 este problema. Arat-o
-
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"
-
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)
-
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
-
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
-
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
-
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;
-
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
-
Ce sunt ? jtext ttext Sau mai bine zis, cum sunt formatate/ce contin. Pentru ca din ce vad le folosesti la job si faction
-
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
-
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
-
Ai fi surprins cati "scripteri" accepta o functie ca compensatie pentru munca depusa
-
Nu. Codul nu poate afecta incarcarea unui plugin mai ales ca daca pluginul nu se incarca codul tau oricum nu e rulat
-
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)
-
Nu. Sistemul de operare la host e centos 7 nu vad de ce ai folosi un plugin facut pentru debian
-
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
-
pSlot din interiorul enum PlayerInfo nu sa creezi o noua variabila pSlot
-
#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
-
"array must be indexed(variable "pSlot")" pSlot // nu array = nu index pSlot[MAX_SLOTS] // array = index
