Guten Abend,
ich habe gerade ein ziemliches Problem. Ich habe gerade einen sehr großen Denkfehler/Blackout und sitze verzweifelt an einer simplen Rechung drann.
Warning:
Zeile:
fuelPrice = fuelNew * TANKEN_PRICE;
Pawn-Code komplett:
ocmd:tanken (playerid, params[])
{
new money, fuelPrice, fuel[10], fuelMax[10], query[180], string[256];
new Float:fuelNew;
if (IsPlayerInRangeOfPoint(playerid, 5.0, 1004.2894, -940.3350, 42.1797) || IsPlayerInRangeOfPoint(playerid, 5.0, 1003.6624, -933.5280, 42.1797))
{
if (!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, red, "Du musst in einem Fahrzeug sitzen!");
}
else
{
if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 509 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 481 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 510)
{
SendClientMessage(playerid, red, "Du kannst ein Fahrrad nicht betanken!");
}
else
{
if (VehicleEngine[GetPlayerVehicleID(playerid)] == true)
{
SendClientMessage(playerid, red, "Bitte schalte zuerst den Motor ab!");
}
else
{
format(query, sizeof(query), "SELECT * FROM users_cars WHERE ingameID = %d", GetPlayerVehicleID(playerid));
mysql_query(query);
mysql_store_result();
if (mysql_num_rows())
{
mysql_fetch_field("fuel", fuel);
mysql_fetch_field("fuelMax", fuelMax);
mysql_free_result();
fuelNew = floatstr(fuelMax) - floatstr(fuel);
fuelPrice = fuelNew * TANKEN_PRICE;
money = GetPVarInt(playerid, "playerMoney") - fuelPrice;
SetPlayerMoney(playerid, money);
format(string, sizeof(string), "* Du hast dein Fahrzeug mit %f Liter für $%d Dollar betankt!", fuelNew, money);
SendClientMessage(playerid, lightblue, string);
format(string, sizeof(string), "UPDATE users_cars SET fuel = '%f' WHERE ingameID = %d", fuelMax, GetPlayerVehicleID(playerid));
mysql_query(query);
}
else
{
mysql_free_result();
SendClientMessage(playerid, red, "Du kannst nur Privatfahrzeuge betanken!");
}
}
}
}
}
else
{
SendClientMessage(playerid, red, "Du bist nicht in der Nähe einer Tankstelle");
}
return 1;
}
TANKEN_PRICE wurde oben im Script mit dem Wert 15 festgelegt.
Wo liegt hier mein Denkfehler ?
Danke schonmal im Voraus für eure Hilfe