Fehler mit enum abfrage

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
  • Hey leute ich habe ein kleines Problem undzwar kann ich als LSPD frakid 2 auf die Waffenkammer zugreifen aber als FBI kann ich nicht auf sie zugreifen dann bekomme ich die Meldung du befindest dich an keiner Waffenkammer



    ocmd:waffenkammer(playerid,params[])
    {
    for(new i=0;i<sizeof(wInfo);i++)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,wInfo[i][I_X],wInfo[i][I_Y],wInfo[i][I_Z])) return SendClientMessage(playerid,INFO,"Du bist an keiner Waffenkammer!");
    {
    if(GetPVarInt(playerid,"Fraktion") == wInfo[i][W_F])
    {
    switch (GetPVarInt(playerid,"Fraktion"))
    {
    case 2: ShowPlayerDialog(playerid,20, DIALOG_STYLE_LIST, "{FF8080}WAFFENKAMMER-LSPD","Desert Eagle\nSchrotflinte\nMP5\nM4\nSchlagstock\nWeste\nFunkgerät","Wählen", "");
    case 3: ShowPlayerDialog(playerid,21, DIALOG_STYLE_LIST, "{FF8080}WAFFENKAMMER-FBI","Desert Eagle\nM4\nMP5\nSniper\nWeste\nStarke Weste\nFunk","Wählen", "");
    }
    return 1;
    }
    else SendClientMessage(playerid,INFO,"Du kannst dieses Waffenkammer nicht benutzen!");
    }
    }
    return 1;
    }


    enum WAFFENKAMMER{
    Name[64],
    model,
    Float:I_X,
    Float:I_Y,
    Float:I_Z,
    W_F
    }



    new wInfo[][WAFFENKAMMER] = {
    {"Waffenkammer LSPD\n{FF807F}'/waffenkammer'",2061,1563.7622,-1694.1790,16.2705,2},
    {"Waffenkammer FBI\n{FF807F}'/waffenkammer'",2061,1865.3834,-1774.6030,-9.1702,3}
    };

  • Versuch mal die 5 bei dem IsPlayerInRangeOfPoint in eine 5.0 zu ändern.

    Das macht keinen Unterschied, der Fehler ist ein Logik Fehler.


    Schauen wir uns das mal an:


    C
    new test[] = {1,2,3};
    for(new i; i<sizeof(test); i++)
    {
        if(test[i] != 3) return;
        print("Hallo :)");
    }


    Hallo wird niemals aufgerufen.
    Das liegt daran, dass er direkt bei dem ersten Eintrag rausgeht, anstatt alle zu durchlaufen und dann erst zu sagen, dass es nicht existiert :)


    Genau so ist das auch bei dir.


    Richtig wäre:



    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S