/fill problem
#1

if I do /fill 100 it fills by 10.. how can I make so if I do /fill 10 to fill by 10??

PHP код:
if(strcmp(cmd"/fill"true) == 0//this
                    
{
                        
tmp strtok(cmdtextidx);
                        if(!
IsPlayerInAnyVehicle(playerid))
                        {
                        return 
SendClientMessage(playerid, -1"Nu esti in vehicul!");
                        }
                        if(!
strlen(tmp))
                        {
                        
SendClientMessage(playeridCOLOR_WHITE"{00A1FF}USAGE{FFFFFF}: /fill [ammount]");
                        return 
1;
                        }
                        new 
fuel;
                        new 
vehicleid GetPlayerVehicleID(playerid);
                        
fuel strval(tmp); // this?
                        
if(fuel || fuel 1000)
                        {
                            
SendClientMessage(playeridCOLOR_GRAD1"Nu poti pune mai mult de 100L si mai putin de un litru.");
                            return 
1;
                        }
                        if(!
IsAtGasStation(playerid))
                        {
                        return 
SendClientMessage(playerid, -1"Nu esti la Benzinarie!");
                        }
                        if(
engineOn[playerid] == 1)
                        {
                        
SendClientMessage(playeridCOLOR_LIGHTBLUE"|| Trebuie sa ai motorul oprit! ||");
                        return 
1;
                        }
                        if(
IsRefilling[playerid])
                        {
                        return 
SendClientMessage(playerid, -1"Faci plinul..");
                        }
                        if(
GetPlayerCash(playerid) < 120)
                        {
                        return 
SendClientMessage(playerid, -1"Nu ai destui bani!");
                        }
                        if(
VehicleFuel[vehicleid] == 1000)
                        {
                        return 
SendClientMessage(playerid, -1"Vehicolul este plin de combustibil"); // i have 99.9 and message appears.
                        
}
                        if((
VehicleFuel[vehicleid]+fuel) > 1000)return SendClientMessage(playerid ,COLOR_RED," Trebuie sa bagi mai putin combustibil!");//***********************EDIT THIS**
                        
GivePlayerCash(playerid,-120);
                        
GetVehicleParamsEx(vehicleidenginelightsalarmdoorsbonnetbootobjective);
                        
SetVehicleParamsEx(vehicleid0lightsalarmdoorsbonnetbootobjective);
                        
//TextDrawSetString(Text:Values[playerid][2], "Refilling...");
                        //new Float:FloatValue;
                        //FloatValue = float(fuel);
                        //new Float:totfuel = VehicleFuel[vehicleid]+FloatValue;
                        
new totfuel=VehicleFuel[vehicleid]+fuel;//========ADDED THIS*********
                        
RefillingTimer[playerid] = SetTimerEx("Refilling"1true"iiiiiiiiii"playeridvehicleidenginelightsalarmdoorsbonnetbootobjectivetotfuel);//====ADDED A EXTRA VARIABLE HERE
                        
IsRanOutOfFuel[vehicleid] = true;
                        
IsRefilling[playerid] = true;
                        return 
1;
                     } 
Please Help!
Reply
#2

bump
Reply
#3

Quote:
Originally Posted by Akcent_Voltaj
Посмотреть сообщение
if I do /fill 100 it fills by 10.. how can I make so if I do /fill 10 to fill by 10??
You should explain your problem enough, first of all you were talkin about "/fill 100" then u switched to "/fill 10" what do you want exactly!
Reply
#4

you don't understand re-read it..
Reply
#5

Any Errors? Not working?
Reply
#6

no errors.
Reply
#7

pawn Код:
if(!strcmp(cmd, "/fill", true))
                    {
                        tmp = strtok(cmdtext, idx);
                        if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, "Nu esti in vehicul!");
                        if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "{00A1FF}USAGE{FFFFFF}: /fill [ammount]");
                        new fuel = strval(tmp), vehicleid = GetPlayerVehicleID(playerid);
                        if(!(0 < fuel < 101)) return SendClientMessage(playerid, COLOR_GRAD1, "Nu poti pune mai mult de 100L si mai putin de un litru.");
                        if(!IsAtGasStation(playerid)) return SendClientMessage(playerid, -1, "Nu esti la Benzinarie!");
                        if(engineOn[playerid]) return SendClientMessage(playerid, COLOR_LIGHTBLUE, "|| Trebuie sa ai motorul oprit! ||");
                        if(IsRefilling[playerid]) return SendClientMessage(playerid, -1, "Faci plinul..");
                        if(GetPlayerCash(playerid) < 120) return SendClientMessage(playerid, -1, "Nu ai destui bani!");
                        if(VehicleFuel[vehicleid] >= 1000) return SendClientMessage(playerid, -1, "Vehicolul este plin de combustibil"); // i have 99.9 and message appears.
                        new var = VehicleFuel[vehicleid] + fuel;
                        if(var > 1000) return SendClientMessage(playerid, COLOR_RED, " Trebuie sa bagi mai putin combustibil!");//***********************EDIT THIS**
                        GivePlayerCash(playerid, -120);
                        new engine, lights, alarm, doors, bonnet, boot, objective;
                        GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
                        SetVehicleParamsEx(vehicleid, 0, lights, alarm, doors, bonnet, boot, objective);
                        RefillingTimer[playerid] = SetTimerEx("Refilling", 500, true, "iii", playerid, vehicleid, var);
                        IsRanOutOfFuel[vehicleid] = true;
                        IsRefilling[playerid] = true;
                        return 1;
                    }
pawn Код:
public Refilling(playerid, vehicleid, totfuel)
{
    if(!IsPlayerInAnyVehicle(playerid))
    {
        IsRefilling[playerid] = false;
        return KillTimer(RefillingTimer[playerid]);
    }
    VehicleFuel[vehicleid] += random(100);
    if(VehicleFuel[vehicleid] >= 1000)
    {
        VehicleFuel[vehicleid] = 1000;
        IsRanOutOfFuel[vehicleid] = false;
        printf("vehREFILL");
    }
    if(VehicleFuel[vehicleid] >= totfuel)
    {
        IsRefilling[playerid] = false;
        SendClientMessage(playerid, COLOR_RED, "Ai facut plinul de 150Lei, Poti pleca!");
        VehicleFuel[vehicleid] = totfuel;
        new engine, temp[6];
        GetVehicleParamsEx(vehicleid, engine, temp[0], temp[1], temp[2], temp[3], temp[4], temp[5]);
        SetVehicleParamsEx(vehicleid, 0, temp[0], temp[1], temp[2], temp[3], temp[4], temp[5]);
        KillTimer(RefillingTimer[playerid]);
    }
    new TD_String[25];
    format(TD_String, sizeof(TD_String), "%i", VehicleFuel[vehicleid]);
    TextDrawSetString(Values[playerid][2], TD_String);
    return 1;
}
Reply
#8

yes thanks, but can some one help me with my /fill??
Reply
#9

Quote:
Originally Posted by Akcent_Voltaj
Посмотреть сообщение
yes thanks, but can some one help me with my /fill??
Did you try Threshold's method?
Reply
#10

dosent work.. I want it my way.. just needs editing.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)