#include #include #define RED 0xAA3333AA #define YELLOW 0xFFFF00AA forward CheckWeapons(playerid); forward CheckVehicle(playerid, vehId); forward CheckJetPack(playerid); public OnFilterScriptInit() { print("\n--------------------------------------"); print("Anti-Cheat System by Jujuv (loaded)"); print("--------------------------------------\n"); return 1; } public CheckWeapons(playerid) { new returned; if(playerid != INVALID_PLAYER_ID && (!GetPVarInt(playerid, "admin"))) { new file[250] = "\\Anticheat\\Blacklists\\weapons.ini"; new i, string[250]; for(i = 0; i < dini_Int(file, "Quantity"); i++) { format(string, sizeof(string), "Weapon_%i", i); if(GetPlayerWeapon(playerid) == dini_Int(file, string)) { SendClientMessageToAll(YELLOW, "%s a été banni par le serveur (Cheat Arme)"); CallRemoteFunction("ban", "i", "s", playerid, "Cheat-Arme (Anti-Cheat System)"); returned = 1; } else{returned = 0;} } } else{returned = 0;} return returned; } public CheckVehicle(playerid, vehId) { if(vehId == -2)//Pour utilisez la func' dans une callback tel OnPlayerUpdate(), renseignez "-2" comme second parametre (c-à-d vehId) { vehId = GetPlayerVehicleID(playerid); } new returned; if(vehId && (!GetPVarInt(playerid, "admin"))) { new file[250] = "\\Anticheat\\Blacklists\\vehicles.ini"; new i, string[250]; for(i = 0; i < dini_Int(file, "Quantity"); i++) { format(string, sizeof(string), "Vehicles_%i", i); if(GetVehicleModel(vehId) == dini_Int(file, string)) { CallRemoteFunction("ban", "i", "s", playerid, "Cheat-Vehicule (Anti-Cheat System)"); SendClientMessageToAll(YELLOW, "%s a été banni par le serveur (Cheat Vehicule)"); returned = 1; } else{ returned = 0;} } } else{returned = 0;} return returned; } public CheckJetPack(playerid)//Foncion complétement useless avec les utilitaires cheats actuels { new returned; if(GetPlayerSpecialAction(playerid) == 2) { CallRemoteFunction("ban", "i", "s", playerid, "Cheat-Jetpack (Anti-Cheat System)"); SendClientMessageToAll(YELLOW, "%s a été banni par le serveur (Cheat Jetpack)"); returned = 1; } else{ returned = 0;} return returned; } public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid) { CheckWeapons(issuerid); } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { CheckVehicle(playerid, vehicleid); } public OnPlayerExitVehicle(playerid, vehicleid) { CheckVehicle(playerid, vehicleid); } public OnPlayerStateChange(playerid, newstate, oldstate) { CheckJetPack(playerid); }