Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- new Vehicles[][] =
- {
- "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 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", "Stratium",
- "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"
- };
- forward Speedometer_Update(playerid);
- forward RefuelVehicle(playerid);
- // This function sets up the speedometer for the given player
- Speedometer_Setup(playerid)
- {
- APlayerData[playerid][SpeedometerTimer] = SetTimerEx("Speedometer_Update", 200, true, "i", playerid);
- return 1;
- }
- // This function cleans up the speedometer for the given player
- Speedometer_Cleanup(playerid)
- {
- // Destroy the speedometer textdraw
- //PlayerTextDrawHide(playerid, SpeedometerText[playerid]);
- PlayerTextDrawHide(playerid, FuelGauge[playerid]);
- PlayerTextDrawHide(playerid, Textdraw0z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw1z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw2z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw5z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw7z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw8z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw9z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw10z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw11z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw12z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw13z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw14z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw15z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw16z[playerid]);
- PlayerTextDrawHide(playerid, Textdraw17z[playerid]);
- //PlayerTextDrawHide(playerid, Textdraw18z[playerid]);
- PlayerTextDrawHide(playerid, Oqvcquiser[playerid]);
- PlayerTextDrawHide(playerid, Lataria[playerid]);
- // Kill the speedometer timer
- KillTimer(APlayerData[playerid][SpeedometerTimer]);
- // Set player speed to 0
- APlayerData[playerid][PlayerSpeed] = 0;
- return 1;
- }
- public Speedometer_Update(playerid)
- {
- new vehicleid, Float:speed_x, Float:speed_y, Float:speed_z, Float:final_speed, speed_string[50], final_speed_int;
- new FuelString[50], Name[24];
- vehicleid = GetPlayerVehicleID(playerid);
- AntiHack(playerid);
- if (GetPlayerState(playerid) == PLAYER_STATE_SPECTATING)
- {
- new OtherPlayer = APlayerData[playerid][SpectateID];
- GetPlayerName(OtherPlayer, Name, sizeof(Name));
- SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(OtherPlayer));
- SetPlayerInterior(playerid, GetPlayerInterior(OtherPlayer));
- if (APlayerData[playerid][SpectateType] == ADMIN_SPEC_TYPE_PLAYER)
- {
- // Check if the target player has entered a vehicle
- if (GetPlayerVehicleSeat(OtherPlayer) != -1)
- {
- // Change spectate mode to vehicle
- PlayerSpectateVehicle(playerid, GetPlayerVehicleID(OtherPlayer));
- APlayerData[playerid][SpectateID] = OtherPlayer;
- APlayerData[playerid][SpectateVehicle] = GetPlayerVehicleID(OtherPlayer);
- APlayerData[playerid][SpectateType] = ADMIN_SPEC_TYPE_VEHICLE;
- }
- }
- else
- {
- if (GetPlayerVehicleSeat(OtherPlayer) == -1)
- {
- PlayerSpectatePlayer(playerid, OtherPlayer);
- SetPlayerInterior(playerid, GetPlayerInterior(OtherPlayer));
- APlayerData[playerid][SpectateID] = OtherPlayer;
- APlayerData[playerid][SpectateType] = ADMIN_SPEC_TYPE_PLAYER;
- }
- }
- }
- if (APlayerData[playerid][PoliceWarnedMe] == true)
- {
- if (GetPlayerWantedLevel(playerid) == 0)
- {
- APlayerData[playerid][ExercitoCanJailMe] = false;
- APlayerData[playerid][PoliceWarnedMe] = false;
- APlayerData[playerid][Value_ExercitoCanJailMe] = 0;
- KillTimer(APlayerData[playerid][Timer_ExercitoCanJailMe]);
- }
- }
- // If the player is inside a vehicle
- if(vehicleid != 0 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
- {
- GetVehicleVelocity(vehicleid, speed_x, speed_y, speed_z);
- final_speed = floatsqroot(((speed_x * speed_x) + (speed_y * speed_y)) + (speed_z * speed_z)) * 158.179;
- final_speed_int = floatround(final_speed, floatround_round);
- APlayerData[playerid][PlayerSpeed] = final_speed_int;
- format(speed_string, 50, "%i KM/H", final_speed_int);
- PlayerTextDrawSetString(playerid, SpeedometerText[playerid], speed_string);
- APlayerData[playerid][StatsMetersDriven] = APlayerData[playerid][StatsMetersDriven] + (final_speed / 7.2);
- //Vehicle Name
- new VehNamed[32];
- format(VehNamed, 32, "%s", GetVehName(vehicleid));
- PlayerTextDrawSetString(playerid, Textdraw15z[playerid], VehNamed);
- if (AVehicleData[vehicleid][Fuel] != 0){
- if ((APlayerData[playerid][PlayerSpeed] > 10) && (AVehicleData[vehicleid][Fuel] > 0) && GetPVarInt(playerid, "consumir_combustivel") < GetTickCount()) {
- AVehicleData[vehicleid][Fuel] = AVehicleData[vehicleid][Fuel] - 1; // Decrease the fuel for this vehicle every time the timer is run
- SetPVarInt(playerid, "consumir_combustivel", GetTickCount() + 500);
- }
- format(FuelString, 64, "%0.0f%", floatdiv(AVehicleData[vehicleid][Fuel], (MaxFuel / 100)));
- PlayerTextDrawSetString(playerid, FuelGauge[playerid], FuelString);
- }
- else
- PlayerTextDrawSetString(playerid, FuelGauge[playerid], "");
- /*
- if ((final_speed_int > 10) && (AVehicleData[vehicleid][Fuel] > 0))
- AVehicleData[vehicleid][Fuel] = AVehicleData[vehicleid][Fuel] - 1; // Decrease the fuel for this vehicle every time the timer is run
- // Construct the fuelgauge
- if ((AVehicleData[vehicleid][Fuel] > 0) && (AVehicleData[vehicleid][Fuel] < 100000))
- format(FuelStatus, 64, "~r~%s~y~%s", "100%~n~99%~n~98%~n~97%", "~n~96%"); // Fuel is between 0% and 10% full
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 1)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 2)))
- format(FuelStatus, 64, "~r~%s~g~~h~%s", "l~n~l~n~l~n~l", "~n~l"); // 1 pt
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 2)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 3)))
- format(FuelStatus, 64, "~r~%s~y~%s~g~~h~%s", "l~n~l~n~l", "~n~l", "~n~l");// 2 pts [-]
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 3)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 4)))
- format(FuelStatus, 64, "~r~%s~g~~h~%s","l~n~l~n~l", "~n~l~n~l");// 2 pts
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 4)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 5)))
- format(FuelStatus, 64, "~r~%s~y~%s~g~~h~%s", "l~n~l", "~n~l", "~n~l~n~l");// 3 pts [-]
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 5)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 6)))
- format(FuelStatus, 64, "~r~%s~g~~h~%s", "l~n~l", "~n~l~n~l~n~l");// 3 pts
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 6)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 7)))
- format(FuelStatus, 64, "~r~%s~y~%s~g~~h~%s", "l", "~n~l", "~n~l~n~l~n~l");//4 pts [-]
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 7)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 8)))
- format(FuelStatus, 64, "~r~%s~g~~h~%s", "l", "~n~l~n~l~n~l~n~l");//4 pts
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 8)) && (AVehicleData[vehicleid][Fuel] < ((MaxFuel / 10) * 9)))
- format(FuelStatus, 64, "~y~%s~g~~h~%s", "99%", "n~98%~n~97%~n~96%");//full [-]
- if ((AVehicleData[vehicleid][Fuel] >= ((MaxFuel / 10) * 9)) && (AVehicleData[vehicleid][Fuel] <= MaxFuel))
- format(FuelStatus, 64, "%s", "100%"); //full
- if (AVehicleData[vehicleid][Fuel] == 0)
- format(FuelStatus, 64, "%s", "100%");
- format(FuelString, 64, "%s", FuelStatus);
- PlayerTextDrawSetString(playerid, FuelGauge[playerid], FuelString);*/
- new engine, lights, alarm, doors, bonnet, boot, objective;
- if (AVehicleData[vehicleid][Fuel] == 0)
- {
- GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
- SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, objective);
- }
- GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
- if(engine == 1)
- {
- PlayerTextDrawColor(playerid, Textdraw12z[playerid], 16711935);
- }
- else
- {
- PlayerTextDrawColor(playerid, Textdraw12z[playerid], -16776961);
- }
- if(lights == 1)
- {
- PlayerTextDrawColor(playerid, Textdraw14z[playerid], 16711935);
- }
- else
- {
- PlayerTextDrawColor(playerid, Textdraw14z[playerid], -16776961);
- }
- if(bonnet == 1)
- {
- PlayerTextDrawColor(playerid, Textdraw11z[playerid], 16711935);
- }
- else
- {
- PlayerTextDrawColor(playerid, Textdraw11z[playerid], -16776961);
- }
- if(alarm == 1)
- {
- PlayerTextDrawColor(playerid, Textdraw13z[playerid], 16711935);
- }
- else
- {
- PlayerTextDrawColor(playerid, Textdraw13z[playerid], -16776961);
- }
- // Enable the TextDraw for this player
- PlayerTextDrawShow(playerid, FuelGauge[playerid]);
- PlayerTextDrawShow(playerid, SpeedometerText[playerid]);
- PlayerTextDrawShow(playerid, Textdraw0z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw1z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw2z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw7z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw8z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw9z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw10z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw11z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw12z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw13z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw14z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw15z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw16z[playerid]);
- PlayerTextDrawShow(playerid, Textdraw17z[playerid]);
- //PlayerTextDrawShow(playerid, Textdraw18z[playerid]);
- if (IsVehicleAirVehicle(vehicleid) == 0 && BarcoVeiculos(vehicleid) == 0)
- if (APlayerData[playerid][PlayerClass] != ClassPolice && APlayerData[playerid][PlayerClass] != ClassExercito)
- CheckPlayerSpeeding(playerid);
- }
- else
- {
- APlayerData[playerid][PlayerSpeed] = 0;
- PlayerTextDrawHide(playerid,Textdraw0z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw1z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw2z[playerid]);
- //PlayerTextDrawHide(playerid,Textdraw5z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw7z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw8z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw9z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw10z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw11z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw12z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw13z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw14z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw15z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw16z[playerid]);
- PlayerTextDrawHide(playerid,Textdraw17z[playerid]);
- //PlayerTextDrawHide(playerid,Textdraw18z[playerid]);
- }
- }
- // This timer-function is called when a player picks up a refuelpickup
- public RefuelVehicle(playerid)
- {
- new RefuelMsg[128];
- // Get the vehicle-id of the player's vehicle
- new vID = GetPlayerVehicleID(playerid);
- // Calculate the amount of fuel that needs to be refuelled
- new Amount = MaxFuel - AVehicleData[vID][Fuel];
- // Calculate the price to refuel
- new RefuelPrice = (Amount * RefuelMaxPrice) / MaxFuel;
- // Check if the player has enough cash
- if (APlayerData[playerid][PlayerMoney] >= RefuelPrice)
- {
- // Refuel the vehicle
- AVehicleData[vID][Fuel] = MaxFuel;
- // Withdraw the money from the player
- Ganhos(playerid, -RefuelPrice, 0);
- // Let the player know he refuelled his vehicle
- format(RefuelMsg, 128, "{FFA500}Você reabasteceu seu veículo por {00FF00}R${FFFFFF}%i", RefuelPrice);
- SCM(playerid, 0xFFFFFFFF, RefuelMsg);
- }
- else
- SCM(playerid, 0xFFFFFFFF, "{FFA500}Você não tem dinheiro suficiente para abastecer seu veículo.");
- // Allow the player to move again
- TogglePlayerControllable(playerid, 1);
- return 1;
- }
- // This function checks if the player is speeding near a speedcamera
- CheckPlayerSpeeding(playerid)
- {
- // Setup local variables
- new Name[24], str[128], Msg[128];
- // Check if the player hasn't been caught speeding recently
- if (APlayerData[playerid][PlayerCaughtSpeeding] == 0)
- {
- // Loop through all speedcameras
- for (new CamID; CamID < MAX_CAMERAS; CamID++)
- {
- // Check if this camera has been created
- if (ACameras[CamID][CamSpeed] != 0)
- {
- // Check if the player is the driver of the vehicle
- if (GetPlayerVehicleSeat(playerid) == 0)
- {
- // Check if the player's speed is greater than the speed allowed by this camera (no need to process a distance-check if not speeding)
- if (APlayerData[playerid][PlayerSpeed] > ACameras[CamID][CamSpeed] + ACameras[CamID][CamSpeed] * 5 / 100)
- {
- // Check if the player is near the camera
- if (IsPlayerInRangeOfPoint(playerid, 40.0, ACameras[CamID][CamX], ACameras[CamID][CamY], ACameras[CamID][CamZ]))
- {
- if(Paused[playerid] == false) {
- if( GetPVarInt( playerid, "TempoComandoAFK" ) > GetTickCount() ) return 0;
- SetPVarInt( playerid, "TempoComandoAFK", GetTickCount() + 5000 );
- // Prevent the player being caught multiple times by the same speed-camera
- APlayerData[playerid][PlayerCaughtSpeeding] = 20;
- // Increase the wanted-level of this player by 1 star
- SetPlayerWantedLevel(playerid, GetPlayerWantedLevel(playerid) + 1);
- // Let the player know he's been caught speeding
- format( str, sizeof str,"{FF0000}Você passou à {FFFFFF}%dKm/h {FF0000}(Permitido: {FFFFFF}%dKm/h +5°/.{FF0000}).", APlayerData[playerid][PlayerSpeed], ACameras[CamID][CamSpeed]);
- SCM( playerid, -1, str );
- // Get the name of the player
- GetPlayerName(playerid, Name, sizeof(Name));
- // Also inform all police players that this player is caught speeding
- format(Msg, 250, "{FF0000}Player {FFFFFF}%s{FF0000} foi pêgo em alta-velocidade. Persiga-o e Multe.", Name);
- Police_SendMessage(Msg);
- format(Msg, 128, "{FF0000}Visto pela última vez nas redondezas de: {FFFFFF}%s", ReturnPlayerZone(playerid));
- Police_SendMessage(Msg);
- }
- }
- }
- }
- }
- }
- }
- else // If the player has been caught before, reduce the value until it's 0 again, then he can be caught again
- APlayerData[playerid][PlayerCaughtSpeeding]--;
- return 1;
- }
- // This function processes anti-hack stuff
- stock AntiHack(playerid)
- {
- // Setup local variables
- new Float:Armour;
- // Skip checking for hacks used by the player if he was reported by the Anti-Hack system already
- if (APlayerData[playerid][AutoReportTime] > 0)
- {
- // Reduce the time so the player can be reported again soon if he doesn't stop using hacks
- APlayerData[playerid][AutoReportTime]--;
- // Exit the function, this skips the hack-checks until the AutoReportTime has reached 0
- // Otherwise the player is reported every half a second until he stops using hacks
- return 1;
- }
- // Check if a filterscript gave some money (or took it) to the player
- if (GetPVarInt(playerid, "PVarMoney") != 0)
- {
- // Add the money to the players account
- APlayerData[playerid][PlayerMoney] = APlayerData[playerid][PlayerMoney] + GetPVarInt(playerid, "PVarMoney");
- // Clear the PVar
- SetPVarInt(playerid, "PVarMoney", 0);
- }
- if (GetPVarInt(playerid, "PVarScore") != 0)
- {
- // Add the money to the players account
- APlayerData[playerid][PlayerScore] = APlayerData[playerid][PlayerScore] + GetPVarInt(playerid, "PVarScore");
- // Clear the PVar
- SetPVarInt(playerid, "PVarScore", 0);
- }
- // Reset the player's money and set it to the stored value in the player's account (do the same for scorepoints)
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid, APlayerData[playerid][PlayerMoney]);
- SetPlayerScore(playerid, APlayerData[playerid][PlayerScore]);
- // Limit the cash that the player can have
- if (APlayerData[playerid][PlayerMoney] > 1900000000)
- APlayerData[playerid][PlayerMoney] = 1900000000;
- // Limit the cash that the player can have below 0
- if (APlayerData[playerid][PlayerMoney] < -1000000)
- APlayerData[playerid][PlayerMoney] = -1000000;
- // Weapon hacks are also neutralized here, except for police players (if they are allowed to have weapons)
- if ((PoliceGetsWeapons == true) && (APlayerData[playerid][PlayerClass] == ClassPolice))
- {
- // Do nothing
- }
- else
- GetPlayerArmour(playerid, Armour);
- if ((Armour > 1.0) && (APlayerData[playerid][PlayerLevel] < 1 && Player[playerid][VIP] == false))
- SendReportToAdmins(playerid, "Hack de Vida", true);
- if (APlayerData[playerid][PlayerSpeed] > 263)
- {
- SendReportToAdmins(playerid, "Speed-hack", true);
- }
- if (APlayerData[playerid][PlayerLevel] < 1 && Player[playerid][VIP] == false)
- {
- if (GetPlayerSpecialAction(playerid) == 2)
- SendReportToAdmins(playerid, "Jetpack-hack", true);
- }
- if(APlayerData[playerid][PlayerLevel] < 1)
- {
- if (APlayerData[playerid][WeaponLicense] == 0)
- {
- switch (GetPlayerWeapon(playerid))
- {
- case 2, 4, 6..18, 23, 26, 27, 29, 31, 34, 35..42: return ResetPlayerWeapons(playerid);
- }
- }
- }
- if (GetPlayerInterior(playerid) == 7) {
- ResetPlayerWeapons(playerid); }
- if (APlayerData[playerid][PlayerScore] < 50)
- {
- switch (GetPlayerWeapon(playerid))
- {
- case 1..5, 6..22, 23..25, 26..42: return ResetPlayerWeapons(playerid);
- }
- }
- if (APlayerData[playerid][PlayerScore] < 400)
- {
- // Let the player know he needs 100 scorepoints
- switch (GetPlayerWeapon(playerid))
- {
- case 28,30: return ResetPlayerWeapons(playerid);
- }
- }
- if (APlayerData[playerid][PlayerScore] < 800)
- {
- // Let the player know he needs 100 scorepoints
- switch (GetPlayerWeapon(playerid))
- {
- case 25,32: return ResetPlayerWeapons(playerid);
- }
- }
- // Detect airbreak hack
- if (GetPlayerVehicleSeat(playerid) == 0)
- {
- // Check if the player is nearly standing still
- if (APlayerData[playerid][PlayerSpeed] < 10)
- {
- // Check if the player switched interior-id's
- if (GetPlayerInterior(playerid) != APlayerData[playerid][PreviousInt])
- {
- // Check if the new interior is the normal world or any mod-shop
- switch (GetPlayerInterior(playerid))
- {
- case 0, 1, 2, 3: // Check interiors 0, 1, 2 and 3 (normal world and all mod-shops)
- {
- // Store the player's current location and interior-id for the next iteration
- GetPlayerPos(playerid, APlayerData[playerid][PreviousX], APlayerData[playerid][PreviousY], APlayerData[playerid][PreviousZ]);
- APlayerData[playerid][PreviousInt] = GetPlayerInterior(playerid);
- // Exit the function
- return 1;
- }
- }
- }
- // Check if the player is still near the same place he was half a second ago
- if (IsPlayerInRangeOfPoint(playerid, 7.5, APlayerData[playerid][PreviousX], APlayerData[playerid][PreviousY], APlayerData[playerid][PreviousZ]))
- {
- }
- else // Send an automated report to the admins so they're informed about it and can take action
- SendReportToAdmins(playerid, "Teleporte Hacker", true);
- }
- }
- // Store the player's current location and interior-id for the next iteration
- GetPlayerPos(playerid, APlayerData[playerid][PreviousX], APlayerData[playerid][PreviousY], APlayerData[playerid][PreviousZ]);
- APlayerData[playerid][PreviousInt] = GetPlayerInterior(playerid);
- return 1;
- }
Add Comment
Please, Sign In to add comment