car spawn
#1

can some1 help me with this to make it spawn vehicle with colors
like /spawn [name] carcolor1 carcolor2
for example /spawn infernus 1 1
so it spawns with white color
and put you in car, cuz i tryed PutPlayerInVehicle but errors

Код:
//------Includes-------//
#include <a_samp>
//-------------------//
//---------Defines--------//
#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define red 0xFF0000AA
#define green 0x33FF33AA
//--------------------//
new aVehicleNames[212][] =
{
	{"Landstalker"},
	{"Bravura"},
	{"Buffalo"},
	{"Linerunner"},
	{"Perrenial"},
	{"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 1"},
	{"Previon"},
	{"Coach"},
	{"Cabbie"},
	{"Stallion"},
	{"Rumpo"},
	{"RC Bandit"},
	{"Romero"},
	{"Packer"},
	{"Monster"},
	{"Admiral"},
	{"Squalo"},
	{"Seasparrow"},
	{"Pizzaboy"},
	{"Tram"},
	{"Trailer 2"},
	{"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"},
	{"ZR-350"},
	{"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 LA"},
	{"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 Flat"},
	{"Streak Carriage"},
	{"Kart"},
	{"Mower"},
	{"Duneride"},
	{"Sweeper"},
	{"Broadway"},
	{"Tornado"},
	{"AT-400"},
	{"DFT-30"},
	{"Huntley"},
	{"Stafford"},
	{"BF-400"},
	{"Newsvan"},
	{"Tug"},
	{"Trailer 3"},
	{"Emperor"},
	{"Wayfarer"},
	{"Euros"},
	{"Hotdog"},
	{"Club"},
	{"Freight Carriage"},
	{"Trailer 3"},
	{"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"}
};


#endif

enum VehID
{
	VehId
}
new Veh[MAX_PLAYERS][VehID];
public OnPlayerConnect(playerid)
{
    Veh[playerid][VehId] = -1;
    return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{

	new cmd[200], idx;
	cmd = strtok(cmdtext, idx);

	if(strcmp(cmd, "/spawn", true, 4) == 0)
	{


		new String[200];
		new tmp[256];
		new Float:x, Float:y, Float:z;
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) return SendClientMessage(playerid,red, "SYNTAX: /spawn [car name]");
		new vehicle = GetVehicleModelIDFromName(tmp);
		if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid,red, "That vehicle name you have given was not found, please try again!");
		if(Veh[playerid][VehId] == -1)
		{
			new Float:a;
			GetPlayerFacingAngle(playerid, a);
			GetPlayerPos(playerid, x, y, z);

			if(IsPlayerInAnyVehicle(playerid) == 1)
			{
				GetXYInFrontOfPlayer(playerid, x, y, 8);
			}
			else
			{
			    GetXYInFrontOfPlayer(playerid, x, y, 5);
			}

			new PlayersVehicle = CreateVehicle(vehicle, x, y, z, a+90, -1, -1, -1);
			Veh[playerid][VehId] = PlayersVehicle;
			LinkVehicleToInterior(PlayersVehicle, GetPlayerInterior(playerid));
		}
		else
		{
		    DestroyVehicle(Veh[playerid][VehId]);
			new Float:a;
			GetPlayerFacingAngle(playerid, a);
			GetPlayerPos(playerid, x, y, z);

			if(IsPlayerInAnyVehicle(playerid) == 1)
			{
				GetXYInFrontOfPlayer(playerid, x, y, 8);
			}
			else
			{
			    GetXYInFrontOfPlayer(playerid, x, y, 5);
			}

			new PlayersVehicle = CreateVehicle(vehicle, x, y, z, a+90, -1, -1, -1);
			Veh[playerid][VehId] = PlayersVehicle;
			LinkVehicleToInterior(PlayersVehicle, GetPlayerInterior(playerid));
		}
		format(String, sizeof(String), "You have spawned a %s", aVehicleNames[vehicle - 400]);
		SendClientMessage(playerid,green, String);
		return 1;
	}
	return 0;
}
public OnPlayerDisconnect(playerid)
{
	DestroyVehicle(Veh[playerid][VehId]);
	return 1;
}
strtok(const string[], &index)
{
	new length = strlen(string);
	while ((index < length) && (string[index] <= ' '))
	{
		index++;
	}

	new offset = index;
	new result[20];
	while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
	{
		result[index - offset] = string[index];
		index++;
	}
	result[index - offset] = EOS;
	return result;
}

GetVehicleModelIDFromName(vname[])
{
	for(new i = 0; i < 211; i++)
	{
		if(strfind(aVehicleNames[i], vname, true) != -1)
		return i + 400;
	}
	return -1;
}

stock GetXYInFrontOfPlayer(playerid, &Float:x2, &Float:y2, Float:distance)
{
	new Float:a;

	GetPlayerPos(playerid, x2, y2, a);
	GetPlayerFacingAngle(playerid, a);

	if(GetPlayerVehicleID(playerid))
	{
		GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
	}

	x2 += (distance * floatsin(-a, degrees));
	y2 += (distance * floatcos(-a, degrees));
}
Reply
#2

I only have it in ZCMD and dont feel like converting it. Its up to you

pawn Код:
CMD:spawn(playerid, params[])
{
    if(isnull(params)) return Usage(playerid, "/spawn [model]");

    new veh, col[2];
    new tmp[32],string[148];

    if(sscanf(params, "s[32]I(-1)I(-1)", tmp, col[0], col[1])) return Usage(playerid, "/spawn [model] [color] [color]");
    Info[playerid][Car] = veh;

    new vehicle = GetVehicleModelIDFromName(tmp);
    if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid,COLOR_RED, "That vehicle name you have given was not found, please try again!");

    new Float:cPos[4];

    GetPlayerPos(playerid, cPos[0], cPos[1], cPos[2]);
    GetPlayerFacingAngle(playerid, cPos[3]);

    Info[playerid][Car] = CreateVehicle(vehicle, cPos[0], cPos[1], cPos[2], cPos[3], col[0], col[1], -1);
    PutPlayerInVehicle(playerid, Info[playerid][Car], 0);
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)