Vehicle Params with variables within a CMD. -
What this command is designed for is FUN, but also I will be using it for other purposes later....
- forces the players car engine to stop.
- typing it again would force the players car engine to start.
you can see below "playa" is my sscanf return for U meaning the playerid selected with the command.
./includes/commands.pwn(1610) : error 012: invalid function call, not a valid address
./includes/commands.pwn(1610) : fatal error 107: too many error messages on one line
pawn Код:
CMD:forcevehicle(playerid, params[])
{
if (PlayerInfo[playerid][pAdmin] >= 4)
{
new sstring[2000], playa, set;
if(sscanf(params, "ud", playa, set))
{
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}USAGE:{00A5FF}/forcevehicle [ID] [SettingID]");
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}_______________________________________");
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}INFO:{00A5FF}(1){0049FF}ToggleEngine {00A5FF}(2){0049FF}ToggleTireInflation {00A5FF}(3){0049FF}ToggleSmoking {00A5FF}(4){0049FF}ToggleLocked {00A5FF}(5){0049FF}ToggleBackDoors {00A5FF}(6){0049FF}ToggleFrontDoors {00A5FF}(7){0049FF}ToggleTrunk {00A5FF}(8){0049FF}ToggleHood {00A5FF}(9){0049FF}ToggleLights");
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}_______________________________________");
return 1;
}
//playa = who ever ID entered
if(IsPlayerConnected(playa))
{
new ToggledOn1[MAX_PLAYERS];
new ToggledOn2[MAX_PLAYERS];
new ToggledOn3[MAX_PLAYERS];
new ToggledOn4[MAX_PLAYERS];
new ToggledOn5[MAX_PLAYERS];
new ToggledOn6[MAX_PLAYERS];
new ToggledOn7[MAX_PLAYERS];
new ToggledOn8[MAX_PLAYERS];
new ToggledOn9[MAX_PLAYERS];
new playavid;
new engine, lights1, alarm, doors1, bonnet, boot, objective;
new panels, doors, lights, tires;
if(playa != INVALID_PLAYER_ID && set == 1)
{
playavid = GetPlayerVehicleID(playa);
if(ToggledOn1 == 1)//THIS IS LINE 1610
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, VEHICLE_PARAMS_ON, lights1, alarm, doors1, bonnet, boot, objective); // ONLY the engine param was changed to VEHICLE_PARAMS_ON (1)
new set1name[50] = ("Engine Toggled On");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set1name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn1[playa] = 0;
}
else if(ToggledOn1 == 0)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, VEHICLE_PARAMS_OFF, lights1, alarm, doors1, bonnet, boot, objective); // ONLY the engine param was changed to VEHICLE_PARAMS_OFF (1)
new set1name[50] = ("Engine Toggled Off");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set1name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn1[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 2)
{
if(ToggledOn2 == 1)
{
GetVehicleDamageStatus(playavid, panels, doors, lights, tires);
UpdateVehicleDamageStatus(playavid, panels, doors, lights, 15); //Setting tires to 15 will pop them all
new set2name[50] = ("Tire Inflation Toggled On");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set2name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn2[playa] = 0;
}
else if(ToggledOn2 == 0)
{
GetVehicleDamageStatus(playavid, panels, doors, lights, tires);
UpdateVehicleDamageStatus(playavid, panels, doors, lights, tires); //Setting tires to 15 will pop them all
new set2name[50] = ("Tire Inflation Toggled Off");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set2name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn2[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 3)
{
if(ToggledOn3 == 1)
{
SetVehicleHealth(playavid, 350);
new set3name[50] = ("Engine Smoke Toggled On");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set3name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn3[playa] = 0;
}
else if(ToggledOn3 == 0)
{
SetVehicleHealth(playavid, 1000);
new set3name[50] = ("Engine Smoke Toggled Off");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set3name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn3[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 4)
{
if(ToggledOn4 == 1)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, lights1, alarm, VEHICLE_PARAMS_ON, bonnet, boot, objective);
new set4name[50] = ("Car-Doors Lock Toggled On");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set4name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn4[playa] = 0;
}
else if(ToggledOn4 == 0)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, lights1, alarm, VEHICLE_PARAMS_OFF, bonnet, boot, objective);
new set4name[50] = ("Car-Doors Lock Toggled Off");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set4name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn4[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 5)
{
if(ToggledOn5 == 1)
{
GetVehicleParamsCarDoors(playavid, driver, passenger, backleft, backright);
SetVehicleParamsCarDoors(playavid, 1, 1, 1, 1);
new set5name[50] = ("Back-Doors Toggled Open");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set5name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn5[playa] = 0;
}
else if(ToggledOn5 == 0)
{
GetVehicleParamsCarDoors(playavid, driver, passenger, backleft, backright);
SetVehicleParamsCarDoors(playavid, 1, 1, 0, 0);
new set5name[50] = ("Back-Doors Toggled Closed");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set5name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn5[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 6)
{
if(ToggledOn6 == 1)
{
GetVehicleParamsCarDoors(playavid, driver, passenger, backleft, backright);
SetVehicleParamsCarDoors(playavid, 1, 1, 1, 1);
new set6name[50] = ("Front-Doors Toggled Open");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set6name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn6[playa] = 0;
}
else if(ToggledOn6 == 0)
{
GetVehicleParamsCarDoors(playavid, driver, passenger, backleft, backright);
SetVehicleParamsCarDoors(playavid, 0, 0, 1, 1);
new set6name[50] = ("Front-Doors Toggled Closed");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set6name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn6[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 7)
{
if(ToggledOn7 == 1)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, VEHICLE_PARAMS_ON, objective);
new set7name[50] = ("Car-Trunk Toggled Open");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set7name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn7[playa] = 0;
}
else if(ToggledOn7 == 0)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, VEHICLE_PARAMS_OFF, objective);
new set7name[50] = ("Car-Trunk Toggled Closed");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set7name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn7[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 8)
{
if(ToggledOn8 == 1)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, VEHICLE_PARAMS_ON, boot, objective);
new set8name[50] = ("Car-Hood Toggled Open");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set8name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn8[playa] = 0;
}
else if(ToggledOn8 == 0)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, VEHICLE_PARAMS_OFF, boot, objective);
new set8name[50] = ("Car-Hood Toggled Closed");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set8name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn8[playa] = 1;
}
}
else if(playa != INVALID_PLAYER_ID && set == 9)
{
if(ToggledOn9 == 1)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, VEHICLE_PARAMS_ON, alarm, doors1, bonnet, boot, objective);
new set9name[50] = ("Car Lights Toggled On");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set9name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn9[playa] = 0;
}
else if(ToggledOn9 == 0)
{
GetVehicleParamsEx(playavid, engine, lights1, alarm, doors1, bonnet, boot, objective);
SetVehicleParamsEx(playavid, engine, VEHICLE_PARAMS_OFF, alarm, doors1, bonnet, boot, objective);
new set9name[50] = ("Car Lights Toggled Off");
format(sstring, sizeof(sstring), "{0049FF}INFO:{00A5FF}You have forced %s's %s(ID:%d)!",GetPlayerNameEx(playa),set9name, set);
SendClientMessageEx(playerid, COLOR_GRAD1, sstring);
ToggledOn9[playa] = 1;
}
}
else if(set < 1||set > 9)
{
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}INFO:{00A5FF}Invalid Setting ID!"); return 1;
}
}
else
{
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}ERROR:{00A5FF}The specified playerID is not {0049FF}Connected.");
}
}
else
{
SendClientMessageEx(playerid, COLOR_WHITE, "{0049FF}ACCESS:{00A5FF}You are not authorized to used this {0049FF}Command.");
}
return 1;
}
Re: Vehicle Params with variables within a CMD. -