Engine System.
#1

pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(newkeys & KEY_ACTION)
        {
            new engine,lights,alarm,doors,bonnet,boot,objective;
            GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
            if(engine == 1) SetVehicleParamsEx(vehicleid,0,lights,alarm,doors,bonnet,boot,objective);

            new pname[MAX_PLAYER_NAME];
            GetPlayerName(playerid, pname, sizeof(pname));
            strreplace(pname, '_', ' ');

            new string[126];
            new vehiclename[126];
            GetVehicleName(vehicleid, vehiclename, sizeof(vehiclename));

            format(string, sizeof(string), "* %s turns the engine of their %s on.", pname, vehiclename);
            ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            else // Line 520
            {
                if(VehicleFuel[vehicleid] > 0) SetVehicleParamsEx(vehicleid,1,lights,alarm,doors,bonnet,boot,objective);
            }
        }
        if(newkeys & KEY_CROUCH)
        {
            new engine,lights,alarm,doors,bonnet,boot,objective;
            GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
            if(lights == 1) SetVehicleParamsEx(vehicleid,engine,0,alarm,doors,bonnet,boot,objective);
            else SetVehicleParamsEx(vehicleid,engine,1,alarm,doors,bonnet,boot,objective);
        }
    }
    return 1;
}
pawn Код:
(520) : error 029: invalid expression, assumed zero
What am I doing wrong?
Reply
#2

else if (VehicleFuel[vehicleid] > 0) SetVehicleParamsE(vehicleid,1,lights,alarm,doors,b onnet,boot,objective)
{
Reply
#3

That did not work.
Reply
#4

your missing the closing bracket above the else
}
else // Line 520


edit:

actually you dont have an if statement this else belongs too.
im not sure what your trying todo here
Reply
#5

Try this:

pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(newkeys & KEY_ACTION)
        {
            new engine,lights,alarm,doors,bonnet,boot,objective;
            GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
            if(engine == 1) SetVehicleParamsEx(vehicleid,0,lights,alarm,doors,bonnet,boot,objective);

            new pname[MAX_PLAYER_NAME];
            GetPlayerName(playerid, pname, sizeof(pname));
            strreplace(pname, '_', ' ');

            new string[126];
            new vehiclename[126];
            GetVehicleName(vehicleid, vehiclename, sizeof(vehiclename));

            format(string, sizeof(string), "* %s turns the engine of their %s on.", pname, vehiclename);
            ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            }
            else // Line 520
            {
                if(VehicleFuel[vehicleid] > 0) SetVehicleParamsEx(vehicleid,1,lights,alarm,doors,bonnet,boot,objective);
            }
        }
        if(newkeys & KEY_CROUCH)
        {
            new engine,lights,alarm,doors,bonnet,boot,objective;
            GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
            if(lights == 1) SetVehicleParamsEx(vehicleid,engine,0,alarm,doors,bonnet,boot,objective);
            else SetVehicleParamsEx(vehicleid,engine,1,alarm,doors,bonnet,boot,objective);
        }
    }
    return 1;
}
Reply
#6

pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(newkeys & KEY_ACTION)
        {
            new engine,lights,alarm,doors,bonnet,boot,objective;
            GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
            if(engine == 1)
                return SetVehicleParamsEx(vehicleid,0,lights,alarm,doors,bonnet,boot,objective);

            if(VehicleFuel[vehicleid] > 0)
            {
                SetVehicleParamsEx(vehicleid,1,lights,alarm,doors,bonnet,boot,objective);
                new pname[MAX_PLAYER_NAME];
                GetPlayerName(playerid, pname, sizeof(pname));
                strreplace(pname, '_', ' ');

                new string[126];
                new vehiclename[126];
                GetVehicleName(vehicleid, vehiclename, sizeof(vehiclename));

                format(string, sizeof(string), "* %s turns the engine of their %s on.", pname, vehiclename);
                ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            }
            else return SendClientMessage(playerid, -1, "There's no fuel in the vehicle.");
        }
        if(newkeys & KEY_CROUCH)
        {
            new engine,lights,alarm,doors,bonnet,boot,objective;
            GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
            if(lights == 1) SetVehicleParamsEx(vehicleid,engine,0,alarm,doors,bonnet,boot,objective);
            else SetVehicleParamsEx(vehicleid,engine,1,alarm,doors,bonnet,boot,objective);
        }
    }
    return 1;
}
Reply
#7

looked it over this should fix it
edit:

look above one post.. that will fix it.
Reply
#8

@Jonny5: No, it won't work. I mean, it won't work correctly. You're turning the engine OFF but according to string format, the player turned the engine ON. So yea, try my version.
Reply
#9

Thank you to all.
Antonio's version worked.
Everyone rep'ed for the help.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)