16.08.2013, 19:52
Ok, so the first time you type /v hood while sitting in the car the hood opens up but when you type it again it doesn't close, but if you type /v trunk in the car it doesn't open the trunk or close it. Also if you type /v trunk and /v hood outside the car nothing happens, Can anyone help me fix?
pawn Код:
COMMAND:v(playerid, params[])
{
new type[128];
new newstate = GetPlayerState(playerid);
if(sscanf(params, "s[128]", type)) SendClientMessage(playerid, COLOR_GREY, "USAGE: /accept [invite / death / shake]");
else
{
if(RpPlayerInfo[playerid][pMute] == 1) return SendClientMessage(playerid,COLOR_RED,"WARNING: You are currently muted.");
if(strcmp(type, "engine", true) == 0)
{
if(NcInfo[GetPlayerVehicleID(playerid)][Engine] == 0 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), true, lights1, alarm, doors, bonnet, boot, objective);
NcInfo[GetPlayerVehicleID(playerid)][Engine] = 1;
}
else if(NcInfo[GetPlayerVehicleID(playerid)][Engine] == 1 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), false, lights1, alarm, doors, bonnet, boot, objective);
NcInfo[GetPlayerVehicleID(playerid)][Engine] = 0;
}
}
if(strcmp(type, "trunk", true) == 0)
{
for(new i = 0; i < MAX_VEHICLES; i++)
{
new Float:vehx, Float:vehy, Float:vehz;
GetVehiclePos(i, vehx, vehy, vehz);
if(IsPlayerInRangeOfPoint(playerid, 2.0, vehx, vehy, vehz))
{
if(NcInfo[i][Boot] == 0 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, true, objective);
NcInfo[i][Boot] = 1;
}
else if(NcInfo[i][Boot] == 1 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, false, objective);
NcInfo[i][Boot] = 0;
}
}
}
if(IsPlayerInAnyVehicle(playerid))
{
if(NcInfo[GetPlayerVehicleID(playerid)][Boot] == 0 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, true, objective);
NcInfo[GetPlayerVehicleID(playerid)][Boot] = 1;
}
else if(NcInfo[GetPlayerVehicleID(playerid)][Boot] == 1 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, false, objective);
NcInfo[GetPlayerVehicleID(playerid)][Boot] = 0;
}
}
}
if(strcmp(type, "hood", true) == 0)
{
for(new i = 0; i < MAX_VEHICLES; i++)
{
new Float:vehx, Float:vehy, Float:vehz;
GetVehiclePos(i, vehx, vehy, vehz);
if(IsPlayerInRangeOfPoint(playerid, 2.0, vehx, vehy, vehz))
{
if(NcInfo[i][Hood] == 0 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, true, boot, objective);
NcInfo[i][Hood] = 1;
}
else if(NcInfo[i][Hood] == 1 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, false, boot, objective);
NcInfo[i][Hood] = 0;
}
}
}
if(IsPlayerInAnyVehicle(playerid))
{
if(NcInfo[GetPlayerVehicleID(playerid)][Boot] == 0 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, true, boot, objective);
NcInfo[GetPlayerVehicleID(playerid)][Hood] = 1;
}
else if(NcInfo[GetPlayerVehicleID(playerid)][Boot] == 1 && newstate == PLAYER_STATE_DRIVER)
{
new engine, lights1, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid), engine, lights1, alarm, doors, false, boot, objective);
NcInfo[GetPlayerVehicleID(playerid)][Hood] = 0;
}
}
}
return 1;
}
return 1;
}