Tank System Problem

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 wollte es so machen das man mehrere Tankstellen kaufen kann, dass geht auch aber bei tanken an verschiedenen Tankstellen ist überall der selbe Preis obwohl ich den Preis der einzelnen Tankstellen eingestellt habe.
    Mit einer Tankstelle bzw einem Biz gab es keine Fehler .



    Code vom Fillup , da hier die Rechnung falsch abläuft :



    Function Fillup()
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    new VID;
    new FillUp;
    new FillUp1;
    new FillUp2;
    new FillUp3;
    new FillUp4;
    new FillUp5;
    new FillUp6;
    new string[256];
    new string1[256];
    new string2[256];
    new string3[256];
    new string4[256];
    new string5[256];
    new string6[256];
    VID = GetPlayerVehicleID(i);
    FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    FillUp1 = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    FillUp2 = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    FillUp3 = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    FillUp4 = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    FillUp5 = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    FillUp6 = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    if(Refueling[i] == 1)
    {
    if(GetPlayerMoney(i) >= FillUp+1)
    {
    Gas[VID] += FillUp;
    FillUp = FillUp * SBizzInfo[0][sbEntranceCost];
    FillUp1 = FillUp1 * SBizzInfo[1][sbEntranceCost];
    FillUp2 = FillUp2 * SBizzInfo[2][sbEntranceCost];
    FillUp3 = FillUp3 * SBizzInfo[3][sbEntranceCost];
    FillUp4 = FillUp4 * SBizzInfo[4][sbEntranceCost];
    FillUp5 = FillUp5 * SBizzInfo[5][sbEntranceCost];
    FillUp6 = FillUp6 * SBizzInfo[6][sbEntranceCost];
    format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[0][sbEntranceCost]);
    format(string,sizeof(string1),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[1][sbEntranceCost]);
    format(string,sizeof(string2),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[2][sbEntranceCost]);
    format(string,sizeof(string3),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[3][sbEntranceCost]);
    format(string,sizeof(string4),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[4][sbEntranceCost]);
    format(string,sizeof(string5),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[5][sbEntranceCost]);
    format(string,sizeof(string6),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[6][sbEntranceCost]);
    SendClientMessage(i,COLOR_LIGHTBLUE,string);
    SendClientMessage(i,COLOR_LIGHTBLUE,string1);
    SendClientMessage(i,COLOR_LIGHTBLUE,string2);
    SendClientMessage(i,COLOR_LIGHTBLUE,string3);
    SendClientMessage(i,COLOR_LIGHTBLUE,string4);
    SendClientMessage(i,COLOR_LIGHTBLUE,string5);
    SendClientMessage(i,COLOR_LIGHTBLUE,string6);
    GivePlayerMoney(i, - FillUp);
    SBizzInfo[0][sbTill] += FillUp;
    SBizzInfo[1][sbTill] += FillUp1;
    SBizzInfo[2][sbTill] += FillUp2;
    SBizzInfo[3][sbTill] += FillUp3;
    SBizzInfo[4][sbTill] += FillUp4;
    SBizzInfo[5][sbTill] += FillUp5;
    SBizzInfo[6][sbTill] += FillUp6;
    ExtortionSBiz(0, FillUp);
    ExtortionSBiz(1, FillUp1);
    ExtortionSBiz(2, FillUp2);
    ExtortionSBiz(3, FillUp3);
    ExtortionSBiz(4, FillUp4);
    ExtortionSBiz(5, FillUp5);
    ExtortionSBiz(6, FillUp6);
    Refueling[i] = 0;
    UnFreezePlayer(i);
    }
    else
    {
    format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp);
    SendClientMessage(i,COLOR_LIGHTBLUE,string);


    format(string1,sizeof(string1),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp1);
    SendClientMessage(i,COLOR_LIGHTBLUE,string1);


    format(string2,sizeof(string2),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp2);
    SendClientMessage(i,COLOR_LIGHTBLUE,string2);


    format(string3,sizeof(string3),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp3);
    SendClientMessage(i,COLOR_LIGHTBLUE,string3);


    format(string4,sizeof(string4),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp4);
    SendClientMessage(i,COLOR_LIGHTBLUE,string4);


    format(string5,sizeof(string5),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp5);
    SendClientMessage(i,COLOR_LIGHTBLUE,string5);


    format(string6,sizeof(string6),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp6);
    SendClientMessage(i,COLOR_LIGHTBLUE,string6);


    UnFreezePlayer(i);
    }
    }
    }
    }
    return 1;
    }







    und so war es davor



    Function Fillup()
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    new VID;
    new FillUp;
    new string[256];
    VID = GetPlayerVehicleID(i);
    FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    if(Refueling[i] == 1)
    {
    if(GetPlayerMoney(i) >= FillUp+1)
    {
    Gas[VID] += FillUp;
    FillUp = FillUp * SBizzInfo[0][sbEntranceCost];
    format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: %d$)",FillUp,SBizzInfo[0][sbEntranceCost]);
    SendClientMessage(i,COLOR_LIGHTBLUE,string);
    GivePlayerMoney(i, - FillUp);
    SBizzInfo[0][sbTill] += FillUp;
    ExtortionSBiz(0, FillUp);
    Refueling[i] = 0;
    UnFreezePlayer(i);
    }
    else
    {
    format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",FillUp);
    SendClientMessage(i,COLOR_LIGHTBLUE,string);
    UnFreezePlayer(i);
    }
    }
    }
    }
    return 1;
    }