newstate problem

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
  • hi comm ,


    habe ein problem unzwar hab ich gemacht das wenn man in ein police car geht rausgeschmissen wird.
    Dies passiert aber nicht stattdessen wir man von noob fahrrad geschmissen -.-.


    hier der code:

    Police[0]=AddStaticVehicleEx(596,1587.69335938,-1709.36193848,5.68562460,0.00000000,86,1,-1); //Police Car (LSPD)
    Police[1]=AddStaticVehicleEx(596,1583.27514648,-1709.63281250,5.58562422,0.00000000,86,1,-1); //Police Car (LSPD)
    Police[2]=AddStaticVehicleEx(596,1591.89965820,-1709.45935059,5.58562422,0.00000000,86,1,-1); //Police Car (LSPD)
    ......



    new carid = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(GetPlayerVehicleID(playerid) == PoliceCar(carid))
    {
    if(GetPVarInt(playerid,"Fraktion")!=1 && GetPVarInt(playerid,"Fraktion")!=3)
    {
    SendClientMessage(playerid,BLAU,"Du bist kein Beamter der Bundespolizei!");
    RemovePlayerFromVehicle(playerid);
    }
    }
    }
    ....



    public PoliceCar(carid)
    {
    for(new i = 0; i < sizeof(Police); i++)
    {
    if(carid == Police[i])
    {
    return 1;
    }
    }
    return 1;
    }

  • Erster Fehler: Überdenke mal deine Abfrage, was soll returnt werden, wenn das Auto kein PoliceCar ist?
    Tipp: Einmal sollte ja true / 1 oder false / 0 übertragen werden, du überträgst in deiner Funktion zweimal true /1.



    Tipp am Rande: Du benötigst grds. keine extra Veriable für die Vehicle ID wenn du sie nur einmal nutzt. Solltest du sie öfter nutzen, dass ist es mal in Ordnung, aber grds. funktioniert: PoliceCar(GetPlayerVehicleID(playerid)) genau so gut ^^

  • wie soll ichs nun machen habs oft ausprbiert geht nicht hätte es nun so gemacht:

    public PoliceCar(carid)
    {
    for(new i = 0; i < sizeof(Police); i++)
    {
    if(carid == Police[i])
    {
    return 1;
    }
    }
    }

  • ok danke aber er wird immernoch nicht rausgeschmissen und es wird auch nicht geschrieben dass er nich bulle is

  • if(GetPlayerVehicleID(playerid) == PoliceCar(carid))
    Welch unsinnige Abfrage, da PoliceCar() 1 oder 0 zurueckliefert und nicht die VehicleID.


    PS.:

    wie soll ichs nun machen habs oft ausprbiert geht nicht hätte es nun so gemacht:


    kan ihm einer helfen , hab das problem auch -.-


    Gemeine sache, dass der Benutzername mit den Posts mitgespeichert wird und die Namen einfach so mal eben geaendert werden koennen. Ist ein wenig verwirrend, wenn jemand erst ein Problem schreibt, dann Namen aendert und dann sagt 'kann ihm einer helfen'. lol :P

    3 Mal editiert, zuletzt von SBIKA () aus folgendem Grund: Rechtschreibung - ein paar Fehler hinzu editiert

  • steht doch oben:

    if(newstate == PLAYER_STATE_DRIVER) { if(GetPlayerVehicleID(playerid) == PoliceCar(carid)) { if(GetPVarInt(playerid,"Fraktion")!=1 && GetPVarInt(playerid,"Fraktion")!=3) { SendClientMessage(playerid,BLAU,"Du bist kein Beamter der Bundespolizei!"); RemovePlayerFromVehicle(playerid); } } }



    Fraktion 1


    //EDIT: achsooooo garnich gesehen also so?
    :
    //EDIT2
    ok
    es funzt danke sbika^^
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(PoliceCar(carid)== 1)
    {
    if(GetPVarInt(playerid,"Fraktion")!=1 && GetPVarInt(playerid,"Fraktion")!=3)
    {
    SendClientMessage(playerid,BLAU,"Du bist kein Beamter der Bundespolizei!");
    RemovePlayerFromVehicle(playerid);
    }
    }
    }


    //EDIT lol wenn ich in ein ballas car gehe kommt du bst kein atze
    du bist kein grove -.-





    Jedes car was ich betrete da kommt du bist kein Mitglied der grove.
    Du bist kein Mitglied der Aztecas

    3 Mal editiert, zuletzt von _(LittleYoda)_ ()