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
  • Hallo Liebe Breadfish Community,
    ich habe folgendes Problem undzwar wird mir durchgehend dieser Error angezeigt:


    error 032: array index out of bounds (variable "BInfo")
    Und das im Rahmen von diesem Code hier:


    public BlackMail(playerid, frk, biz)
    {
    new msg[256];
    if(!PlayerToPoint(33.0, playerid, BInfo[biz][BInfoX], BInfo[biz][BInfoY], BInfo[biz][BInfoZ]))
    {
    KillTimer(BInfo[biz][blmtimer]);
    BInfo[biz][blackmailing] = 0;
    PInfo[playerid][blackmail] = 0;
    if(BInfo[biz][erpresser] != 0)
    {
    format(msg, 256, "*** Deine Gang hat das BIZ "%s" verteidigt. (Der Erpresser ist abgehauen)!!!", BInfo[biz][BName]);
    for(new i = 0; i < MXP; i++)
    if(PInfo[i][fraction] == BInfo[biz][erpresser])
    SendClientMessage(i, CL_YELLOW, msg);
    }
    format(msg, 256, "*** Deine Gang ist beim Übernehmen des BIZ "%s" gescheitert. (Der Erpresser ist abgehauen)!!!", BInfo[biz][BName]);
    for(new i = 0; i < MXP; i++)
    if(PInfo[i][fraction] == frk)
    SendClientMessage(i, CL_YELLOW, msg);
    FRInfo[BInfo[biz][erpresser]][infight] = 0;
    FRInfo[frk][infight] = 0;
    } else if(BInfo[biz][blackmailing] != 8)
    {
    if(BInfo[biz][erpresser] != 0)
    {
    format(msg, 256, "*** Die Gang %s versucht das von deiner Gang erpresste BIZ "%s" zu übernehmen!!! (noch %d Minuten)", frak_names[frk], BInfo[biz][BName],
    7-BInfo[biz][blackmailing]);
    for(new i = 0; i < MXP; i++)
    if(PInfo[i][fraction] == BInfo[biz][erpresser])
    SendClientMessage(i, CL_YELLOW, msg);
    }
    format(msg, 256, "*** Deine Gang versucht das BIZ "%s" zu übernehmen!!! (noch %d Minuten)", BInfo[biz][BName],
    7-BInfo[biz][blackmailing]);
    for(new i = 0; i < MXP; i++)
    if(PInfo[i][fraction] == frk)
    SendClientMessage(i, CL_YELLOW, msg);
    BInfo[biz][blackmailing]++;
    } else {
    format(msg, 256, "*** Deine Gang hat das BIZ "%s" an die Gang %s verloren!!!", BInfo[biz][BName], frak_names[frk]);
    for(new i = 0; i < MXP; i++)
    if(PInfo[i][fraction] == BInfo[biz][erpresser] && BInfo[biz][erpresser] != 0)
    SendClientMessage(i, CL_YELLOW, msg);
    format(msg, 256, "*** Deine Gang hat das BIZ "%s" übernommen!!!", BInfo[biz][BName]);
    for(new i = 0; i < MXP; i++)
    if(PInfo[i][fraction] == frk)
    SendClientMessage(i, CL_GREEN, msg);
    FRInfo[BInfo[biz][erpresser]][infight] = 0;
    FRInfo[frk][infight] = 0;
    BInfo[biz][blackmailing] = 0;
    PInfo[playerid][blackmail] = 0;
    BInfo[biz][erpresser] = frk;
    KillTimer(BInfo[biz][blmtimer]);
    }
    return 1;
    }


    Weiß einer von euch vielleicht was da falsch sein könnte?

    Entdecke einen neuen Reallife - Server mit Qualität!


    Forum: http://xenon-rl.de/
    Server - IP: 87.98.244.35:7778
    Teamspeak³ IP: ts.sheriff3.de

  • BInfo ist bei mir ein Enum für die ganzen Biz es und der Fehler wird mir überall in diesem Codeschnipsel angezeigt wo BInfo vorkommt.


    BInfo:
    enum Biz
    {
    BName[255],
    Float:BEnterX,
    Float:BEnterY,
    Float:BEnterZ,
    Float:BInfoX,
    Float:BInfoY,
    Float:BInfoZ,
    Float:BBuyX,
    Float:BBuyY,
    Float:BBuyZ,
    BType,
    BEnterPickup,
    BExitPickup,
    BInfoPickup,
    BCash,
    BPrice,
    BBuyPickup,
    PPP,// Price per piece
    BOwner[MAX_PLAYER_NAME],
    BPIS,// Pieces in stock
    Float:PPPT, //Price per piece Trucker
    erpresser,
    blackmailing,
    blmtimer
    };
    new BInfo[MAX_BIZ][Biz];

    Entdecke einen neuen Reallife - Server mit Qualität!


    Forum: http://xenon-rl.de/
    Server - IP: 87.98.244.35:7778
    Teamspeak³ IP: ts.sheriff3.de

  • Max Biz ist mit 50 definiert, also
    #define MAX_BIZ 50


    //edit:
    Habe jetzt gerade mal MAX_BIZ höher gestellt und bekomme nun nur paar warnings undzwar:
    warning 219: local variable "biz" shadows a variable at a preceding level
    symbol is assigned a value that is never used: "biz"


    local variable "biz" shadows a variable at a preceding level



    und das in den Zeilen:
    new biz = PInfo[playerid][blackmail], msg[256];
    if(BInfo[biz][erpresser] != 0)


    und in den ersten zeilen meines Publics BlackMail was ich ganz oben stehen habe

    Entdecke einen neuen Reallife - Server mit Qualität!


    Forum: http://xenon-rl.de/
    Server - IP: 87.98.244.35:7778
    Teamspeak³ IP: ts.sheriff3.de

    Einmal editiert, zuletzt von <Kowalski> ()