Array index out Of Bounds ?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Schönen guten Abend liebe Com,


    ich habe folgendes Problem beim aussteigen aus dem Taxi beim Fahrgast.
    Und zwar wird zwar das Taxometer deletet aber beim Taxifahrer passiert nicht viel,
    und mein Geld wird auch nicht abgezogen.


    new pID = GetVehicleDriver(playerid);
    Spieler[playerid][Fahrtzielx] = 0;
    Spieler[playerid][Fahrtziely] = 0;
    Spieler[playerid][Fahrtzielz] = 0;
    Spieler[playerid][TaxiPassenger] = 0;
    RemovePlayerFromVehicle(playerid);
    SetPMoney(playerid,GetPMoney(playerid)-Spieler[playerid][TaxiFahrtkosten]);
    TextDrawHideForPlayer(playerid,TaxoBox);
    TextDrawHideForPlayer(playerid,TaxoBox1);
    TextDrawHideForPlayer(playerid,Taxometer);
    PlayerTextDrawHide(playerid,TaxoFahrer[playerid]);
    PlayerTextDrawHide(playerid,TaxoKosten[playerid]);
    PlayerTextDrawHide(playerid,TaxoZeit[playerid]);
    Spieler[pID][TStatus] = 0;
    UpdateTaxiLabel(pID,GetPVarInt(pID,"Taxiid"));
    DisablePlayerCheckpoint(playerid);
    DisablePlayerCheckpoint(pID);
    Spieler[pID][HatFahrgast] = 0; <--------------- Das ist die Zeile..


    definiert habe ich das in einem Enum .. Ob der zu groß sein kann Keine Ahnung ^^


    [18:40:17] [debug] Run time error 4: "Array index out of bounds"
    [18:40:17] [debug] Accessing element at index 65535 past array upper bound 499
    [18:40:17] [debug] AMX backtrace:
    [18:40:17] [debug] #0 00043408 in public OnPlayerExitVehicle (playerid=8, vehicleid=13) at C:\Users\Kevin\Desktop\IRP MySQL\gamemodes\MySQL.pwn:5892


    Wo liegt bitte der Fehler ?

  • Scheint das GetVehicleDriver INVALID_PLAYER_ID also 65535 zurück gibt, aber wäre dies der fall würde die Meldung früher erscheinen ...


    Wie sieht denn deine GetVehicleDriver funktion aus ?


    GetVehicleDriver(playerid); -> Vielleicht GetVehicleDriver(vehicleid); ... ?


    Jop das habe ich grade auch festellen müssen ^^ Danke trotzdem 8)