Good day! I am having an problem. my vehicle command is giving out error 035: argument type mismatch (argument 1)
pawn Код:
CMD:veh(playerid, params[])
{
new Vehicle[50], color1, color2;
if(sscanf(params, "s[50]dd", Vehicle, color1, color2)) return SendClientMessage(playerid, COLOR_RED, "[SERVER]: /veh [car] [color1] [color2]");
else
{
new string[128], angle;
new veh = GetVehicleModel(Vehicle); // The problem is here
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
new PVeh = CreateVehicle(veh, X+3, Y, Z, angle, -1, -1, -1);
LinkVehicleToInterior(PVeh, GetPlayerInterior(playerid)); SetVehicleVirtualWorld(PVeh, GetPlayerVirtualWorld(playerid));
format(string, sizeof(string), "[SERVER]: You have spawned a %s. ID: %i. ", VehicleNames[veh - 400], veh);
SendClientMessage(playerid, COLOR_GREEN, string);
PutPlayerInVehicle(playerid, veh, 0);
ChangeVehicleColor(veh, color1, color2);
if(veh < 400 || veh > 611) return SendClientMessage(playerid, COLOR_RED, "Invalid Vehicle ID / Name.");
}
return 1;
}
pawn Код:
new VehicleNames[212][] =
{
"Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster","Stretch","Manana","Infernus",
"Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto","Taxi","Washington","Bobcat","Mr Whoopee","BF Injection",
"Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie",
"Stallion","Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder",
"Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer","PCJ-600","Faggio","Freeway","RC Baron","RC Raider",
"Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR3 50","Walton","Regina",
"Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo","Greenwood",
"Jetmax","Hotring","Sandking","Blista Compact","Police Maverick","Boxville","Benson","Mesa","RC Goblin","Hotring Racer A","Hotring Racer B",
"Bloodring Banger","Rancher","Super GT","Elegant","Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain",
"Nebula","Majestic","Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona","FBI Truck",
"Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex","Vincent","Bullet","Clover",
"Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A",
"Monster B","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer",
"Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer A","Emperor",
"Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C","Andromada","Dodo","RC Cam","Launch","Police Car (LSPD)","Police Car (SFPD)",
"Police Car (LVPD)","Police Ranger","Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer A","Luggage Trailer B",
"Stair Trailer","Boxville","Farm Plow","Utility Trailer"
};
pawn Код:
CMD:veh(playerid, params[])
{
new Vehicle[50], color1, color2;
if(sscanf(params, "s[50]dd", Vehicle, color1, color2)) return SendClientMessage(playerid, COLOR_RED, "[SERVER]: /veh [car] [color1] [color2]");
else
{
new string[128], angle;
new veh = GetVehicleModelIDFromName(Vehicle);
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
new PVeh = CreateVehicle(veh, X+3, Y, Z, angle, -1, -1, -1);
LinkVehicleToInterior(PVeh, GetPlayerInterior(playerid));
SetVehicleVirtualWorld(PVeh, GetPlayerVirtualWorld(playerid));
format(string, sizeof(string), "[SERVER]: You have spawned a %s. ID: %i. ", VehicleNames[veh - 400], veh);
SendClientMessage(playerid, COLOR_GREEN, string);
PutPlayerInVehicle(playerid, veh, 0);
ChangeVehicleColor(veh, color1, color2);
if(veh < 400 || veh > 611) return SendClientMessage(playerid, COLOR_RED, "Invalid Vehicle ID / Name.");
}
return 1;
}
This should work. (I think, haven't tested it)
GetVehicelModel doesn't accept string vehicle names, only vehicleids. Ideally, you'd need an array with all the vehicle names in order to check your input against, and to get the right model id.
That's because GetVehicleModel can only be used with integers. But your variable: "Vehicle" is a string.