All pastes #1565611 Raw Edit

Debug FS

public cpp v1 · immutable
#1565611 ·published 2009-09-14 15:44 UTC
rendered paste body
#define FILTERSCRIPT#include <a_samp>#include <arrbit> // http://zeex.pastebin.ca/1565607#include <zcmd>#include <sscanf>#include <foreach>#define COLOR_ERROR    0xFF2200FF#define COLOR_SYSTEM   0xFFFFFFFFItter_Create(Vehicles, MAX_PLAYERS);#define strvalex(%1) \			(('0' <= %1[0] <= '9') ? ((strlen(%1) < 50) ? strval(%1) : -1) : -1)forward DestroyVehicleDelayed(vehicleid);public OnVehicleDeath(vehicleid, killerid){	if (Itter_Remove(Vehicles, vehicleid))	{	    DestroyVehicle(vehicleid);	    return 0;	}	return 1;}public OnPlayerExitVehicle(playerid, vehicleid){	if (Itter_Remove(Vehicles, vehicleid))	{	    DestroyVehicleDelayed(vehicleid);	    return 0;	}	return 1;}public OnVehicleStreamOut(vehicleid, forplayerid){	if (Itter_Remove(Vehicles, vehicleid))	{	    DestroyVehicle(vehicleid);	    return 0;	}	return 1;}public DestroyVehicleDelayed(vehicleid){	if (vehicleid >= 0)	{	    SetTimerEx("DestroyVehicleDelayed", 20000, false, "i", -vehicleid);	}	else	{	    DestroyVehicle(-vehicleid);	}	return 1;}zcmd(pos, byplayerid, params[]){	new	    Float:myX,	    Float:myY,	    Float:myZ,	    msg[50];	    	if (!sscanf(params, "fff", myX, myY, myZ))	{		SetPlayerPos(byplayerid, myX, myY, myZ);		format(msg, sizeof(msg), "Your position set to: %f %f %f", myX, myY, myZ);		SendClientMessage(byplayerid, COLOR_SYSTEM, msg);	}	else	{		GetPlayerPos(byplayerid, myX, myY, myZ);		format(msg, sizeof(msg), "Your position is: %f %f %f", myX, myY, myZ);		SendClientMessage(byplayerid, COLOR_SYSTEM, msg);	}	return 1;}zcmd(skin, byplayerid, params[]){	new	    skin,	    msg[30];	    	if (!sscanf(params, "i", skin))	{	    if (0 <= skin <= 299)	    {		    SetPlayerSkin(byplayerid, skin);		    format(msg, sizeof(msg), "You set your skin to: %d", skin);		    SendClientMessage(byplayerid, COLOR_SYSTEM, msg);	    }	    else	        SendClientMessage(byplayerid, COLOR_ERROR, "Error: Incorrect skin ID");	}	else	{	    format(msg, sizeof(msg), "Your skin is: %d", GetPlayerSkin(byplayerid));	    SendClientMessage(byplayerid, COLOR_SYSTEM, msg);	}	return 1;}zcmd(v, byplayerid, params[]){	static		VehicleNames[][] =		{		    "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel",			"Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus",			"Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam",		    "Esperanto", "Taxi", "Washington", "Bobcat", "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", "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", "Boxvillde", "Benson", "Mesa", "RC Goblin",			"Hotring Racer A", "Hotring Racer B", "Bloodring Banger", "Rancher", "Super GT",			"Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster", "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", "Monster", "Uranus", "Jester", "Sultan", "Stratum",			"Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito",		    "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper",			"Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400",			"News Van", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club",			"Freight Box", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car",		 	"Police Car", "Police Car", "Police Ranger", "Picador", "S.W.A.T", "Alpha",		 	"Phoenix", "Glendale", "Sadler", "Luggage", "Luggage", "Stairs", "Boxville",		 	"Tiller", "Utility Trailer"		};	new	    modelid;	if (!isnull(params))	{		if ((modelid = strvalex(params)) == -1)		{		    new		        i,		        len = strlen(params);		    if (params[len-1] == ' ')			{				while (params[--len] <= ' ') params[len] = '\0';				len = cellmax;			}		    while (i < 212)		    {		        if (!strcmp(VehicleNames[i], params, true, len))		        {		            modelid = 400 + i;		            break;		        }		        i++;		    }		}     	if (400 <= modelid <= 611)	    {	        if (!IsPlayerInAnyVehicle(byplayerid))	        {				new				    msg[50],				    vehicleid,				    Float:myX,				    Float:myY,				    Float:myZ,				    Float:myAngle;				GetPlayerPos(byplayerid, myX, myY, myZ);				GetPlayerFacingAngle(byplayerid, myAngle);				vehicleid = CreateVehicle(modelid, myX, myY, myZ, myAngle, -1, -1, 0);				LinkVehicleToInterior(vehicleid, GetPlayerInterior(byplayerid));			    SetVehicleVirtualWorld(vehicleid, GetPlayerVirtualWorld(byplayerid));			    PutPlayerInVehicle(byplayerid, vehicleid, 0);			    Itter_Add(Vehicles, vehicleid);			    format(msg, sizeof(msg), "You created vehicle: %s [%d]", VehicleNames[modelid-400], modelid);			    SendClientMessage(byplayerid, COLOR_SYSTEM, msg);		    }		    else		        SendClientMessage(byplayerid, COLOR_ERROR, "Error: Leave your current vehicle first");		}		else		    SendClientMessage(byplayerid, COLOR_ERROR, "Error: Theres no such vehicle");	}	else	{	    if (IsPlayerInAnyVehicle(byplayerid))	    {	        new	            msg[50];		    modelid = GetVehicleModel(GetPlayerVehicleID(byplayerid));		    format(msg, sizeof(msg), " Your vehicle is: %s [%d]", VehicleNames[modelid-400], modelid);		    SendClientMessage(byplayerid, COLOR_SYSTEM, msg);		}		else		    SendClientMessage(byplayerid, COLOR_ERROR, "Error: You are not in a vehicle");	}	return 1;}public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){	static	    bitarray(playerRecording, MAX_PLAYERS);	if (newkeys & KEY_SUBMISSION)	{	    if (getbit(playerRecording, playerid))	    {		    if (IsPlayerInAnyVehicle(playerid))		    {		        StartRecordingPlayerData(playerid, PLAYER_RECORDING_TYPE_DRIVER, "tmp_vehicle");		        SendClientMessage(playerid, COLOR_SYSTEM, "Record: started (vehicle)");		    }		    else		    {		        StartRecordingPlayerData(playerid, PLAYER_RECORDING_TYPE_DRIVER, "tmp_onfoot");		        SendClientMessage(playerid, COLOR_SYSTEM, "Record: started (onfoot)");		    }		    falsebit(playerRecording, playerid);		}		else		{		    StopRecordingPlayerData(playerid);		    SendClientMessage(playerid, COLOR_SYSTEM, "Record: stopped");		    truebit(playerRecording, playerid);		}	}	return 1;}