Jump to content

NERS

Membru
  • Posts

    77
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by NERS

  1. Acum 5 minute, Luca Gipsy a spus:

        for(new c; c < 17; c++) CarInfo[i][cComponents][c] = 0; 

     

    Accessing element at index 501 past array upper bound 499 

    scrie ca sare peste 499. care poate fii si in baza de date. 

     

    Nu ma mai coup pe partea de script pawn de un timp lung dar din cate imi amintesc 

    Nu este de la ea, am comentat-o si primesc erori la urmatoarea linie si tot asa

  2. Salut, am incercat sa fac un sistem de vehicule personale si am intampinat aceasta eroare in consola cand dau /q, are cineva idee de ce?

    [debug] Run time error 4: "Array index out of bounds"
    [debug]  Accessing element at index 501 past array upper bound 499
    [debug] AMX backtrace:
    [debug] #0 0007ae44 in public ppb_OnPlayerDisconnect (playerid=0, reason=1) at gm.pwn:4954
    [debug] #1 00024de8 in ?? (... <2 arguments>) at C:\GTA San Andreas\Gamemode\pawno\include\playerprogress.inc:135
    [debug] #2 0001b410 in public SSCANF_OnPlayerDisconnect (playerid=0, reason=1) at C:\GTA San Andreas\Gamemode\pawno\include\YSI\y_hooks/impl.inc:682
    [debug] #3 00003968 in public Itter_OnPlayerDisconnect (playerid=0, reason=1) at C:\GTA San Andreas\Gamemode\pawno\include\sscanf2.inc:260
    [debug] #4 000028f0 in public OnPlayerDisconnect (playerid=0, reason=1) at C:\GTA San Andreas\Gamemode\pawno\include\YSI\y_iterate.inc:909
    [part] NERS has left the server (0:1)

     

    Iteratorii arata asa:

    #undef MAX_PLAYERS

    #define MAX_PLAYERS 50

    #define MAX_PLAYER_PERSONAL_VEHICLES  10
    #define MAX_PLAYERS_PERSONAL_VEHICLES MAX_PLAYERS * MAX_PLAYER_PERSONAL_VEHICLES 

    Iterator: TotalPersonalVehicles<MAX_PLAYERS_PERSONAL_VEHICLES>,
    IteratorArray: PersonalVehicles[MAX_PLAYERS]<MAX_PLAYERS_PERSONAL_VEHICLES>,

     

    Loop-ul cu probleme:

        foreach(i : PersonalVehicles[playerid]) {
               for(new c; c < 17; c++) CarInfo[i][cComponents][c] = 0; //asta este linia unde primesc eroare

               if(CarInfo[i][cSpawned] != INVALID_VEHICLE_ID) DestroyVehicleEx(CarInfo[i][cSpawned]);
              CarInfo[i][cUserid]       = INVALID_PLAYER_ID;
            CarInfo[i][cSpawned]      = INVALID_VEHICLE_ID;
            CarInfo[i][cDespawnTime]  = 0;

            CarInfo[i][cOwner]         = (EOS);
            CarInfo[i][cPlate]          = (EOS);

            CarInfo[i][cID]                 = 0;
            CarInfo[i][cModel]            = 0;
            CarInfo[i][cFuel]            = 0;
            CarInfo[i][cAge]           = 0;
            CarInfo[i][cColorOne]     = 0;
            CarInfo[i][cColorTwo]     = 0;
            CarInfo[i][cInsurance]    = 0;
            CarInfo[i][cPaintjob]     = 0;
            CarInfo[i][cVirtualWorld] = 0;
            CarInfo[i][cInterior]     = 0;

            CarInfo[i][cLocationx]    = 0;
            CarInfo[i][cLocationy]    = 0;
            CarInfo[i][cLocationz]    = 0;
            CarInfo[i][cAngle]           = 0;
            CarInfo[i][cKM]                = 0;

            CarInfo[i][cLock]            = false;      

            Iter_SafeRemove(TotalPersonalVehicles, i, i);
            Iter_SafeRemove(PersonalVehicles[playerid], i, i);
        }

  3. Nu stiu cum sa explic asta foarte bine, dar cum pot sa fac de exemplu o comanda /top care iti arata top 10 jucatori cu cele mai multe ucideri?

    Adica, sa zicem ca avem urmatorii jucatori:

    Player1 (id 0) - 500 kills

    Player2 (id 1) - 3 kills

    Player3 (id 2) - 43 kills

    Cu foreach(new i : Player) va arata fiecare jucator dupa ID, dar cum pot sa arat in functie de ucideri? adica asa:

    Player1 (id 0) - 500 kills

    Player3 (id 2) - 43 kills

    Player2 (id 1) - 3 kills

    stiu ca este posibil cu baza de date folosind "SELECT `Name` FROM `users` ORDER BY `Kills` DESC LIMIT 10" (sau ceva asemanator nu mai stiu sigur), dar este cumva posibil fara mysql?

  4. La 18.02.2021 la 13:08, khain.dev a spus:

    Ai un bug deja delimitat, nu poti folosi cuvinte lungi, ceea ce trebuie fixat.

    Chiar daca cnva castiva ceea ce ai introdus tu acolo, nu are loc stocarea datelor, practic ce a castigat el, dupa restart dispare.

    SendError, SCMATEx etc. functii stabilite doar in GM-ul tau, iti recomand ca cand faci un tutorial, sa folosesti functiile clasice pentru a fi pe intelesul tuturor

    Ca idee e perfect, dar mai ai de muncit la el cu toate ca e un fast event

    ok, mersi de sugestii!

    legat de stocarea datelor, nu am pus update la bani pentru ca am facut sa se actualizeze automat la stock giveplayercash, am scris asta la inceputul clipului dar acum daca stau sa ma gandesc mai bine lasam mai mult text-ul ala ca era destul de mare

    si la ce te referi cand zici 'cuvinte lungi'? text-ul l-am facut de 32 caractere intentionat dar poti pune cat vrei

  5. Acum 8 ore, Khain Developer a spus:

    Pentru staruinta, ai un + 

    Ca recomandare,

    1. Ai putea trece la o noua versiune de MySQL ( R41+ ) asta iti ofera un cod mai optimizat, noi functii, viteza de procesare redusa

    2. Treci la Pawn.CMD, noi functii + viteza de procesare  ( cu YCMD la +200 player, ai freeze 1 secunda, nu mai vorbesc de strcmp )

    v43AinV.png.457d113e314789f789b4eee45fd4b9df.png

     

    *Ce tine de cod, ai un cod destul de optimizat :)

     

    ms de sugestii :)

    raspund si eu aci ca si eu lucrez pe gm asta

    • Like 1
  6. new PlayerText: BoxSpeedo[3];

    schimbi codul primului textdraw cu asta:

        BoxSpeedo[0] = CreatePlayerTextDraw(playerid, 556.500000, 357.562500, "box");
        PlayerTextDrawLetterSize(playerid, BoxSpeedo[0], 0.000000, 0.849997);
        PlayerTextDrawTextSize(playerid, BoxSpeedo[0], 0.000000, 138.000000);
        PlayerTextDrawAlignment(playerid, BoxSpeedo[0], 2);
        PlayerTextDrawColor(playerid, BoxSpeedo[0], -1);
        PlayerTextDrawUseBox(playerid, BoxSpeedo[0], 1);
        PlayerTextDrawBoxColor(playerid, BoxSpeedo[0], 255);
        PlayerTextDrawSetShadow(playerid, BoxSpeedo[0], 0);
        PlayerTextDrawBackgroundColor(playerid, BoxSpeedo[0], 255);
        PlayerTextDrawFont(playerid, BoxSpeedo[0], 1);
        PlayerTextDrawSetProportional(playerid, BoxSpeedo[0], 1);

    • Upvote 1
×
×
  • 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.