Guten Morgen,
ich habe ein kleines Problem.
Ich habe hier ein Tanksystem, der am Ende wenn das Fahrzeug vollgetankt ist, dass Geld von der Person abzieht.
Da wird aber von einem Biz erwähnt, könnte es jemand so umschreiben, dass absolut kein Biz erwähnt wird, sondern einfach direkt 30 Dollar pro Liter einkassiert wird?
Das ist es:
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 = SBizzInfo[2][sbEntranceCost] * FillUp;
format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: $%d)",FillUp,SBizzInfo[2][sbEntranceCost]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
GivePlayerMoney(i, - FillUp);
SBizzInfo[2][sbTill] += FillUp/1;
ExtortionSBiz(2, 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);
}
}
}
}
return 1;
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Hier nochmal der Befehl /tanken, der steht aber eher im Hintergrund, da muss denke ich mal nichts dran gemacht werden??
if(strcmp(cmd, "/tanken", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsAtGasStation(playerid))
{
if(IsANoTachoVehicle(GetPlayerVehicleID(playerid)))
{
SendClientMessage(playerid,COLOR_YELLOW," Du kannst kein Fahrrad betanken!");
}
else
{
SetTimer("Fillup",RefuelWait,0);
Refueling[playerid] = 1;
FreezePlayer(playerid);
SendClientMessage(playerid,COLOR_WHITE," Dein Fahrzeug wird betankt, Bitte warten....");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY," Du bist an keiner Tankstelle!");
}
}
return 1;
}