[Hilfe]Fraktionsauto zu Rankauto

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
  • Anstatt Fraktionsautos möchte ich Rankautos, heißt ab PlayerScore 15.
    Umgesetzt für manche Level 15 bei mir Rank 15, darf er erst einen Panzer fahren.
    Ich bisher das hier.


    new Rank15[4];


    public OnGameModeInit()
    Rank15[0]=AddStaticVehicle(432,2591.9358,1859.4640,10.8276,0.1023,0,0); // Japan Tank 1
    Rank15[1]=AddStaticVehicle(432,2602.7625,1859.3873,10.8276,0.2382,0,0); // Japan Tank 2
    Rank15[2]=AddStaticVehicle(432,2591.8840,1789.4182,10.8276,180.8522,0,0); // Japan Tank 3
    Rank15[3]=AddStaticVehicle(432,2602.8110,1789.5580,10.8276,180.3745,0,0); // Japan Tank 4


    public OnPlayerStatChange(.....)
    /*if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(Rank15<0||3>Rank15)
    {
    if(!isPlayerAnRank(playerid,15)) return SendClientMessage(playerid,ROT,"Du besitzt nicht den nötigen Rank(15)!");
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    }*/


    Bitte um Hilfe. Hab bisher mein bestes gegeben.


    MFG Kazuto

  • Mache es so:


    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    for(new v; v<5; v++)
    {
    if(GetPlayerVehicleID(playerid) == Rank15[v])
    {
    if(!isPlayerAnRank(playerid,15))
    {
    SendClientMessage(playerid,ROT,"Du besitzt nicht den nötigen Rank(15)!");
    RemovePlayerFromVehicle(playerid);
    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

  • Beispiel:


    RankCarsJP[0]=AddStaticVehicle(432,2591.9358,1859.4640,10.8276,0.1023,0,0); // Japan Tank 1
    RankCarsJP[1]=AddStaticVehicle(432,2602.7625,1859.3873,10.8276,0.2382,0,0); // Japan Tank 2
    RankCarsJP[2]=AddStaticVehicle(432,2591.8840,1789.4182,10.8276,180.8522,0,0); // Japan Tank 3
    RankCarsJP[3]=AddStaticVehicle(432,2602.8110,1789.5580,10.8276,180.3745,0,0); // Japan Tank 4


    RankCarsJP[5]=AddStaticVehicle(425,2625.9321,1742.7864,11.4063,0.6494,0,0); // Japan Hunter 1
    RankCarsJP[6]=AddStaticVehicle(425,2608.1506,1741.9364,11.3924,0.0619,0,0); // Japan Hunter 2


    Was nun der Hunter soll ab 40 sein, muss ich das trennen?

  • Einfach so:


    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    for(new v; v<7; v++)
    {
    if(GetPlayerVehicleID(playerid) == RankCarsJP[v])
    {
    if(!isPlayerAnRank(playerid,40))
    {
    SendClientMessage(playerid,ROT,"Du besitzt nicht den nötigen Rank(40)!");
    RemovePlayerFromVehicle(playerid);
    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


  • for(new v; v<7; v++)
    Was bedeutet das, heißt das nicht das Auto 0,1,2,3,4,5,6,7 ab Rank 40 sind?
    Ich willl aber nur 6 und 7, Auto 5 ist wieder ein andere Rank und 0,1,2,3,4 sind ab Rank 15.
    Versteh das net ganz.

  • Was bedeutet das, heißt das nicht das Auto 0,1,2,3,4,5,6,7 ab Rank 40 sind?
    Ich willl aber nur 6 und 7, Auto 5 ist wieder ein andere Rank und 0,1,2,3,4 sind ab Rank 15.
    Versteh das net ganz.


    Ja, dann änder die for-Schleife halt so wie du sie brauchst :D


    mfg. :thumbup:

    ast2ufdyxkb1.png


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

  • Habe ich versucht doch leider...


    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetPlayerVehicleID(playerid) == RankCarsJP[0]<||>RankCarsJP[3])
    {
    if(!isPlayerAnRank(playerid,30))
    {
    SendClientMessage(playerid,ROT,"Du besitzt nicht den nötigen Rank(30)!");
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    }
    }


    Funktioniert es nicht ganz.


    MfG