Engine Command
#1

Somebody please tell me what's wrong in my script, i compile it and no errors but the command doesn't work in game

pawn Код:
CMD:engine(playerid, params[])
{
    if(GetPlayerState(playerid) == 0)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(Engine[vehicleid] == 0)
        {
            new engine, lights, alarm, doors, bonnet, boot, objective;
            GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            Engine[vehicleid] = 1;
            SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
        }
    }
    else
    {
        if(GetPlayerState(playerid) == 0)
        {
            new vehicleid = GetPlayerVehicleID(playerid);
            if(Engine[vehicleid] == 1)
            {
                new engine, lights, alarm, doors, bonnet, boot, objective;
                GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
                Engine[vehicleid] = 1;
                SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, 0);
            }
        }
    }
    return 1;
}
Reply
#2

pawn Код:
CMD:engine(playerid, params[])
{
    if(GetPlayerState(playerid) == 2) //2 is the drivers state, not 0.
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(Engine[vehicleid] == 0)
        {
            new engine, lights, alarm, doors, bonnet, boot, objective;
            GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            Engine[vehicleid] = 1;
            SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
        }
    }
    else
    {
        if(GetPlayerState(playerid) == 2)
        {
            new vehicleid = GetPlayerVehicleID(playerid);
            if(Engine[vehicleid] == 1)
            {
                new engine, lights, alarm, doors, bonnet, boot, objective;
                GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
                Engine[vehicleid] = 0; //changed the 1 here previously to 0 so it stores it as off.
                SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, 0);
            }
        }
    }
    return 1;
}
Reply
#3

it didn't work, and i tried this too but doesn't work too -_-

pawn Код:
CMD:engine(playerid, params[])
{
    if(GetPlayerState(playerid) == 2)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(Engine[vehicleid] == 0)
        {
            new engine, lights, alarm, doors, bonnet, boot, objective;
            GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
        }
    }
    else
    {
        if(GetPlayerState(playerid) == 2)
        {
            new vehicleid = GetPlayerVehicleID(playerid);
            if(Engine[vehicleid] == 1)
            {
                new engine, lights, alarm, doors, bonnet, boot, objective;
                GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
                SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, 0);
            }
        }
    }
    return 1;
}
Reply
#4

That's probably because you removed
pawn Код:
Engine[vehicle] = 1;
and
pawn Код:
Engine[vehicle] = 0;

Try this:
pawn Код:
CMD:engine(playerid, params[])
{
    new playerstate = GetPlayerState(playerid);
    if(playerstate == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(Engine[vehicleid] == 0)
        {
            Engine[vehicleid] = 1;
            new engine, lights, alarm, doors, bonnet, boot, objective;
            GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
        }
        else
        {
            Engine[vehicleid] = 0;
            new engine, lights, alarm, doors, bonnet, boot, objective;
            GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, 0);
        }
    }
    return 1;
}
Reply
#5

thanks it works, but why i have to type /engine 2 times to turn the vehicle off
Reply
#6

Oops lol.

Do this: (replace the previous code for this part with this new code)
pawn Код:
if(Engine[vehicleid] == 0)
        {
            Engine[vehicleid] = 1;
            new engine, lights, alarm, doors, bonnet, boot, objective;
            GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
            return 1;
        }
Reply
#7

what did you change about it ? it's the same
Reply
#8

What about this?

pawn Код:
CMD:engine(playerid, params[])
{
    new playerstate = GetPlayerState(playerid);
    if(playerstate == 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 == 1)
        {
            engine = 0;
            SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, 0);
            SendClientMessage(playerid,-1,"The vehicles engine has turned off!");
            return 1;
        }
        else
        {
            engine = 1;
            SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
            SendClientMessage(playerid,-1,"The vehicles engine has turned off!");
        }
    }
    return 1;
}
Reply
#9

it worked perfectly, thank you +REP
Reply
#10

Np
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)