Fehler bei PLAYER_STATE_DRIVER

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
  • Ich habe folgendes gemacht:


    Unter: OnPlayerEnterVehicle


    if(GetVehicleModel(vehicleid) == 462)
    {
    new newstate = GetPlayerState(playerid); // Stats
    if(newstate == PLAYER_STATE_DRIVER) //Fahrer?
    {
    ShowPlayerDialog(playerid, DIALOG_RENTROLLER, DIALOG_STYLE_MSGBOX, "Rollervermietung", "Möchtest du diesen Roller für 5$ mieten?","Ja","Nein");
    }
    }


    Doch jetzt wird der Dialog nicht angezeigt. Ich möchte nur, das einem als Fahrer der Dialog gezeigt wird, wie mache ich das?


    Danke im Voraus. :)

  • Dafür müsstest du den Sitzplatz abfragen.
    Ich empfehle dir jedoch für die Funktion "OnPlayerStateChange".
    Dort kannst du dann mit


    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(GetPlayerVehicleID(playerid) == 462)
    ShowPlayerDialog(playerid, DIALOG_RENTROLLER, DIALOG_STYLE_MSGBOX, "Rollervermietung", "Möchtest du diesen Roller für 5$ mieten?","Ja","Nein");
    }


    arbeiten

    KleineHilfe 2.0


  • so eher:
    erst vehicleid mit GetPlayerVehicleID holen und diese dann in GetVehicleModel verwenden :rolleyes:
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 462)
    ShowPlayerDialog(playerid, DIALOG_RENTROLLER, DIALOG_STYLE_MSGBOX, "Rollervermietung", "Möchtest du diesen Roller für 5$ mieten?","Ja","Nein");
    }
    unter OnPlayerStateChange

  • Ok, danke und wie mache ich das hier?


    new modelid = GetVehicleModel(vehicleid);
    if(modelid == 462 || modelid == 509 || modelid == 481 || modelid == 510)
    {


    }
    else
    {


    new newstate = GetPlayerState(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(sSpieler[playerid][Autoschein] == 0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Du hast noch keinen Führerschein!");
    RemovePlayerFromVehicle(playerid);
    new Float:xa, Float:ya, Float:za, Float:zaa;
    GetPlayerPos(playerid, xa, ya, za);
    GetPlayerFacingAngle(playerid, zaa);
    SetPlayerPos(playerid, xa, ya, za+1);
    SetPlayerFacingAngle(playerid, zaa);
    }
    }
    }