Else If error -.-

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 bin gerade dabei ein Job mit Skills i.wie zusammen zubasteln :D nur bekomm ich bei else if ein Error.


    PS: Nicht wundern ich bin noch mitten drin am Basteln deswegen leuft das Testweise auch noch über Detektiv skill :D



    Hier die Errors :


    (29656) : error 029: invalid expression, assumed zero
    warning 215: expression has no effect
    error 001: expected token: ";", but found "if"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.



    Und der Error ist in dieser Zeile :


    else if(level >= 0 && level <= 100)
    {



    Und Hier mal alles :


    if(!strcmp("/starttrucker",cmdtext,true))
    {
    if(PlayerInfo[playerid][pJob] != 16)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    return 1;
    }
    new level = PlayerInfo[playerid][pDetSkill];
    if(level >= 220)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre damit dann zum Hafen um die Ladung abzuholen!");
    SendClientMessage(playerid,COLOR_WHITE,"Es befindet sich eine Markierung auf der Karte.");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    //}
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    return 1;
    }
    else if(level >= 0 && level <= 100)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"HAHAH GEIL ES FUNKT");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    //}
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    return 1;
    }
    return 1;
    }

  • Hier, so musst du deinen Command schreiben:



    if(strcmp(cmdtext, "/starttrucker", true) == 0)
    {
    if(PlayerInfo[playerid][pJob] != 16) return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    new level = PlayerInfo[playerid][pDetSkill];
    if(level >= 220)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre damit dann zum Hafen um die Ladung abzuholen!");
    SendClientMessage(playerid,COLOR_WHITE,"Es befindet sich eine Markierung auf der Karte.");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    }
    if(level >= 0 && level <= 100)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"HAHAH GEIL ES FUNKT");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    }
    return 1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


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

  • Danke Kaliber für deine Antwort :)


    Nur ein Problem ist noch da ich hatte es schon so ähnlich probiert nur wenn ich jetzt z.B in einen Transporter sitze und /starttrucker eingebe kommt dein Skill ist nicht Hochgenug .. obwohl ich es so gemacht habe das Transporter ab den Skill zufahren ist nur der LKW halt nicht :/.



    Hier mal den code ich hatte den vohin nochmal verändert damit das mit den Transportern geht tuts nur leider nicht :/




    if(strcmp(cmdtext, "/starttrucker", true) == 0)
    {
    if(PlayerInfo[playerid][pJob] != 16) return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    new level = PlayerInfo[playerid][pDetSkill];
    if(level >= 220)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre damit dann zum Hafen um die Ladung abzuholen!");
    SendClientMessage(playerid,COLOR_WHITE,"Es befindet sich eine Markierung auf der Karte.");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    }
    if(level >= 0 && level <= 100)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsATruck2(GetPlayerVehicleID(playerid)))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"HAHAH GEIL ES FUNKT");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist in keinen Transporter!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    }
    return 1;
    }

  • Probiere es mal so:



    if(strcmp(cmdtext, "/starttrucker", true) == 0)
    {
    if(PlayerInfo[playerid][pJob] != 16) return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    new level = PlayerInfo[playerid][pDetSkill];
    if(level >= 220)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre damit dann zum Hafen um die Ladung abzuholen!");
    SendClientMessage(playerid,COLOR_WHITE,"Es befindet sich eine Markierung auf der Karte.");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else if(level >= 0 && level <= 100)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsATruck2(GetPlayerVehicleID(playerid)))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"HAHAH GEIL ES FUNKT");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist in keinen Transporter!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    }
    return 1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


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

  • I.wie klappt es nun nicht mehr so wie es soll :( Wenn man nun in ein LKW Einsteigt und /starttrucker eingibt kommt der Text : Du bist in keinen Transporter.


    Ich kann mir das garnicht erklären .. da eig else if(level >= 0 && level <= 100) und if(level >= 220) 2 verschiedene Sachen sind ..



    Normaler weise sollte da stehen dein Skill ist nicht hoch genug. :(



    Mfg

  • Probiers mal so
    if(strcmp(cmdtext, "/starttrucker", true) == 0){
    if(PlayerInfo[playerid][pJob] != 16) return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    new level = PlayerInfo[playerid][pDetSkill];
    if(level >= 220)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre damit dann zum Hafen um die Ladung abzuholen!");
    SendClientMessage(playerid,COLOR_WHITE,"Es befindet sich eine Markierung auf der Karte.");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else if(level >= 0 && level <= 100)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1407.4365,-1649.2521,13.0996))
    {
    if(IsATruck2(GetPlayerVehicleID(playerid)))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"HAHAH GEIL ES FUNKT");
    SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    leer[playerid] = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    }
    }
    else if(!GetPlayerVehicleID(playerid) == IsATruck)//Also wenn er nicht in einem Truck ist
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist in keinen Transporter!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GRAD1,"Dein Skill ist für dieses Fahrzeug noch nicht Hochgenug.");
    }
    return 1; }

    La Cosa Nostra ♥

  • Da bekomm ich ein Error :



    error 076: syntax error in the expression, or invalid function call
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Bei :


    else if(!GetPlayerVehicleID(playerid) == IsATruck)//Also wenn er nicht in einem Truck ist

  • Da bekomm ich auch ein Error undzwar :



    error 017: undefined symbol "GetPlayerVehicleId"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.



    EDIT: Mit else if(!IsATruck2(GetPlayerVehicleID(playerid))) gehts .. wenn ich mich jedoch im Game einlogge und in einen Truck sitze kommt wieder das selbe du bist in keinen Transporter obwohl kommen müsste dein Skill ist nicht Hoch genug für dieses Fahrzeug -.-




    EDIT2: Wenn ich den skill jedoch über 200 mache kommt nicht das ich in ein Transporter sein muss und die Mission startet .. Das könnte man jetzt eventuell durch eine andere Message ändern jedoch Soll if(IsATruck2(GetPlayerVehicleID(playerid))) Ja abfragen ob der Spieler in ein Transporter ist .. tut er aber nicht ich kann auch ohne ein Transporter /starttrucker eingeben :/