Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- © Stefantjuh97
- Mail: S.dorst1997@gmail.com
- SAMP Forum name: Stefand.
- Release Date: 18-6-2012
- Version: 3.0
- Changelog V2.0
- Fixed:
- - Headlights keep flashing when you are out of the vehicle.
- Thanks to BrandyPenguin
- - if you did /flash 2 times without /flashoff you had a bugged vehicle.
- Added:
- - Working for ambulance
- - Working for Firetruck
- Changelog V3.0
- Fixed:
- - /flash for turning flash on and /flash for turning it off
- Thanks to BrandyPenguin
- Added:
- - Nothing
- */
- #include <a_samp>
- #include <zcmd>
- #define FILTERSCRIPT
- forward FlasherFunc();
- new obj[MAX_VEHICLES] = { INVALID_OBJECT_ID, ... };
- new obj2[MAX_VEHICLES] = { INVALID_OBJECT_ID, ... };
- new LightPwr[MAX_VEHICLES];
- new Flasher[MAX_VEHICLES] = 0;
- new FlasherState[MAX_VEHICLES];
- new FlashTimer;
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Police Flash lights V2.1");
- print(" By Stefantjuh97");
- print("--------------------------------------\n");
- for (new x=0; x<MAX_VEHICLES; x++)
- {
- LightPwr[x]=1;
- Flasher[x]=0;
- FlasherState[x]=0;
- }
- FlashTimer = SetTimer("FlasherFunc",200,1); // "200" is the speed from the flashing headlights
- return 1;
- }
- public OnFilterScriptExit()
- {
- KillTimer(FlashTimer);
- for (new i = 0; i < MAX_VEHICLES; i++)
- {
- DestroyObject(obj[i]);
- DestroyObject(obj2[i]);
- }
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- DestroyObject(obj[vehicleid]);
- DestroyObject(obj2[vehicleid]);
- Flasher[vehicleid] = 0;
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- DestroyObject(obj[vehicleid]);
- DestroyObject(obj2[vehicleid]);
- Flasher[vehicleid] = 0;
- return 1;
- }
- command(flash, playerid, params[])
- {
- new vehicleid,panels,doors,lights,tires;
- vehicleid = GetPlayerVehicleID(playerid);
- if(!Flasher[vehicleid]) {
- if (GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
- {
- return SendClientMessage(playerid, -1, "* You are not the driver!");
- }
- if (!GetVehicleModel(vehicleid)) return SendClientMessage(playerid, -1, "* You are not in a vehicle!");
- if (IsValidObject(obj[vehicleid]) || IsValidObject(obj2[vehicleid]))
- {
- SendClientMessage(playerid, -1, "You switched off the lights."), DestroyObject(obj[vehicleid]), DestroyObject(obj2[vehicleid]);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- if(LightPwr[vehicleid] == 1)
- UpdateVehicleDamageStatus(vehicleid, panels, doors, 0, tires);
- else
- UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
- Flasher[vehicleid] = 0;
- }
- switch (GetVehicleModel(vehicleid))
- {
- case 596:
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- obj2[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.599999,-0.375000,0.899999,0.000000,0.000000,0.000000);
- AttachObjectToVehicle(obj2[vehicleid], vehicleid, -0.599999,-0.375000,0.899999,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 597:
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- obj2[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.599999,-0.375000,0.899999,0.000000,0.000000,0.000000);
- AttachObjectToVehicle(obj2[vehicleid], vehicleid, -0.599999,-0.375000,0.899999,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 598:
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- obj2[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.524999, -0.300000, 0.899999, 0.000000, 0.000000, 0.000000);
- AttachObjectToVehicle(obj2[vehicleid], vehicleid, -0.524999, -0.300000, 0.899999, 0.000000, 0.000000, 0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 599:
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- obj2[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.524999,0.000000,1.125000,0.000000,0.000000,0.000000);
- AttachObjectToVehicle(obj2[vehicleid], vehicleid, -0.524999,0.000000,1.125000,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 541://bullet
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.375000,0.524999,0.375000,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 426://premier
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.524999,0.749999,0.375000,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 427://enforcer
- {
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 416://Ambulance
- {
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 407://FireTruck
- {
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 560://sultan
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.225000,0.750000,0.449999,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- case 490://FBI
- {
- obj[vehicleid] = CreateObject(18646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(obj[vehicleid], vehicleid, 0.000000,1.125000,0.599999,0.000000,0.000000,0.000000);
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- Flasher[vehicleid] = 1;
- }
- default:
- {
- return SendClientMessage(playerid, -1, "You are not in a CODE 2 compatible police vehicle!");
- }
- }
- return SendClientMessage(playerid, -1, "Lights on, you are now in a CODE 2 run!");
- } else {
- if (IsValidObject(obj[vehicleid]) || IsValidObject(obj2[vehicleid])) {
- SendClientMessage(playerid, -1, "You switched off the lights."), DestroyObject(obj[vehicleid]), DestroyObject(obj2[vehicleid]);
- }
- GetVehicleDamageStatus(vehicleid,panels,doors,lights,tires);
- if(LightPwr[vehicleid] == 1)
- UpdateVehicleDamageStatus(vehicleid, panels, doors, 0, tires);
- else
- UpdateVehicleDamageStatus(vehicleid, panels, doors, 5, tires);
- Flasher[vehicleid] = 0;
- }
- return 1;
- }
- public FlasherFunc() {
- new panelsx,doorsx,lightsx,tiresx;
- for (new p=0; p<MAX_VEHICLES; p++)
- {
- if (Flasher[p] == 1)
- {
- if (FlasherState[p] == 1)
- {
- GetVehicleDamageStatus(p,panelsx,doorsx,lightsx,tiresx);
- UpdateVehicleDamageStatus(p, panelsx, doorsx, 4, tiresx);
- FlasherState[p] = 0;
- }
- else
- {
- GetVehicleDamageStatus(p,panelsx,doorsx,lightsx,tiresx);
- UpdateVehicleDamageStatus(p, panelsx, doorsx, 1, tiresx);
- FlasherState[p] = 1;
- }
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement