Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #define COLOR_GREEN 0x00FF00AA
- #define COLOR_RED 0xFF0000AA
- #define CB:%0(%1) forward %0(%1); public %0(%1)
- new bool:VehicleLocked[MAX_VEHICLES];
- new HackStatus[MAX_PLAYERS];
- new bool:HasWires[MAX_PLAYERS];
- new HackTimer[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- for(new i = 0; i < MAX_VEHICLES; i++)
- VehicleLocked[i] = true;
- return 1;
- }
- public OnFilterScriptExit() return 1;
- public OnPlayerConnect(playerid)
- {
- HackStatus[playerid] = 0;
- HasWires[playerid] = false;
- KillTimer(HackTimer[playerid]);
- HackTimer[playerid] = (-1);
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- HackStatus[playerid] = 0;
- HasWires[playerid] = false;
- KillTimer(HackTimer[playerid]);
- HackTimer[playerid] = (-1);
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys & 512){ //Key "LOOK_BEHIND"
- if(IsPlayerInAnyVehicle(playerid)) return 0;
- if(HackStatus[playerid] > 0) return 0;
- if(!HasWires[playerid]) return SendClientMessage(playerid, COLOR_RED, "* You don't have wires to pick locks!");
- new Float:X, Float:Y, Float:Z;
- for(new v = 0; v < MAX_VEHICLES; v++){
- if(IsIsVehicleStreamedIn(v, playerid)){
- GetVehiclePos(v, X, Y, Z);
- if(IsPlayerInRangeOfPoint(playerid, 3, X, Y, Z)){
- HackTimer[playerid] = SetTimerEx("HackVehicle", 1100, true, "ii", playerid, vehicleid);
- SendClientMessage(playerid, COLOR_GREEN, "* You're picking the locks.");
- break;
- }
- else continue;
- }
- else continue;
- }
- }
- return 1;
- }
- CB:HackVehicle(playerid, vehicleid)
- {
- HackVehicle[playerid]++;
- if(HackVehicle[playerid] >= 5){
- new engine, lights, alarm, doors, bonnet, boot, objective;
- VehicleLocked[vehicleid] = false;
- SendClientMessage(playerid, COLOR_GREEN, "* You've picked the lock. You can now enter the vehicle");
- HackVehicle[playerid] = 0;
- GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
- SetVehicleParamsEx(vehicleid, engine, lights, 1, doors, bonnet, boot, objective);
- }
- return 1;
- }
- CB:AlarmOff(vehicleid)
- {
- new engine, lights, alarm, doors, bonnet, boot, objective;
- GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
- SetVehicleParamsEx(vehicleid, engine, lights, 0, doors, bonnet, boot, objective);
- return 1;
- }
Add Comment
Please, Sign In to add comment