Problem mit mein Fahrrad Spawner

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 Community
    Ich habe ein Problem wenn ich ein Fahrrad spawnen will
    da kommt immer der Dialog und wenn ich schon ein Fahrrad habe und nocheinmal auf ja klicke krieg ich noch eins pls help hier der Code
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(newkeys == KEY_FIRE)
    if(IsPlayerInRangeOfPoint(playerid,1.0,1705.6857,-1898.7067,13.5688))
    if(fahrradausleih == 1)return SendClientMessage(playerid,error,"Du hast schon ein Fahrrad!");
    {
    ShowPlayerDialog(playerid,DIALOG_FAHRRAD,DIALOG_STYLE_MSGBOX,"Fahrrad","Willst du ein Fahrrad ?","Ja","Nein");
    }
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_FAHRRAD)
    {
    if(response==1)
    {
    Fahrrad = CreateVehicle(481,1697.8386,-1864.1659,13.5576,84.4786,0,0,0);
    PutPlayerInVehicle(playerid,Fahrrad,0);
    SendClientMessage(playerid,Orange,"Du hast ein Fahrrad bekommen.Wir werden es uns in 30 Minuten zurückhohlen!");
    fahrradausleih = 1;
    SetTimer("Fahrrad",18000000,false);
    }
    if(response==0)
    {
    return 1;
    }
    }
    return 1;
    }


    public Fahrradtimer (playerid)
    {
    DestroyVehicle(Fahrrad);
    SendClientMessage(playerid,error,"Wir haben uns das Fahrrad zurückgehollt. Vielen Dank und Viel Spass noch.");
    return 1;
    }

    2 Mal editiert, zuletzt von Call_me ()

  • Wenn du für den Spieler die variabel setzen möchtest benötigst du ein array.


    new bool:fahrradausleih [MAX_PLAYERS char];


    if(fahrradausleih{playerid})


    das gilt auch für die fahrzeuge


    dennoch ist es komisch das du immer wieder ein fahrrad bekommst da du die variabel auf 1 setzt;
    setzt du diese variabel ihrgend wo im skript wieder auf 0 , wenn ja wo

  • ja kanns oben wo ich new gemacht habe
    und wenn die 30 mins um sind


    Also ich kann mir , das nicht vorstellen da ich hier kein fehler sehe warum sicher der wert der variabel wieder zurück ändert zu dem hast du noch vergessen
    nach dem ablauf des timers die variabel wieder auf 0 zu setzen. Als auch die bezeichnung des Timers ist falsch und um den parameter playerid zu nutzen musst SetTimerEx verwenden.


    zu dem ordne mein deine abfrage sinn gemäß


    if(newkeys == KEY_FIRE){
    if(IsPlayerInRangeOfPoint(playerid,1.0,1705.6857,-1898.7067,13.5688)){
    if(fahrradausleih)return SendClientMessage(playerid,error,"Du hast schon ein Fahrrad!");
    ShowPlayerDialog(playerid,DIALOG_FAHRRAD,DIALOG_STYLE_MSGBOX,"Fahrrad","Willst du ein Fahrrad ?","Ja","Nein");
    }
    }