15.01.2012, 06:14
Okay, so I have this code:
I went in-game and tried using these keys, but for some reason, they just don't seem to do anything. This is the command that goes with this whole setup.
I don't think I'm checking the keys incorrectly, according to the SA-MP Wiki. Does anyone have some insight?
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(vehDashboardToggled[playerid] == true)
{
if(IsPlayerInAnyVehicle(playerid))
{
new iVehicleID = GetPlayerVehicleID(playerid);
if(RELEASED(KEY_DOWN))
{
if(vehDashboardArrow[playerid] == 1)
{
TextDrawHideForPlayer(playerid, vehMenuArrow1TD[playerid]);
TextDrawShowForPlayer(playerid, vehMenuArrow2TD[playerid]);
PlayerPlaySound(playerid, 1083, -1, -1, -1);
vehDashboardArrow[playerid] = 2;
}
else if(vehDashboardArrow[playerid] == 2)
{
TextDrawHideForPlayer(playerid, vehMenuArrow2TD[playerid]);
TextDrawShowForPlayer(playerid, vehMenuArrow3TD[playerid]);
PlayerPlaySound(playerid, 1083, -1, -1, -1);
vehDashboardArrow[playerid] = 3;
}
}
else if(RELEASED(KEY_UP))
{
if(vehDashboardArrow[playerid] == 3)
{
TextDrawHideForPlayer(playerid, vehMenuArrow3TD[playerid]);
TextDrawShowForPlayer(playerid, vehMenuArrow2TD[playerid]);
PlayerPlaySound(playerid, 1083, -1, -1, -1);
vehDashboardArrow[playerid] = 2;
}
else if(vehDashboardArrow[playerid] == 2)
{
TextDrawHideForPlayer(playerid, vehMenuArrow2TD[playerid]);
TextDrawShowForPlayer(playerid, vehMenuArrow1TD[playerid]);
PlayerPlaySound(playerid, 1083, -1, -1, -1);
vehDashboardArrow[playerid] = 1;
}
}
else if(RELEASED(KEY_LEFT))
{
if(vehDashboardArrow[playerid] == 1)
{
PlayerPlaySound(playerid, 1083, -1, -1, -1);
if(engine != 1)
{
TextDrawSetString(vehicleEngineTD[playerid], "~g~ENGINE");
GetVehicleParamsEx(iVehicleID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(iVehicleID, 1, lights, alarm, doors, bonnet, boot, objective);
}
else
{
TextDrawSetString(vehicleEngineTD[playerid], "~r~ENGINE");
GetVehicleParamsEx(iVehicleID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(iVehicleID, 0, lights, alarm, doors, bonnet, boot, objective);
}
}
if(vehDashboardArrow[playerid] == 2)
{
PlayerPlaySound(playerid, 1083, -1, -1, -1);
if(engine != 1)
{
TextDrawSetString(vehicleEngineTD[playerid], "~g~LIGHTS");
GetVehicleParamsEx(iVehicleID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(iVehicleID, engine, 1, alarm, doors, bonnet, boot, objective);
}
else
{
TextDrawSetString(vehicleEngineTD[playerid], "~r~LIGHTS");
GetVehicleParamsEx(iVehicleID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(iVehicleID, engine, 0, alarm, doors, bonnet, boot, objective);
}
}
if(vehDashboardArrow[playerid] == 3)
{
PlayerPlaySound(playerid, 1083, -1, -1, -1);
if(doors != 1)
{
TextDrawSetString(vehicleDoorsTD[playerid], "~g~DOORS");
GetVehicleParamsEx(iVehicleID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(iVehicleID, engine, lights, alarm, 1, bonnet, boot, objective);
}
else
{
TextDrawSetString(vehicleEngineTD[playerid], "~r~DOORS");
GetVehicleParamsEx(iVehicleID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(iVehicleID, engine, lights, alarm, 0, bonnet, boot, objective);
}
}
}
else if(RELEASED(KEY_SECONDARY_ATTACK))
{
vehDashboardToggled[playerid] = false;
PlayerPlaySound(playerid, 1084, -1, -1, -1);
TogglePlayerControllable(playerid, true);
}
}
}
return 1;
}
pawn Код:
CMD:dashboard(playerid, params[])
{
if(!IsPlayerInAnyVehicle(playerid))
return false;
if(vehDashboardToggled[playerid] == true)
return false;
vehDashboardArrow[playerid] = 1;
vehDashboardToggled[playerid] = true;
TogglePlayerControllable(playerid, false);
PlayerPlaySound(playerid, 1083, -1, -1, -1);
TextDrawShowForPlayer(playerid, vehMenuArrow1TD[playerid]);
return 1;
}