/fare Befehl

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
  • Moin,
    also ich wollte jetzt mit gTeam ne Taxi Fraktion erstellen.
    Nunja irgentwie komme ich nicht weiter wie ich den /fare Befehl machen soll.
    Also das der Taxifahrer /fahrpries [Preis] macht und dann alle Kunden die einsteigen das Geld abgezogen wird was der Taxifahrer angegeben hat.
    Habe es so versucht kommt aber nicht weiter :(

    if(!strcmp(strget(cmdtext,0),"/fahrpreis"))
    {
    new money = strval(strget(cmdtext,1));
    if(!strlen(strget(cmdtext,1)))
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    if(money > 50 || money < 0)
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    GivePlayerMoney(taxikunde,-money);
    dutyprice = 1;
    }
    return 1;
    }

  • versuche mal den:
    der ist jetzt aus dem GGF Gamemod
    if(strcmp(cmd,"/fare",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pMember] == 10||PlayerInfo[playerid][pLeader] == 10|| PlayerInfo[playerid][pJob] == 14)
    {
    if(TransportDuty[playerid] > 0)
    {
    if(TransportDuty[playerid] == 1)
    {
    TaxiDrivers -= 1;
    }
    else if(TransportDuty[playerid] == 2)
    {
    BusDrivers -= 1;
    }
    TransportDuty[playerid] = 0;
    format(string, sizeof(string), "* Du bist aus dem Dienst und bekommst $%d.", TransportMoney[playerid]);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    PlayerMoney[playerid] += TransportMoney[playerid];
    ConsumingMoney[playerid] = 1; TransportValue[playerid] = 0; TransportMoney[playerid] = 0;
    return 1;
    }
    new Veh = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(Veh) == 420 || GetVehicleModel(Veh) == 438)
    {
    if(GetPlayerState(playerid) == 2)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /fare [price]");
    return 1;
    }
    moneys = strval(tmp);
    if(moneys < 1 || moneys > 999) { SendClientMessage(playerid, COLOR_GREY, " Fahrpreis muss zwischen 1-999 liegen !"); return 1; }
    TaxiDrivers += 1; TransportDuty[playerid] = 1; TransportValue[playerid] = moneys;
    GetPlayerName(playerid,sendername,sizeof(sendername));
    format(string, sizeof(string), "Taxi Fahrer %s ist im Dienst, Preis: $%d.", sendername, TransportValue[playerid]);
    OOCNews(TEAM_GROVE_COLOR,string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " You are not the Driver !");
    return 1;
    }
    }
    else if(GetVehicleModel(Veh) == 431)
    {
    if(GetPlayerState(playerid) == 2)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /fare [price]");
    return 1;
    }
    moneys = strval(tmp);
    if(moneys < 1 || moneys > 99999) { SendClientMessage(playerid, COLOR_GREY, " Fahrpreis muss zwischen 1-99999 liegen !"); return 1; }
    BusDrivers += 1; TransportDuty[playerid] = 2; TransportValue[playerid]= moneys;
    GetPlayerName(playerid,sendername,sizeof(sendername));
    format(string, sizeof(string), "Bus Fahrer %s ist im Dienst, Preis: $%d.", sendername, TransportValue[playerid]);
    OOCNews(TEAM_GROVE_COLOR,string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Taxifahrer !");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist in keinem Taxi/Bus !");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY," Du bist in keinem Taxi/Bus !");
    return 1;
    }
    }
    return 1;
    }

  • Ich will nicht wissen wieviel Errors ich bekomme^^
    ich nutze kein gf brauche es für ein normales gm^^

  • vllt geht der? So würds ich machen, kA obs geht :D

    if(strcmp(cmdtext, "/fahrpreis", true) == 0)
    {
    new money = strval(strget(cmdtext,1));
    if(!strlen(strget(cmdtext,1)))
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    if(money > 50 || money < 0)
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    for(new i;i<=MAX_PLAYERS;i++)
    {
    new fahrer = GetPlayerVehicleID(playerid);
    new beifahrer = GetPlayerVehicleID(i);
    if(fahrer == beifahrer)
    {
    GivePlayerMoney(beifahrer,-money);
    GivePlayerMoney(fahrer,money);
    }
    }
    return 1;
    }

  • Danke ich werds gleich mal testen ;)
    Aber wie geht das das man den Befehl nur in einem bestimmten Auto ausführen kann?

  • if(strcmp(cmdtext, "/fahrpreis", true) == 0)
    {
    new carmodel = GetVehicleModel(GetPlayerVehicleID(playerid));
    if(carmodel != 420)
    {
    SendClientMessage(playerid,0xFF6347AA,"Nur im Taxi Möglich!");
    return 1;
    }
    new money = strval(strget(cmdtext,1));
    if(!strlen(strget(cmdtext,1)))
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    if(money > 50 || money < 0)
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    for(new i;i<=MAX_PLAYERS;i++)
    {
    new fahrer = GetPlayerVehicleID(playerid);
    new beifahrer = GetPlayerVehicleID(i);
    if(fahrer == beifahrer)
    {
    GivePlayerMoney(beifahrer,-money);
    GivePlayerMoney(fahrer,money);
    }
    }
    return 1;
    }So?

  • if(strcmp(cmdtext, "/fahrpreis", true) == 0)
    {
    if(newcar == OLDCARID)
    {
    new money = strval(strget(cmdtext,1));
    if(!strlen(strget(cmdtext,1)))
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    if(money > 50 || money < 0)
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    for(new i;i<=MAX_PLAYERS;i++)
    {
    new fahrer = GetPlayerVehicleID(playerid);
    new beifahrer = GetPlayerVehicleID(i);
    if(fahrer == beifahrer)
    {
    GivePlayerMoney(beifahrer,-money);
    GivePlayerMoney(fahrer,money);
    }
    }
    }
    return 1;
    }

    [align=center]

  • Cool danke ich teste es jetzt mal gleich ;)
    Und wenn der Fahrer das Taxi betritt wie gebe ich aus wieviel der Bezahlen muss?
    So vllt`?:
    format(string, sizeof(string), "*Du musst $d% bezahlen.",money);

  • Domoge deins raff ich nicht,wo haste en OLDCARID und newcar her? :D
    @ Sampi:

    if(strcmp(cmdtext, "/fahrpreis", true) == 0)
    {
    new carmodel = GetVehicleModel(GetPlayerVehicleID(playerid));
    if(carmodel != 420)
    {
    SendClientMessage(playerid,0xFF6347AA,"Nur im Taxi Möglich!");
    return 1;
    }
    new money = strval(strget(cmdtext,1));
    if(!strlen(strget(cmdtext,1)))
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    if(money > 50 || money < 0)
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /fahrpreis [Preis]");
    return 1;
    }
    for(new i;i<=MAX_PLAYERS;i++)
    {
    new fahrer = GetPlayerVehicleID(playerid);
    new beifahrer = GetPlayerVehicleID(i);
    if(fahrer == beifahrer)
    {
    GivePlayerMoney(beifahrer,-money);
    GivePlayerMoney(fahrer,money);
    format(string, sizeof(string), "Du musstest $%d bezahlen.", money);
    SendClientMessage(i, 0xFF6347AA, string);
    }
    }
    return 1;
    }

  • Danke :)
    Edit//
    Weißt du vllt auch wie ein /service taxi Befehl geht und der Taxifahrer mit /annehmen taxi denjenigen Animmt=? :)

    Einmal editiert, zuletzt von Sampi ()

  • hm jo mom i bastel ma eben was
    //Edit: so kA obs geht hab keine errors/warnings,es is 23 uhr ich kann nicht mehr so doll denken :D
    Farbe ist die gleiche wie bei /fahrpreis,hatte kb andere zu suuhen :P Bin off für Today,bb

    if(strcmp(cmdtext, "/service taxi", true) == 0)
    {
    SendClientMessage(playerid,0xFF6347AA,"Du hast ein Taxi gerufen!");
    for(new i;i<=MAX_PLAYERS;i++)
    {
    new carmodel = GetVehicleModel(GetPlayerVehicleID(i));
    if(carmodel == 420)
    {
    new Float:slx, Float:sly, Float:slz;
    GetPlayerPos(playerid, slx, sly, slz);
    GetPlayerName(playerid, sendername, sizeof(sendername));
    SetPlayerCheckpoint(i,slx,sly,slz,3.0);
    format(string, sizeof(string), "Zentrale:An alle Taxifahrer, %s braucht ein Taxi.", sendername);
    SendClientMessage(i, 0xFF6347AA, string);
    return 1;
    }
    }
    }
    if(strcmp(cmdtext, "/taxi da", true) == 0)
    {
    for(new i;i<=MAX_PLAYERS;i++)
    {
    new carmodel = GetVehicleModel(GetPlayerVehicleID(i));
    if(carmodel == 420)
    {
    DisablePlayerCheckpoint(i);
    SendClientMessage(i,0xFF6347AA,"Der Kunde hat nun ein Taxi!");
    return 1;
    }
    }
    }

  • Daaanke schön :)
    Werde es gleich oder morgen mal testen ;)


    Edit//
    Wenn jetzt 2 Leute ein Taxi rufen,und man bei einem /taxi da eingibt dann gehen doch beide Checkpoints weg oder?

    Einmal editiert, zuletzt von Sampi ()