Frage zum Busfahrerjob

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 liebe User ich habe eine Frage zum Busjob.
    Also ich haben den Befehl (unten)erstellt und habe auch Checkpoints und Busstrecken erstellt funktioniert auch alles.
    Nur jetzt möchte ich das wenn der Busfahrer aussteigt der Bus wegspawnt und er automatisch außer Dienst ist. if(strcmp(cmd,"/bus",true)==0)

    if(strcmp(cmd,"/bus",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pBustime] == 0)
    {
    if (IsPlayerInRangeOfPoint(playerid,5.0,1082.0889,-1745.8416,13.4447))
    {
    if(PlayerInfo[playerid][pJob] == 14)
    {
    new engine,LIGHTs,alarm,doors,bonnet,boot,objective;
    GetVehicleParamsEx(BusVehs[playerid],engine,LIGHTs,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(BusVehs[playerid],VEHICLE_PARAMS_OFF,LIGHTs,alarm,doors,bonnet,boot,objective);
    BusVehs[playerid] = CreateVehicle(431,1080.2810,-1740.0605,13.5977,269.0623,1,1,0);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Busfahrer!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist nicht am Busspawn!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst warten bis du wieder fahren kannst!");
    return 1;
    }
    return 1;
    }
    }


    Hier noch einmal der /fare Befehl falls der weiterhilft.
    if(strcmp(cmd,"/fare",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pBustime] == 0)
    {
    if(PlayerInfo[playerid][pJob] == 14)
    {
    if(TransportDuty[playerid] > 0)
    {
    if(TransportDuty[playerid] == 2)
    {
    BusDrivers -= 1;
    }
    }
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 431)
    {
    if(GetPlayerState(playerid) == 2)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "NUTZUNG: /fare [preis]");
    return 1;
    }
    moneys = strval(tmp);
    if(moneys < 1 || moneys > 200) { SendClientMessage(playerid, COLOR_GREY, " Preis muss zwischen 1 und 200 Dollar liegen!"); return 1; }
    BusDrivers += 1; TransportDuty[playerid] = 2; TransportValue[playerid]= moneys;
    GetPlayerName(playerid,sendername,sizeof(sendername));
    format(string, sizeof(string), "Busfahrer %s ist im Dienst, Preis: $%d.", sendername, TransportValue[playerid]);
    OOCNews(TEAM_Grove_COLOR,string);
    SendClientMessage(playerid, COLOR_GREEN, "An jeder Haltestelle wirst du 30 Sekunden festgehalten");
    ShowPlayerDialog(playerid, DIALOG_BUSFAHRER, DIALOG_STYLE_LIST, "{FFFFFF}Busfahrer Strecken", "Pier(8 Haltestellen) 5.000$\nFarm(8 Haltestellen) 5.000$\nFlughafen(8 Haltestellen) 5.000$\nSF Tuning(10 Haltestellen) 6.000$\nLS City(14 Haltestellen) 8.000$", "Auswählen", "Abbrechen");
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du fährst den Bus nicht!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist nicht in einem Bus!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Busfahrer!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst warten bis du wieder fahren kannst!");
    return 1;
    }
    }
    return 1;
    }

  • Ok und spawnt der dann zurück oder ganz weg weil ich hab den Job so gemacht das man mit/bus einen Bus spawnt und dann eine Route wählen kann und wenn der dann aussteigt während der Tour das er dann ganz wegspawnt

  • das ist das vom Mullabfuhr job
    Function OnPlayerExitVehicle(playerid, vehicleid)
    {
    StopAudioStreamForPlayer(playerid);
    if (GetPlayerState(playerid) == 1)
    {
    return 1;
    }
    if(gGas[playerid] == 1)
    {
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~Auto Verlassen", 500, 3);
    }
    if(GetVehicleModel(vehicleid) == 408)
    {
    if(Mullabfuhr[playerid] == 1)
    {
    SendClientMessage(playerid, COLOR_RED, "* Du hast 15 Sekunden um in einen Muellwagen zu steigen !");
    SetTimerEx("MullabfuhrAbbruch", 15000, 0,"i",playerid);
    }
    }
    return 1;
    }

  • Ok und spawnt der dann zurück oder ganz weg weil ich hab den Job so gemacht das man mit/bus einen Bus spawnt und dann eine Route wählen kann und wenn der dann aussteigt während der Tour das er dann ganz wegspawnt


    Wenn du willst das der gespawnte Bus gelöscht wird musst du abfragen ob er im Dienst ist und dann:

    DestroyVehicle(BusVehs[playerid]);