KillTimer(RefuelingVehicleTimer[playerid] = 6000);
CMD:refuel(playerid, params[]) { if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { new vehicleid = GetPlayerVehicleID(playerid); new engine,lights,alarm,doors,bonnet,boot,objective; GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective); if(engine == VEHICLE_PARAMS_ON) return SendClientMessageEx(playerid, COLOR_RED, "You need to shut off the engine before filling up (Press 'N')."); if(!IsAtFuelStation(playerid)) return SendClientMessageEx(playerid, COLOR_RED, "You're not at a fuel station."); if(GetVehicleModel(vehicleid) == 481 || GetVehicleModel(vehicleid) == 509 || GetVehicleModel(vehicleid) == 510) return SendClientMessageEx(playerid,COLOR_RED,"This vehicle doesn't need fuel."); if(VehicleFuel[vehicleid] >= 100.0) return SendClientMessageEx(playerid, COLOR_RED, "This vehicle's tank is already full."); if(RefuelingVehicle[playerid] == 1) return SendClientMessageEx(playerid, COLOR_RED, "You are refilling your vehicle's tank."); SendClientMessageEx(playerid, COLOR_WHITE, "Refueling your vehicle's tank, please wait."); RefuelingVehicle[playerid] = 1; RefuelingVehicleTimer[playerid] = SetTimerEx("ReFill", 1000, true, "i", playerid); } return 1; }
forward ReFill(playerid); public ReFill(playerid) { if(!IsAtFuelStation(playerid) || !IsPlayerInAnyVehicle(playerid) || VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0 || GetPlayerCash(playerid) < 1) { StopRefueling(playerid); } else { new engine,lights,alarm,doors,bonnet,boot,objective; GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(engine == VEHICLE_PARAMS_ON) return StopRefueling(playerid); VehicleFuel[GetPlayerVehicleID(playerid)] += 1.0; RefuelingVehiclePrice[playerid] += 30; if(VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0) VehicleFuel[GetPlayerVehicleID(playerid)] = 100.0; } return true; }
stock StopRefueling(playerid) { GivePlayerCash(playerid, -100); SendFormattedMessage(playerid, COLOR_WHITE,"Your vehicle's tank has been refilled for $100."); new mypoint = -1; for (new i=0; i<MAX_POINTS; i++) { if(strcmp(Points[i][Name], "Fossil Fuel Company", true) == 0) { mypoint = i; } } for(new i = 0; i < sizeof(FamilyInfo); i++) { if(strcmp(Points[mypoint][Owner], FamilyInfo[i][FamilyName], true) == 0) { FamilyInfo[i][FamilyBank] = FamilyInfo[i][FamilyBank]+(RefuelingVehiclePrice[playerid]/10); } } RefuelingVehicle[playerid] = 0; RefuelingVehiclePrice[playerid] = 0; KillTimer(RefuelingVehicleTimer[playerid] = 6000); return true; }
RefuelingVehicleTimer[playerid] = 6000
= 6000
= 6000
RefuelingVehicleTimer[playerid] = SetTimerEx("ReFill", 1000, true, "i", playerid);
if(!IsAtFuelStation(playerid) || !IsPlayerInAnyVehicle(playerid) || VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0 || GetPlayerCash(playerid) < 1)
{
StopRefueling(playerid);
printf("IsAtFuelStation(playerid) = %d IsPlayerInAnyVehicle(playerid)=%d VehicleFuel[GetPlayerVehicleID(playerid)] = %d GetPlayerCash(playerid) = %d",IsAtFuelStation(playerid),IsPlayerInAnyVehicle(playerid),VehicleFuel[GetPlayerVehicleID(playerid)],GetPlayerCash(playerid) < 1));
}
I did exactly what you've told me..
It just says "Refueling your vehicle's tank, please wait." then I'm waiting forever .. nothing happens .. Please help .. |
it is not filling I have a progress bar and a Command that shows my car status .. I am very sure that I'm not getting the fuel !
And The Debug did not print at all. |
forward ReFill(playerid);
public ReFill(playerid)
{
printf("entered function Refill");
if(!IsAtFuelStation(playerid) || !IsPlayerInAnyVehicle(playerid) || VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0 || GetPlayerCash(playerid) < 1)
{
printf("IsAtFuelStation(playerid) = %d IsPlayerInAnyVehicle(playerid)=%d VehicleFuel[GetPlayerVehicleID(playerid)] = %d GetPlayerCash(playerid) = %d",IsAtFuelStation(playerid),IsPlayerInAnyVehicle(playerid),VehicleFuel[GetPlayerVehicleID(playerid)],GetPlayerCash(playerid) < 1));
StopRefueling(playerid);
}
else
{
printf("else");
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
if(engine == VEHICLE_PARAMS_ON)
{
printf("engine == VEHICLE_PARAMS_ON");
return StopRefueling(playerid);
}
printf("Before VehicleFuel[GetPlayerVehicleID(playerid)] = %d",VehicleFuel[GetPlayerVehicleID(playerid)]);
VehicleFuel[GetPlayerVehicleID(playerid)] += 1.0; RefuelingVehiclePrice[playerid] += 30;
printf("After VehicleFuel[GetPlayerVehicleID(playerid)] = %d",VehicleFuel[GetPlayerVehicleID(playerid)]);
if(VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0)
{
printf("if(VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0)");
VehicleFuel[GetPlayerVehicleID(playerid)] = 100.0;
}
}
return true;
}
if(VehicleFuel[GetPlayerVehicleID(playerid)] >= 100.0)
if(VehicleFuel[GetPlayerVehicleID(playerid)] < 100.0)