Bufahrer Dialog buggt

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 Abend.


    Wenn ich auf mein Busfahrer Dialog ingame zugreife sagt er mir immer ich hätte keine route ausgewählt obwohl ich es nicht drin stehen habe.



    if(dialogid==DIALOG_Buslinien)
    {
    if(response)
    {
    if(listitem== 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");

    }
    if(listitem== 1)
    {
    //Busliniet2
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");

    }

    if(listitem== 2)
    {
    //Buslinie3
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }

    if(listitem== 3)
    {
    ////Buslinie 4
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }
    }
    }



    wie kann ich es nun machen wenn es nicht der Fall ist


    else
    {
    SendClientMessage(playerid,grün,"Du hast keine Buslinie ausgewählt.");
    RemoFromPlayeVehicle(playerid);
    Destroyvehcle(431);
    return 1;
    }

    würde es funktionieren aber wie schreibe ich es in den Befehl rein?

  • if(dialogid==DIALOG_Buslinien)
    {
    if(response)
    {
    if(listitem== 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");

    }
    if(listitem== 1)
    {
    //Busliniet2
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");

    }

    if(listitem== 2)
    {
    //Buslinie3
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }

    if(listitem== 3)
    {
    ////Buslinie 4
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }
    }
    else
    {
    SendClientMessage(playerid,grün,"Du hast keine Buslinie ausgewählt.");
    RemovePlayerFromVehicle(playerid);
    Destroyvehcle(431);
    return 1;
    }
    }




    *PS keine garantie.
    Auf die schnelle....

  • Du hast mir doch um 21:48 folgendes geschrieben:


    if(dialogid==DIALOG_Buslinien)
    {
    if(response)
    {
    if(listitem== 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");


    }
    if(listitem== 1)
    {
    //Busliniet2
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");


    }


    if(listitem== 2)
    {
    //Buslinie3
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }


    if(listitem== 3)
    {
    ////Buslinie 4
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }
    }
    else
    {
    SendClientMessage(playerid,grün,"Du hast keine Buslinie ausgewählt.");
    RemovePlayerFromVehicle(playerid);
    Destroyvehcle(431);
    return 1;
    }
    }



    Und das verurrsacht mir nur porbleme da man keine Checkpoints bekommt. Da ich nur Listitem=0 besitze da ich für die anderen Routen noch keine Koordinaten haben kann ich die anderen auch nicht befüllen.


    Ich habe nur vom Dialog momentan: if(listitem== 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");


    }

  • Sendclient..
    Hier ein oder zwei klammern nach außen.
    else
    {
    SendClientMessage(playerid,grün,"Du hast keine Buslinie ausgewählt.");
    RemovePlayerFromVehicle(playerid);
    Destroyvehcle(431);
    return 1;
    }
    Hier müssen insgesamt drei klammern sein innen.

  • Beitrag von Blackshadowscript ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Mein Dialog für den Bus sieht so aus:


    if(dialogid==DIALOG_Buslinien)
    {
    if(response)
    {
    if(listitem== 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");


    }
    if(listitem== 1)
    {
    //Busliniet2
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");


    }


    if(listitem== 2)
    {
    //Buslinie3
    if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }


    if(listitem== 3)
    {
    ////Buslinie 4
    //if(!IsPlayerInRangeOfPoint(playerid,5,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z]))return
    //SendClientMessage(playerid,helblau,"Du bist nicht beim Busfahrerpunkt.");
    }
    }
    else
    {
    SendClientMessage(playerid,grün,"Du hast keine Buslinie ausgewählt.");
    RemovePlayerFromVehicle(playerid);
    DestroyVehicle(431);
    return 1;
    }
    }


    aber es werden keine Checkpoints angezeigt ich weiss nicht wieso

  • also einfach nur


    if(GetPVarInt(playerid,"bus_job"))
    {
    //wenn bus_job ausgeführt wird.
    new bID = GetPVarInt(playerid,"bus_cp");
    if(IsPlayerInRangeOfPoint(playerid,5,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z]))
    {
    bID++;
    if(bID >= sizeof(bust1cps))
    {
    GivePlayerMoney(playerid,6000);
    SetPVarInt(playerid,"bus_cp",0);
    SetPlayerCheckpoint(playerid,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z],5);
    SendClientMessage(playerid,rot,"Du hast soeben 6.000$ verdient");
    }
    else
    {
    SetPVarInt(playerid,"bus_cp",bID);
    SetPlayerCheckpoint(playerid,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z],5);
    }
    return 1;
    }
    }


    die Koordinaten von
    SetPlayerCheckpoint(playerid,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z],5);nutzen?

  • SetPlayerCheckpoint(playerid,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z],5);
    SendClientMessage(playerid,rot,"Du hast soeben 6.000$ verdient");


    Da ist die Funktion falsch...da macht DisablePlayerCheckpoint(playerid); mehr Sinn :rolleyes:


    Ansonsten...ja einfach mal ausprobieren ^^

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Kaliber hier von mein script der public: Checkpoints:


    public OnPlayerEnterCheckpoint(playerid)
    {
    if(GetPVarInt(playerid, "trash_job"))
    {
    //Wenn trash job ausgeführt wird
    new cID = GetPVarInt(playerid, "trash_cp");
    if(IsPlayerInRangeOfPoint(playerid, 5, tCPs[cID][t_x], tCPs[cID][t_y], tCPs[cID][t_z]))
    {
    cID++;

    if(cID >= sizeof(tCPs))
    {
    GivePlayerMoney(playerid, 3000);
    SetPVarInt(playerid, "trash_cp", 0);
    SetPlayerCheckpoint(playerid, tCPs[0][t_x], tCPs[0][t_y], tCPs[0][t_z], 5);
    SendClientMessage(playerid,helblau,"Du hast soeben 3.000$ verdient");
    }
    else
    {
    SetPVarInt(playerid, "trash_cp", cID);
    SetPlayerCheckpoint(playerid, tCPs[cID][t_x], tCPs[cID][t_y], tCPs[cID][t_z], 5);
    }
    return 1;
    }
    }

    if(GetPVarInt(playerid,"bus_job"))
    {
    //wenn bus_job ausgeführt wird.
    new bID = GetPVarInt(playerid,"bus_cp");
    if(IsPlayerInRangeOfPoint(playerid,5,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z]))
    {
    bID++;
    if(bID >= sizeof(bust1cps))
    {
    GivePlayerMoney(playerid,6000);
    SetPVarInt(playerid,"bus_cp",0);
    SetPlayerCheckpoint(playerid,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z],5);
    SendClientMessage(playerid,rot,"Du hast soeben 6.000$ verdient");
    }
    else
    {
    SetPVarInt(playerid,"bus_cp",bID);
    SetPlayerCheckpoint(playerid,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z],5);
    }
    return 1;
    }
    }
    DisablePlayerCheckpoint(playerid);
    return 1;
    }


  • Schreib das so:


    bID++;
    if(bID >= sizeof(bust1cps))
    {
    GivePlayerMoney(playerid,6000);
    SetPVarInt(playerid,"bus_cp",0);
    SetPlayerCheckpoint(playerid,bust1cps[0][g_x],bust1cps[0][g_y],bust1cps[0][g_z],5);
    SendClientMessage(playerid,rot,"Du hast soeben 6.000$ verdient");
    }
    else
    {
    SetPVarInt(playerid,"bus_cp",bID);
    SetPlayerCheckpoint(playerid,bust1cps[bID][g_x],bust1cps[bID][g_y],bust1cps[bID][g_z],5);
    }
    return 1;

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S