array must be indexed (variable "gzn")

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, ich habe ein problem, ich bekomme den error nicht weg.



    #define MAX_GANGZONE 10


    enum gangname
    {
    baustelle,
    supermarkt,
    gartencenter,
    wohngeb,
    hitmangarage,
    uni,
    muelldepo,
    bergfarm,
    fleischberg
    };
    enum gangzonedata
    {
    gangzBesitzer,
    gangzFarbe,
    gangzDrogen,
    gangzMats,
    gangzGeld
    };
    new Gangzone[gangname];
    new Gangzoneinfo[gangname][gangzonedata];


    stock GangzoneNameByID(gangzoneid)
    {
    new gangzonename[128];
    switch(gangzoneid)
    {
    case 0: {gangzonename = "baustelle";}
    case 1: {gangzonename = "supermarkt";}
    case 2: {gangzonename = "gartencenter";}
    case 3: {gangzonename = "wohngeb";}
    case 4: {gangzonename = "hitmangarage";}
    case 5: {gangzonename = "uni";}
    case 6: {gangzonename = "muelldepo";}
    case 7: {gangzonename = "bergfarm";}
    case 8: {gangzonename = "Äfleischberg";}


    }
    return gangzonename;
    }


    public OnPlayerSpawn(playerid)
    {
    for(new i; i<MAX_GANGZONE;i++)
    {
    new gzn[128];
    gzn = GangzoneNameByID(i);
    GangZoneShowForPlayer(playerid, Gangzone[gzn], Gangzoneinfo[Gangzone[gzn]][gangzFarbe]);//Hier ist der error
    }
    return 1;
    }


    error 033: array must be indexed (variable "gzn")


    Bitte um hilfe



  • Bin mir nicht ganz sicher versuchs einfach mal

  • Ich habs... ein moment


    for(new i; i<MAX_GANGZONE;i++)
    {
    new gzn[128];
    gzn = GangzoneNameByID(i);//Du schreibst in gzn den Namen der Gangzone
    GangZoneShowForPlayer(playerid, Gangzone[gzn], Gangzoneinfo[Gangzone[gzn]][gangzFarbe]);//Hier: Gangzone[gzn] erstellst du eine gangzone und zwar die zone gzn. gzn ist aber ein Name das ding verlangt eine Nummer
    }


    Du musst das komplett überarbeiten was möchstest du denn machen ? eigentlich dem Spieler nur alle Gangzonen anzeigen lassen.
    Das was du hier tust ist ein Array misbrauchen denn du versuchst folgendes:
    Gangzone["Baustelle"]



    versuch das hier:
    for(new i; i<MAX_GANGZONE;i++)
    {
    GangZoneShowForPlayer(playerid, i, Gangzoneinfo[i][gangzFarbe]);
    }