Fahrrad soll nur gefahren werden vom besitzer

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
  • Guten Tag,


    und zwar wollte ich es so machen ich habe ein Befehl /fahrrad. Der "Motor" soll nur von den Befehl benutzer auf true gestellt werden, sodass die anderen Spieler nicht das Fahrrad benutzen kann.


    Beispeil.


    Spieler A macht /fahrrad er kann direkt damit fahren
    Spieler B versucht mit den Fahrrad vom Spieler A zu fahren aber es bewegt sich nicht.


    So ist mein Code bis jetzt


    ocmd:fahrrad(playerid,params[])
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1)
    {
    if(BMX[playerid] == 1)return SendClientMessage(playerid, COLOR_GRAD2, "Du hast bereits ein Fahrrad.");
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 1771.7631,-1895.7367,13.5542))
    {
    if(GetPlayerMoney(playerid) < 300)return SendClientMessage(playerid, COLOR_GRAD2, "Du benötigst 300$ um ein Fahrrad mieten zu können.");
    startbmx[playerid] = CreateVehicle(481, 1779.9451,-1886.5385,12.9055,269.2119,1,1,-1);
    //PutPlayerInVehicle(playerid, startbmx[playerid], 0);
    SendClientMessage(playerid,gruen,"Du hast dir erfolgreich ein Fahrrad gekauft.");
    PlayerMoney[playerid] -= 300;
    BMX[playerid] = 1;
    FahrradMotor[playerid] = 1;
    SetVehicleParamsEx(startbmx[playerid], true, true, false, 0, true, false, false);
    }
    else
    {
    return 1;
    }


    }
    return 1;
    }

  • Jeffry:


    Es gibt kein Motor befehl, es soll ohne Befehl funktionieren bei den Fahrrädern... Quasi soll der motor automatisch bei den Spieler angehen wenn er auf den Fahrrad ist und bei den anderen SPieler dann nicht.





    Achso, das müsste mit einen Timer gehen oder ?

  • Na dann so


    public OnPlayerStateChange(playerid, newstate, oldstate){if(newstate == PLAYER_STATE_DRIVER){ if(startbmx[playerid] == GetPlayerVehicleID(playerid)) { //Motor starten. } else { //Motor nicht starten }}}

    Funktioniert immer noch nicht.
    Andere Spieler können das Fahrrad von den Spieler fahren.
    Code:
    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(startbmx[playerid] == GetPlayerVehicleID(playerid))
    {
    SetVehicleParamsEx(startbmx[playerid], true, true, false, 0, true, false, false);
    }
    else
    {
    SetVehicleParamsEx(startbmx[playerid], false, true, false, 0, true, false, false);
    }
    }
    return 1;
    }


  • Dann mach es so

    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    if(startbmx[playerid] == GetPlayerVehicleID(playerid))
    {
    SetVehicleParamsEx(startbmx[playerid], false, true, false, 0, true, false, false);
    }
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(startbmx[playerid] == GetPlayerVehicleID(playerid))
    {
    SetVehicleParamsEx(startbmx[playerid], true, true, false, 0, true, false, false);
    SendClientMessage(playerid,-1,"An");
    }
    }
    return 1;
    }

    und beim Spawnen mach den Motor auch schon aus