Fraktionscars, was ist falsch

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 liebe Community,


    ich wollte Fraktionscars scripten. Ich habe bei OnGameModeInit eine Variable erstellt.

    new lspdcar[40]; //40 wegen 40 Fraktionscars


    Dann habe ich bei OnGameModeInit die Autos eingefügt.
    Hier ist ein Beispiel:

    lspdcar[0]=SetVehicleNumberPlate(AddStaticVehicle(431,1564.1998,-1693.7444,5.9923,269.7487,55,83),"LSPD - Bus"); // pb0

    Bei den anderen habe ich statt [0] eine [1] oder [2] ... und natürlich waren die Positionen anders.


    und bei OnPlayerStateChange habe ich folgendes gemacht:

    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i=0; i<sizeof(lspdcar); i++)
    {
    if(GetPlayerVehicleID(playerid)==lspdcar[i])
    {
    if(!IsPlayerInFrakt(playerid,1))
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,Rot,"Du darfst dieses Fahrzeug nicht fahren, da du nicht in dem Beruf tätig bist.");
    }
    }
    }
    }
    return 1;
    }


    mein problem ist, das wenn ich in einer anderen Fraktion bin, alle fahrzeuge fahren kann, außer lspdcar[0]
    wenn ich in lspdcar[0] einsteige, werde ich wieder rausgeworfen und es kommen 40 mal diese eine nachricht.


    bitte helft mir
    Ich hoffe ihr habt mein Problem verstanden


    John



    //edit habe mich oben mit der zahl vertan

    Mit freundlich Grüßen
    Euer Scrubs Fan und Suchti
    JohnDorian



  • warte du hast 40 Fraktionsautos?


    Dann muss es heißen:


    new lspdcar[41];


    immer 1 mehr