public MainTimer()
{
new string[128];
new Float:x, Float:y, Float:z;
for(new i=0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(i);
if(!IsBicycle(vehicleid) && Fuel[vehicleid] > 0)
{
Fuel[vehicleid] -= GetPlayerSpeed(i)/1000.0; // << This is the warning! I tried to fix it and that wasn't change anything :s
if(Fuel[vehicleid] <= 0)
{
ToggleEngine(vehicleid, VEHICLE_PARAMS_OFF);
GameTextForPlayer(i, "~r~out of fuel", 3000, 3);
SendClientMessage(i, COLOR_RED, "This vehicle is out of fuel!");
}
}
}
if(RefuelTime[i] > 0 && GetPVarInt(i, "FuelStation"))
{
new vehicleid = GetPlayerVehicleID(i);
Fuel[vehicleid] += 2.0;
RefuelTime[i]--;
if(RefuelTime[i] == 0)
{
if(Fuel[vehicleid] >= 100.0) Fuel[vehicleid] = 100.0;
new stationid = GetPVarInt(i, "FuelStation");
new cost = floatround(Fuel[vehicleid]-GetPVarFloat(i, "Fuel"))*FUEL_PRICE;
if(GetPlayerState(i) != PLAYER_STATE_DRIVER || Fuel[vehicleid] >= 100.0 || GetPlayerMoney(i) < cost
|| !IsPlayerInRangeOfPoint(i, 10.0, FuelStationPos[stationid][0], FuelStationPos[stationid][1], FuelStationPos[stationid][2]))
{
if(GetPlayerMoney(i) < cost) cost = GetPlayerMoney(i);
GivePlayerMoney(i, -cost);
format(string, sizeof(string), "~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
format(string, sizeof(string), "You pay $%d for fuel", cost);
SendClientMessage(i, COLOR_WHITE, string);
SetPVarInt(i, "FuelStation", 0);
SetPVarFloat(i, "Fuel", 0.0);
}
else
{
RefuelTime[i] = 5;
format(string, sizeof(string), "~w~refueling...~n~~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
}
}
}
if(TrackCar[i])
{
GetVehiclePos(TrackCar[i], x, y, z);
SetPlayerCheckpoint(i, x, y, z, 3);
}
}
}
}
warning 202: number of arguments does not match definition Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 1 Warning.
new Float:Fuel[MAX_PLAYERS];
public MainTimer()
{
new string[128];
new Float:x, Float:y, Float:z;
new Float:Fuel[MAX_PLAYERS];
for(new i=0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(i);
if(!IsBicycle(vehicleid) && Fuel[vehicleid] > 0)
{
Fuel[vehicleid] -= GetPlayerSpeed(i)/1000.0; // << This is the warning! I tried to fix it and that wasn't change anything :s
if(Fuel[vehicleid] <= 0)
{
ToggleEngine(vehicleid, VEHICLE_PARAMS_OFF);
GameTextForPlayer(i, "~r~out of fuel", 3000, 3);
SendClientMessage(i, COLOR_RED, "This vehicle is out of fuel!");
}
}
}
if(RefuelTime[i] > 0 && GetPVarInt(i, "FuelStation"))
{
new vehicleid = GetPlayerVehicleID(i);
Fuel[vehicleid] += 2.0;
RefuelTime[i]--;
if(RefuelTime[i] == 0)
{
if(Fuel[vehicleid] >= 100.0) Fuel[vehicleid] = 100.0;
new stationid = GetPVarInt(i, "FuelStation");
new cost = floatround(Fuel[vehicleid]-GetPVarFloat(i, "Fuel"))*FUEL_PRICE;
if(GetPlayerState(i) != PLAYER_STATE_DRIVER || Fuel[vehicleid] >= 100.0 || GetPlayerMoney(i) < cost
|| !IsPlayerInRangeOfPoint(i, 10.0, FuelStationPos[stationid][0], FuelStationPos[stationid][1], FuelStationPos[stationid][2]))
{
if(GetPlayerMoney(i) < cost) cost = GetPlayerMoney(i);
GivePlayerMoney(i, -cost);
format(string, sizeof(string), "~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
format(string, sizeof(string), "You pay $%d for fuel", cost);
SendClientMessage(i, COLOR_WHITE, string);
SetPVarInt(i, "FuelStation", 0);
SetPVarFloat(i, "Fuel", 0.0);
}
else
{
RefuelTime[i] = 5;
format(string, sizeof(string), "~w~refueling...~n~~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
}
}
}
if(TrackCar[i])
{
GetVehiclePos(TrackCar[i], x, y, z);
SetPlayerCheckpoint(i, x, y, z, 3);
}
}
}
}
new Float:Fuel[MAX_VEHICLES] = {100.0, ...};
new Float:Fuel[MAX_PLAYERS]; Fuel[vehicleid] -= GetPlayerSpeed(i)/1000.0; // << This is the warning! I tried to fix it and that wasn't change anything :s
Fuel[vehicleid] -= GetPlayerSpeed(i)/1000;
warning 219: local variable "Fuel" shadows a variable at a preceding level warning 202: number of arguments does not match definition Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Warnings.
Код:
warning 219: local variable "Fuel" shadows a variable at a preceding level warning 202: number of arguments does not match definition Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Warnings. |
public MainTimer()
{
new string[128];
new Float:x, Float:y, Float:z;
new Fuel[MAX_VEHICLES];
for(new i=0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(i);
if(!IsBicycle(vehicleid) && Fuel[vehicleid] > 0)
{
Fuel[vehicleid] -= GetPlayerSpeed(i); // I Hope it works now.
if(Fuel[vehicleid] <= 0)
{
ToggleEngine(vehicleid, VEHICLE_PARAMS_OFF);
GameTextForPlayer(i, "~r~out of fuel", 3000, 3);
SendClientMessage(i, COLOR_RED, "This vehicle is out of fuel!");
}
}
}
if(RefuelTime[i] > 0 && GetPVarInt(i, "FuelStation"))
{
new vehicleid = GetPlayerVehicleID(i);
Fuel[vehicleid] += 2.0;
RefuelTime[i]--;
if(RefuelTime[i] == 0)
{
if(Fuel[vehicleid] >= 100.0) Fuel[vehicleid] = 100.0;
new stationid = GetPVarInt(i, "FuelStation");
new cost = floatround(Fuel[vehicleid]-GetPVarFloat(i, "Fuel"))*FUEL_PRICE;
if(GetPlayerState(i) != PLAYER_STATE_DRIVER || Fuel[vehicleid] >= 100.0 || GetPlayerMoney(i) < cost
|| !IsPlayerInRangeOfPoint(i, 10.0, FuelStationPos[stationid][0], FuelStationPos[stationid][1], FuelStationPos[stationid][2]))
{
if(GetPlayerMoney(i) < cost) cost = GetPlayerMoney(i);
GivePlayerMoney(i, -cost);
format(string, sizeof(string), "~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
format(string, sizeof(string), "You pay $%d for fuel", cost);
SendClientMessage(i, COLOR_WHITE, string);
SetPVarInt(i, "FuelStation", 0);
SetPVarFloat(i, "Fuel", 0.0);
}
else
{
RefuelTime[i] = 5;
format(string, sizeof(string), "~w~refueling...~n~~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
}
}
}
if(TrackCar[i])
{
GetVehiclePos(TrackCar[i], x, y, z);
SetPlayerCheckpoint(i, x, y, z, 3);
}
}
}
}
Try this
pawn Код:
Show ' GetPlayerSpeed ' |
stock GetPlayerSpeedx(playerid, bool:kmh = true)
{
new
Float:xx,
Float:yy,
Float:zz,
Float:pSpeed;
if(IsPlayerInAnyVehicle(playerid))
{
GetVehicleVelocity(GetPlayerVehicleID(playerid),xx,yy,zz);
}
else
{
GetPlayerVelocity(playerid,xx,yy,zz);
}
pSpeed = floatsqroot((xx * xx) + (yy * yy) + (zz * zz));
return kmh ? floatround((pSpeed * 165.12)) : floatround((pSpeed * 103.9));
}
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase