Array Fehler - error 033

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
  • Guten Morgen!


    Ich wollte gerade meine Charaktere in verschiedene Gruppen aufteilen (per Array), als ich beim Compilen diese/n Fehler bemerkte:


    Zitat

    C:\xs.pwn(36) : error 010: invalid function or declaration
    C:\xs.pwn(170) : error 033: array must be indexed (variable "SkinObdachloser")

    Zeile 36:
    // Skinids
    new SkinObdachloser[7];
    SkinObdachloser[0] = 134;
    SkinObdachloser[1] = 137;
    SkinObdachloser[2] = 181;
    SkinObdachloser[3] = 212;
    SkinObdachloser[4] = 239;
    SkinObdachloser[5] = 230;
    SkinObdachloser[6] = 213;


    Zeile 170:
    if(SkinObdachloser == pSkin)
    {
    GivePlayerWeapon(playerid,341,1);
    }
    Die Variable "pSkin" ist bereit fehlerfrei definiert!


    Leider bekomme ich, egal welchem Tutorial ich folge, die/den gleichen Fehler.


    Ich hoffe jemand kann mir helfen!
    MfG

  • if(SkinObdachloser[0] == pSkin) {
    GivePlayerWeapon(playerid,341,1);
    }
    else if(SkinObdachloser[1] == pSkin) {
    GivePlayerWeapon(playerid,341,1);
    }
    // etc


    Oder du machst es so
    for(new i;i<sizeof(SkinObdachloser);i++) {
    if(SkinObdachloser[i]==pSkin) {
    GivePlayerweapon(playerid,341,1);
    break;
    }
    }

  • Hab das erste Problem wohl überlesen.
    new SkinObdachloser[7]= {
    134,
    137,
    181,
    212,
    239,
    230,
    213
    };

    Die Zuweisung müsstest du zB. in OnGameModeInit() machen falls du es bei deiner Methode belassen möchtest.
    public OnGameModeInit(){
    SkinObdachloser[0] = 134;
    SkinObdachloser[1] = 137;
    SkinObdachloser[2] = 181;
    SkinObdachloser[3] = 212;
    SkinObdachloser[4] = 239;
    SkinObdachloser[5] = 230;
    SkinObdachloser[6] = 213;
    //
    return 1;
    }