Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ________ .___
- / _____/_____ _____ ____ _____ ____ __| _/____
- / \ ___\__ \ / \_/ __ \ / \ / _ \ / __ |/ __ \
- \ \_\ \/ __ \| Y Y \ ___/| Y Y ( <_> ) /_/ \ ___/
- \______ (____ /__|_| /\___ >__|_| /\____/\____ |\___ >
- \/ \/ \/ \/ \/ \/ \/
- __________ .__ .__
- \______ \ ____ | | ____ ______ | | _____ ___.__.
- | _// _ \| | _/ __ \\____ \| | \__ \< | |
- | | ( <_> ) |_\ ___/| |_> > |__/ __ \\___ |
- |____|_ /\____/|____/\___ > __/|____(____ / ____|
- \/ \/|__| \/\/
- Changelog :
- • 29 Mai 2014 : Ajout des premières commandes/fonctions/includes : base extrêmement tiny
- • 2/3 Juin 2014 : Ajout de l'anti-cheat (version bêta) :
- - Anti cheat vie
- - Anti cheat armure
- - Anti cheat armes
- - Anti cheat argent
- - Anti cheat tuning
- - Anti cheat block munition
- • 4 juin 2014 : Ajout de la commande /immun [Joueur] [Temps] : Autorise les cheats à un joueur pendant temps minute(s)
- Ajout d'un raccourci pour le chat admin (# [Message])
- ___. ._____. .__ .__ __ .__
- \_ |__ |__\_ |__ | | |__| _____/ |_| |__ ____ ________ __ ____ ______
- | __ \| || __ \| | | |/ _ \ __\ | \_/ __ \/ ____/ | \_/ __ \ / ___/
- | \_\ \ || \_\ \ |_| ( <_> ) | | Y \ ___< <_| | | /\ ___/ \___ \
- |___ /__||___ /____/__|\____/|__| |___| /\___ >__ |____/ \___ >____ >
- \/ \/ \/ \/ |__| \/ \/
- */
- #include <a_samp> // SA-MP Team
- #include <a_mysql> // BlueG/Maddinator
- #include <streamer> // Incognito
- #include <callbacks> // Emmet_
- #include <hash> // Mellnik
- #include <s_sniper_fix> // S4T3K
- #include <s_string_ex> // S4T3K
- #include <YSI\y_va> // Y_Less
- #include <YSI\md5> // Y_Less
- #include <YSI\y_iterate> // Y_Less
- #include <YSI\y_colours> // Y_Less
- #include <sscanf2> // Y_Less
- #include <zcmd> // Zeex
- #include <crashdetect> // Zeex
- /*
- ________ _____.__ .__ __ .__
- \______ \ _____/ ____\__| ____ |__|/ |_|__| ____ ____ ______
- | | \_/ __ \ __\| |/ \| \ __\ |/ _ \ / \ / ___/
- | ` \ ___/| | | | | \ || | | ( <_> ) | \\___ \
- /_______ /\___ >__| |__|___| /__||__| |__|\____/|___| /____ >
- \/ \/ \/ \/ \/
- */
- #if !defined isnull
- #define (isnull(%0)) ((%0[0]) == ('\0'))
- #endif
- #define SCM SendClientMessage
- #define SCMToAll SendClientMessageToAll
- #define SendClientMessage SendClientMessageEx
- #define SendClientMessageToAll SendClientMessageToAllEx
- #define printf printfEx
- #define GameTextForPlayer GameTextForPlayerEx
- #define GetPlayerIP GetPlayerIp
- // Anti-cheat
- #define SetPlayerHealth AC_SetPlayerHealth
- #define SetPlayerArmour AC_SetPlayerArmour
- #define GivePlayerWeapon AC_GivePlayerWeapon
- #define ResetPlayerWeapons AC_ResetPlayerWeapons
- #define GivePlayerMoney AC_GivePlayerMoney
- #define ResetPlayerMoney AC_ResetPlayerMoney
- #define AddVehicleComponent AC_AddVehicleComponent
- #define CHEAT_RANGE 50 // Fréquence en ms d'immunité anti-cheat (plus bas possible pour de meilleurs résultats, mais ne pas trop baisser sur serveurs faibles performances)
- #define CMD_SAVE "/vehsave"
- #define SYNTAX 0x33CCFFFF
- #define NORMAL_TEXT_1 0xE6E6E6E6
- #define NORMAL_TEXT_2 0xC8C8C8C8
- #define NORMAL_TEXT_3 0xAAAAAAAA
- #define NORMAL_TEXT_4 0x8C8C8C8C
- #define NORMAL_TEXT_5 0x6E6E6E6E
- #define SQL_HOST "mysql2.alwaysdata.com"
- #define SQL_USER "private"
- #define SQL_DATA "private"
- #define SQL_PASS "private"
- #define JAIL_X 0.0
- #define JAIL_Y 0.0
- #define JAIL_Z 0.0
- #define JAIL_VW 0
- #define D_CREDITS 1
- /*
- ___________ _____
- \_ _____/ ____ __ __ _____ / _ \___________________ ___.__. ______
- | __)_ / \| | \/ \ / /_\ \_ __ \_ __ \__ \< | |/ ___/
- | \ | \ | / Y Y \ / | \ | \/| | \// __ \\___ |\___ \
- /_______ /___| /____/|__|_| / \____|__ /__| |__| (____ / ____/____ >
- \/ \/ \/ \/ \/\/ \/
- */
- enum pInfo
- {
- pLevel,
- pAdmin,
- pPass[33],
- pMail,
- pHBan,
- pJailTime,
- Float:pJail[3],
- pMutetime,
- pAFKd,
- // Anti-Cheat (rajouter des variables joueur au dessus si besoin pour éviter les confusions)
- bool:cArgent,
- bool:cVie,
- bool:cArmure,
- bool:cArmes,
- bool:cTuning,
- bool:cBlock,
- Float:oVie,
- Float:oArmure,
- oArme[12],
- oArgent,
- };
- new
- PlayerInfo[MAX_PLAYERS][pInfo];
- /*
- ____ ____ .__ ___. .__
- \ \ / /____ _______|__|____ \_ |__ | | ____ ______
- \ Y /\__ \\_ __ \ \__ \ | __ \| | _/ __ \ / ___/
- \ / / __ \| | \/ |/ __ \| \_\ \ |_\ ___/ \___ \
- \___/ (____ /__| |__(____ /___ /____/\___ >____ >
- \/ \/ \/ \/ \/
- .__ ___. .__
- ____ | | ____\_ |__ _____ | | ____ ______
- / ___\| | / _ \| __ \\__ \ | | _/ __ \ / ___/
- / /_/ > |_( <_> ) \_\ \/ __ \| |_\ ___/ \___ \
- \___ /|____/\____/|___ (____ /____/\___ >____ >
- /_____/ \/ \/ \/ \/
- */
- static MySQL, m_banid;
- new pid, raison[145], query[256];
- /*
- _________ .__ .__ ___. __
- \_ ___ \_____ | | | |\_ |__ _____ ____ | | __ ______
- / \ \/\__ \ | | | | | __ \\__ \ _/ ___\| |/ / / ___/
- \ \____/ __ \| |_| |_| \_\ \/ __ \\ \___| < \___ \
- \______ (____ /____/____/___ (____ /\___ >__|_ \/____ >
- \/ \/ \/ \/ \/ \/ \/
- _____ _____.__ .__ .__ .__
- _____/ ____\/ ____\__| ____ |__| ____ | | | | ____ ______
- / _ \ __\\ __\| |/ ___\| |/ __ \| | | | _/ __ \ / ___/
- ( <_> ) | | | | \ \___| \ ___/| |_| |_\ ___/ \___ \
- \____/|__| |__| |__|\___ >__|\___ >____/____/\___ >____ >
- \/ \/ \/ \/
- */
- main()
- {
- printf("Gamemode roleplay beta testing.");
- return 1;
- }
- public OnGameModeInit()
- {
- MySQL = mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
- if(mysql_errno() != 0)
- {
- printf("Problème de connexion à la base de données MySQL, deuxième tentative... [pid SQL : Hote : %s, User : %s, DB : %s, Pass : %s]", SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
- mysql_reconnect(MySQL);
- if(mysql_errno() != 0)
- {
- mysql_close(MySQL);
- return printf("Deuxième connexion impossible, base de données SQL non chargée.");
- }
- else printf("Deuxième connexion SQL réussie, début du chargement des données...");
- }
- else printf("Connexion SQL réussie, début du chargement des données...");
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- new ip[17], country[50];
- #pragma unused country
- GetPlayerIp(playerid, ip, sizeof(ip));
- format(query, sizeof(query), "SELECT * FROM Banlist WHERE nom = '%s' OR ip = '%s'", GetName(playerid), ip);
- mysql_tquery(MySQL, query, "OnBanInfoConnect", "i", playerid);
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- if(PlayerInfo[playerid][pJailTime] <= gettime()) Unjail(playerid);
- else UpdateTime(playerid);
- if(PlayerInfo[playerid][pMutetime] >= gettime()) Unmute(playerid);
- // Anti cheat
- new Float:vie, Float:armure, arme[2][12], argent;
- GetPlayerHealth(playerid, vie);
- GetPlayerArmour(playerid, armure);
- argent = GetPlayerMoney(playerid);
- for(new s = 0; s < 12; s++)
- {
- GetPlayerWeaponData(playerid, s, arme[0][s], arme[1][s]);
- if(arme[0][s] != PlayerInfo[playerid][oArme][s] && !PlayerInfo[playerid][cArmes]) BanSQL(playerid, -2, "Cheat - D-GUN");
- PlayerInfo[playerid][oArme][s] = arme[0][s];
- }
- if( (vie != PlayerInfo[playerid][oVie]) && !PlayerInfo[playerid][cVie]) BanSQL(playerid, -2, "Cheat - vie");
- if( (armure != PlayerInfo[playerid][oArmure]) && !PlayerInfo[playerid][cArmure]) BanSQL(playerid, -2, "Cheat - Armure");
- if( (argent != PlayerInfo[playerid][oArgent]) && !PlayerInfo[playerid][cArgent]) BanSQL(playerid, -2, "Cheat - Argent");
- PlayerInfo[playerid][oVie] = vie;
- PlayerInfo[playerid][oArmure] = armure;
- PlayerInfo[playerid][oArgent] = argent;
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- if((text[0] == '#') && (PlayerInfo[playerid][pAdmin] < 1))
- {
- new ttext[144];
- strmid(ttext, text, 1, strlen(text));
- return ABroadCast(1, -1, ""DEEP_SKY_BLUE_2"[Admin chat]"DEEP_SKY_BLUE_3"[%s - %s]"DEEP_SKY_BLUE_4" [%s]", GetName(playerid), GetARank(playerid), ttext);
- }
- //if(!CheckValid(text)) ABroadCast(1, 0xFF0000FF, "[Invalide]"FIREBRICK" %s (%d) a prononcé un mot jugé invalide par l'anti-pub.", GetName(playerid), playerid);
- ProxDetectorEx(20.0, playerid, NORMAL_TEXT_1, NORMAL_TEXT_2, NORMAL_TEXT_3, NORMAL_TEXT_4, NORMAL_TEXT_5, "%s : %s", MakeRP(GetName(playerid)), text);
- return 1;
- }
- public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
- {
- new Float:health, Float:armour;
- GetPlayerHealth(playerid, health);
- GetPlayerArmour(playerid, armour);
- if(armour >= amount) Enable_safe_armour(playerid);
- else Enable_safe_health(playerid);
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- if(!PlayerInfo[playerid][cTuning] && GetPlayerInterior(playerid) == 0) BanSQL(playerid, -2, "Cheat - Tuning");
- return 1;
- }
- /*
- _________ .___
- \_ ___ \ ____ _____ _____ _____ ____ __| _/____ ______
- / \ \/ / _ \ / \ / \\__ \ / \ / __ |/ __ \ / ___/
- \ \___( <_> ) Y Y \ Y Y \/ __ \| | \/ /_/ \ ___/ \___ \
- \______ /\____/|__|_| /__|_| (____ /___| /\____ |\___ >____ >
- \/ \/ \/ \/ \/ \/ \/ \/
- */
- CMD:credits(playerid, params[])
- {
- return ShowPlayerDialog(playerid, D_CREDITS, DIALOG_STYLE_MSGBOX, "Crédits", "{9ACD32}S4T3K/Soufiane{FFFFFF} : Gamemode\n{9ACD32}David Montana{FFFFFF} : Idées/Mapping\n{9ACD32}BlueG/Maddinat0r{FFFFFF} : MySQL plugin\n{9ACD32}ZeeX{FFFFFF} : ZCMD/Fix sur y_va\n{9ACD32}Y_Less{FFFFFF} : YSI/sscanf/Whirlpool\n{9ACD32}Slice{FFFFFF} : Mailer\n{9ACD32}Emmet_{FFFFFF} : Nouvelles callbacks\n{9ACD32}Incognito{FFFFFF} : Streamer\n{9ACD32}Mellnik{FFFFFF} : Hash plugin\n{9ACD32}Team SA-MP{FFFFFF} : SAMP\n", "OK", "");
- }
- CMD:ban(playerid, params[])
- {
- if(sscanf(params, "us[145]", pid, raison)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /ban [Joueur] [Raison]");
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- if(PlayerInfo[pid][pAdmin] > PlayerInfo[playerid][pAdmin]) return SendNoAdMessage(playerid);
- BanSQL(pid, playerid, raison);
- return 1;
- }
- CMD:fban(playerid, params[])
- {
- if(sscanf(params, "us[145]", pid, raison)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /ban [Joueur] [Raison]");
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- return SCMToAll(0xFF0000FF, "[Admin]"FIREBRICK" Le joueur %s (%d) a été banni de façon permanente par un Administrateur"RED_4" [%s].",
- GetName(playerid), playerid, raison);
- }
- CMD:hban(playerid, params[])
- {
- new heures;
- if(sscanf(params, "uds[145]", pid, heures, raison)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /banh [Joueur] [Heures] [Raison]");
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- if(PlayerInfo[pid][pAdmin] > PlayerInfo[playerid][pAdmin]) return SendNoAdMessage(playerid);
- BanSQL(pid, playerid, raison, true, heures);
- return 1;
- }
- CMD:a(playerid, params[])
- {
- if(isnull(params)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /a(dmin) [Message]");
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- return ABroadCast(1, -1, ""DEEP_SKY_BLUE_2"[Admin chat]"DEEP_SKY_BLUE_3"[%s - %s]"DEEP_SKY_BLUE_4" [%s]", GetName(playerid), GetARank(playerid), params);
- }
- CMD:admin(playerid, params[]) { return cmd_a(playerid, params); }
- CMD:unban(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 2) return SendNoAMessage(playerid);
- new nom[MAX_PLAYER_NAME+1];
- if(sscanf(params, "s[MAX_PLAYER_NAME+1]", nom)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /unban [Nom du compte]");
- mysql_format(MySQL, query, sizeof(query), "DELETE FROM Banlist WHERE nom = '%e'", nom);
- mysql_tquery(MySQL, query, "OnUnbanDone", "iis", playerid, 1, nom);
- return 1;
- }
- CMD:unbanid(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 2) return SendNoAMessage(playerid);
- new banid;
- if(sscanf(params, "d", banid)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /unbanid [ID du ban]");
- format(query, sizeof(query), "DELETE FROM Banlist WHERE pid = '%d'", banid);
- mysql_tquery(MySQL, query, "OnUnbanDone", "iisi", playerid, 2, "", banid);
- return 1;
- }
- CMD:unbanip(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 2) return SendNoAMessage(playerid);
- new ip[17];
- if(sscanf(params, "s[17]", ip)) return SCM(playerid, 0x33CFFFFF, "[USAGE]{FFFFFF} /unbanip [IP bannie]");
- mysql_format(MySQL, query, sizeof(query), "DELETE FROM Banlist WHERE ip = '%e'", ip);
- mysql_tquery(MySQL, query, "OnUnbanDone", "iisis", playerid, 2, "", -1, ip);
- return 1;
- }
- CMD:kick(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- if(sscanf(params, "us[145]", pid, raison)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /kick [Joueur] [Raison]");
- if(PlayerInfo[pid][pAdmin] > PlayerInfo[playerid][pAdmin]) return SendNoAdMessage(playerid);
- KickSQL(pid, playerid, raison);
- return 1;
- }
- CMD:jail(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- new temps;
- if(sscanf(params, "uds[145]", pid, temps, raison)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /jail [Joueur] [Temps (minutes)] [Raison]");
- if(PlayerInfo[pid][pAdmin] > PlayerInfo[playerid][pAdmin]) return SendNoAdMessage(playerid);
- JailSQL(pid, playerid, temps, raison);
- return 1;
- }
- CMD:unjail(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- if(sscanf(params, "u", pid)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /unjail [Joueur]");
- Unjail(pid);
- return 1;
- }
- CMD:mute(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- new temps;
- if(sscanf(params, "uds[145]", pid, temps, raison)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /mute [Joueur] [Temps (minutes)] [Raison]");
- if(PlayerInfo[pid][pAdmin] > PlayerInfo[playerid][pAdmin]) return SendNoAdMessage(playerid);
- MuteSQL(pid, playerid, temps, raison);
- return 1;
- }
- CMD:unmute(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] < 1) return SendNoAMessage(playerid);
- if(sscanf(params, "u", pid)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /unmute [Joueur]");
- Unmute(pid);
- return 1;
- }
- CMD:demute(playerid, params[]) { return cmd_unmute(playerid, params); }
- CMD:veh(playerid, params[])
- {
- new vehname[41], vehid, col1, col2, respawn, Float:pos[4];
- col1 = 1, col2 = 1, respawn = 20;
- if(sscanf(params, "s[41]DDD", vehname, col1, col2, respawn)) return SCM(playerid, SYNTAX, "[USAGE]{FFFFFF} /veh [ModelID/Nom] [Couleur 1 (optionnel)] [Couleur 2 (optionnel)] [Temps de respawn (Optionnel)]");
- vehid = GetVehicleModelIDFromName(vehname);
- GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
- GetPlayerFacingAngle(playerid, pos[3]);
- new veh = CreateVehicle(vehid, floatadd(pos[0], 1.5), floatadd(pos[1], 1.5), floatadd(pos[2], 1.5), pos[3], col1, col2, respawn);
- PutPlayerInVehicle(playerid, veh, 0);
- return SCM(playerid, -1, ""RED"[Admin]"WHITE" Tu as créé un véhicule, cependant il est considéré comme temporaire ! Il faut utiliser %s pour le sauvegarder dans la base de données !" CMD_SAVE);
- }
- /*
- _____ __ .__
- _/ ____\____ ____ _____/ |_|__| ____ ____ ______
- \ __\/ _ \ / \_/ ___\ __\ |/ _ \ / \ / ___/
- | | ( <_> ) | \ \___| | | ( <_> ) | \\___ \
- |__| \____/|___| /\___ >__| |__|\____/|___| /____ >
- \/ \/ \/ \/
- */
- stock BanSQL(playerid, adminid = -1, const reason[] = "", bool:temp = false, heures = 0)
- {
- if(!IsPlayerConnected(playerid)) return SendNoCMessage(adminid, playerid);
- new date[6], pIP[17], name[MAX_PLAYER_NAME];
- if(adminid == -2) name = "Anti cheat";
- else name = GetName(adminid);
- getdate(date[0], date[1], date[2]);
- gettime(date[3], date[4], date[5]);
- GetPlayerIp(playerid, pIP, 17);
- if(temp) PlayerInfo[playerid][pHBan] = gettime() + heures*3600;
- mysql_format(MySQL, query, sizeof(query), "INSERT INTO Banlist VALUES(NULL, '%s', '%s', '%e', '%s', '%d-%d-%d %d:%d:%d', %d', '%d')",
- GetName(playerid), name, reason, pIP, date[0], date[1], date[2], date[3], date[4], date[5], temp, heures);
- mysql_tquery(MySQL, query);
- format(query, sizeof(query), "SELECT `pid` FROM Banlist WHERE `nom` = '%s' LIMIT 1", GetName(playerid));
- mysql_tquery(MySQL, query, "OnBanInfoFound", "i", playerid);
- new rank[30];
- rank = GetARank(playerid);
- toupper(rank[0]);
- if(temp)
- {
- SCMToAll(0xFF0000FF, "[Admin]"FIREBRICK" Le joueur %s (%d) a été banni par un Administrateur pendant %d heures"RED_4" [%s].",
- GetName(playerid), playerid, heures, reason);
- ABroadCast(1, 0xFF0000FF, "[Ban]"FIREBRICK" Le joueur %s (%d) a été banni par %s"RED3"[%s]"FIREBRICK" pendant %d heures"RED_4" [%s].",
- GetName(playerid), playerid, name, rank, heures, reason);
- KickWithMessage(playerid, 0xFF0000FF, "[Ban]"FIREBRICK" Vous avez été banni pour %d heures du serveur [%s].\nSi vous pensez que c'est une erreur, prenez un screen de ce message et postez une demande de débanissement. [BAN pid : %d]",
- heures, reason, m_banid);
- }
- else
- {
- SCMToAll(0xFF0000FF, "[Admin]"FIREBRICK" Le joueur %s (%d) a été banni de façon permanente par un Administrateur"RED_4" [%s].",
- GetName(playerid), playerid, reason);
- ABroadCast(1, 0xFF0000FF, "[Ban]"FIREBRICK" Le joueur %s (%d) a été banni par %s"RED3"[%s]"FIREBRICK" de façon permanente"RED_4" [%s].",
- GetName(playerid), playerid, name, rank, reason);
- KickWithMessage(playerid, 0xFF0000FF, "[Ban]"FIREBRICK" Vous avez été banni de façon permanente du serveur "RED_4"[%s].\nSi vous pensez que c'est une erreur, prenez un screen de ce message et postez une demande de débanissement."BROWN_4"[BAN pid : %d]",
- heures, reason, m_banid);
- }
- return 1;
- }
- stock KickSQL(playerid, adminid = -1, const reason[] = "")
- {
- if(!IsPlayerConnected(playerid)) return SendNoCMessage(adminid, playerid);
- new date[6], adminName[MAX_PLAYER_NAME];
- if(adminid == -2) adminName = "Anti cheat";
- else adminName = "Anti cheat";
- getdate(date[0], date[1], date[2]);
- gettime(date[3], date[4], date[5]);
- mysql_format(MySQL, query, sizeof(query), "INSERT INTO Kicklog VALUES(NULL, '%s', '%s', '%e', '%d-%d-%d %d:%d:%d')",
- GetName(playerid), adminName, reason, date[0], date[1], date[2], date[3], date[4], date[5]);
- mysql_tquery(MySQL, query);
- new rank[30];
- rank = GetARank(playerid);
- toupper(rank[0]);
- SCMToAll(0xFF0000FF, "[Admin]"FIREBRICK" Le joueur %s (%d) a été kické du serveur par un Administrateur"RED_4" [%s].", GetName(playerid), playerid, reason);
- SetTimerEx("kickPublic", 1, false, "i", playerid);
- return ABroadCast(1, 0xFF0000FF, "[Kick]"FIREBRICK" Le joueur %s (%d) a été kické du serveur par %s [%s]"RED_4" [%s].", GetName(playerid), playerid, adminName, rank, reason);
- }
- stock JailSQL(playerid, adminid, temps, const reason[])
- {
- if(!IsPlayerConnected(playerid)) return SendNoCMessage(adminid, playerid);
- new date[6];
- getdate(date[0], date[1], date[2]);
- gettime(date[3], date[4], date[5]);
- mysql_format(MySQL, query, sizeof(query), "INSERT INTO Jaillog VALUES(NULL, '%s', '%s', '%e', '%d', '%d-%d-%d %d:%d:%d')",
- GetName(playerid), GetName(adminid), reason, temps, date[0], date[1], date[2], date[3], date[4], date[5]);
- mysql_tquery(MySQL, query);
- new rank[30];
- rank = GetARank(playerid);
- toupper(rank[0]);
- PlayerInfo[playerid][pJailTime] = gettime() + temps*60;
- GetPlayerPos(playerid, PlayerInfo[playerid][pJail][0], PlayerInfo[playerid][pJail][1], PlayerInfo[playerid][pJail][2]);
- SetPlayerPos(playerid, JAIL_X, JAIL_Y, JAIL_Z);
- SetPlayerVirtualWorld(playerid, JAIL_VW);
- SCMToAll(0xFF0000FF, "[Admin]"FIREBRICK" Le joueur %s (%d) a été emprisonné pour %d minutes par un Administrateur"RED_4" [%s].", GetName(playerid), playerid, temps, reason);
- return ABroadCast(1, 0xFF0000FF, "[Jail]"FIREBRICK" Le joueur %s (%d) a été emprisonné pour %d minutes par %s [%s]"RED_4" [%s].", GetName(playerid), playerid, GetName(adminid), rank, reason);
- }
- stock MuteSQL(playerid, adminid, temps, const reason[])
- {
- if(!IsPlayerConnected(playerid)) return SendNoCMessage(adminid, playerid);
- new date[6];
- getdate(date[0], date[1], date[2]);
- gettime(date[3], date[4], date[5]);
- mysql_format(MySQL, query, sizeof(query), "INSERT INTO Mutelog VALUES(NULL, '%s', '%s', '%e', '%d', '%d-%d-%d %d:%d:%d')",
- GetName(playerid), GetName(adminid), reason, temps, date[0], date[1], date[2], date[3], date[4], date[5]);
- mysql_tquery(MySQL, query);
- new rank[30];
- rank = GetARank(playerid);
- toupper(rank[0]);
- PlayerInfo[playerid][pMutetime] = gettime() + temps*60;
- SCMToAll(0xFF0000FF, "[Admin]"FIREBRICK" Le joueur %s (%d) a été mute pour %d minutes par un Administrateur"RED_4" [%s].", GetName(playerid), playerid, temps, reason);
- return ABroadCast(1, 0xFF0000FF, "[Mute]"FIREBRICK" Le joueur %s (%d) a été mute pour %d minutes par %s [%s]"RED_4" [%s].", GetName(playerid), playerid, GetName(adminid), rank, reason);
- }
- stock KickWithMessage(playerid, const couleur, const reason[], va_args<>)
- {
- static out[145];
- va_format(out, sizeof(out), reason, va_start<3>);
- SCM(playerid, couleur, out);
- SetTimerEx("KickPublic", 1, false, "i", playerid);
- return 1;
- }
- stock SendClientMessageEx(playerid, couleur, const message[], va_args<>)
- {
- static out[145];
- va_format(out, sizeof(out), message, va_start<3>);
- return SCM(playerid, couleur, out);
- }
- stock SendClientMessageToAllEx(couleur, const message[], va_args<>)
- {
- static out[145];
- va_format(out, sizeof(out), message, va_start<2>);
- return SCMToAll(couleur, out);
- }
- stock SendClientMessageToAllExept(exceptid, const couleur, const message[], va_args<>)
- {
- if(!IsPlayerConnected(exceptid)) return 1;
- static out[145];
- va_format(out, sizeof(out), message, va_start<3>);
- foreach(new p : Player)
- {
- if(p == exceptid) continue;
- SCM(p, couleur, message);
- }
- return 1;
- }
- stock GameTextForPlayerEx(playerid, const message[], temps, style, va_args<>)
- {
- static out[145];
- va_format(out, sizeof(out), message, va_start<4>);
- return GameTextForPlayer(playerid, out, temps, style);
- }
- stock printfEx(const string[], va_args<>)
- {
- static out[512];
- va_format(out, strlen(string), string, va_start<1>);
- return printf(out);
- }
- stock ABroadCast(level, const couleur, const string[], va_args<>)
- {
- static out[145];
- va_format(out, sizeof(out), string, va_start<3>);
- foreach(new p : Player)
- {
- if(PlayerInfo[p][pAdmin] >= level) SCM(p, couleur, out);
- }
- return 1;
- }
- stock SendNoAMessage(playerid)
- {
- return SCM(playerid, 0xFF0000FF, "[Erreur]"FIREBRICK"Vous n'êtes pas autorisé à utiliser cette commande.");
- }
- stock SendNoCMessage(playerid, ucid)
- {
- return SCM(playerid, 0xFF0000FF, "[Erreur]{FFFFFF} Le joueur %d n'est pas connecté.", ucid);
- }
- stock SendNoAdMessage(playerid)
- {
- return SCM(playerid, 0xFF0000FF, "[Erreur]{FFFFFF} Vous ne pouvez pas sanctionner administrativement un membre du staff d'un rang plus haut que le vôtre !");
- }
- stock GetName(playerid)
- {
- new kfjqlkheizgfbsmlz[MAX_PLAYER_NAME];
- GetPlayerName(playerid, kfjqlkheizgfbsmlz, sizeof(kfjqlkheizgfbsmlz));
- return kfjqlkheizgfbsmlz;
- }
- stock ProxDetector(Float:radi, playerid, const couleur, const message[], va_args<>)
- {
- static out[145];
- new Float:posi[3];
- GetPlayerPos(playerid, posi[0], posi[1], posi[2]);
- va_format(out, sizeof(out), message, va_start<4>);
- foreach(new p : Player)
- {
- if(IsPlayerInRangeOfPoint(p, radi, posi[0], posi[1], posi[2]) && (GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(p))) SCM(p, couleur, out);
- }
- return 1;
- }
- stock ProxDetectorEx(Float:radi, playerid, col1, col2, col3, col4, col5, const message[], va_args<>)
- {
- new Float:posx, Float:posy, Float:posz;
- new Float:oldposx, Float:oldposy, Float:oldposz;
- new Float:tempposx, Float:tempposy, Float:tempposz;
- static out[145];
- va_format(out, sizeof(out), message, va_start<8>);
- GetPlayerPos(playerid, oldposx, oldposy, oldposz);
- foreach(new p : Player)
- {
- GetPlayerPos(p, posx, posy, posz);
- tempposx = (oldposx -posx);
- tempposy = (oldposy -posy);
- tempposz = (oldposz -posz);
- //printff("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
- if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
- {
- SendClientMessage(p, col1, out);
- }
- else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
- {
- SendClientMessage(p, col2, out);
- }
- else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
- {
- SendClientMessage(p, col3, out);
- }
- else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
- {
- SendClientMessage(p, col4, out);
- }
- else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
- {
- SendClientMessage(p, col5, out);
- }
- }
- return 1;
- }
- stock GetARank(playerid)
- {
- new rank[30];
- switch(PlayerInfo[playerid][pAdmin])
- {
- case 0: rank = "joueur";
- case 1: rank = "modérateur";
- case 2..4: rank = "administrateur";
- case 5: rank = "administrateur général";
- case 6: rank = "super administrateur";
- case 7: rank = "administrateur suprême";
- case 8: rank = "head admin";
- }
- return rank;
- }
- stock MakeRP(username[])
- {
- if(cfind(username, '_')) cdel(username, '_');
- return username;
- }
- /*stock CheckValid(const text[])
- {
- for(new t = 0; t < sizeof(InvalidWords); t++)
- {
- if(strfind(text, InvalidWords[t]) != -1) return false;
- }
- return true;
- }*/
- stock SplitDateTime(datetime[], &annee, &mois, &jour, &heure, &minute, &seconde)
- {
- new tmp[20];
- strmid(tmp, datetime, 0, 4);
- strdel(datetime, 0, 5);
- annee = strval(tmp);
- strmid(tmp, datetime, 0, 2);
- strdel(datetime, 0, 3);
- mois = strval(tmp);
- strmid(tmp, datetime, 0, 2);
- strdel(datetime, 0, 3);
- jour = strval(tmp);
- strmid(tmp, datetime, 0, 2);
- strdel(datetime, 0, 3);
- heure = strval(tmp);
- strmid(tmp, datetime, 0, 2);
- strdel(datetime, 0, 3);
- minute = strval(tmp);
- strmid(tmp, datetime, 0, 2);
- strdel(datetime, 0, 3);
- seconde = strval(tmp);
- }
- // SSCANF:vehicle - Y_Less
- stock GetVehicleModelIDFromName(const string[])
- {
- if ('0' <= string[0] <= '9')
- {
- new
- ret = strval(string);
- if (400 <= ret <= 611)
- {
- return ret;
- }
- }
- else if (!strcmp(string, "Landstalker")) return 400;
- else if (!strcmp(string, "Bravura")) return 401;
- else if (!strcmp(string, "Buffalo")) return 402;
- else if (!strcmp(string, "Linerunner")) return 403;
- else if (!strcmp(string, "Perenniel")) return 404;
- else if (!strcmp(string, "Sentinel")) return 405;
- else if (!strcmp(string, "Dumper")) return 406;
- else if (!strcmp(string, "Firetruck")) return 407;
- else if (!strcmp(string, "Trashmaster")) return 408;
- else if (!strcmp(string, "Stretch")) return 409;
- else if (!strcmp(string, "Manana")) return 410;
- else if (!strcmp(string, "Infernus")) return 411;
- else if (!strcmp(string, "Voodoo")) return 412;
- else if (!strcmp(string, "Pony")) return 413;
- else if (!strcmp(string, "Mule")) return 414;
- else if (!strcmp(string, "Cheetah")) return 415;
- else if (!strcmp(string, "Ambulance")) return 416;
- else if (!strcmp(string, "Leviathan")) return 417;
- else if (!strcmp(string, "Moonbeam")) return 418;
- else if (!strcmp(string, "Esperanto")) return 419;
- else if (!strcmp(string, "Taxi")) return 420;
- else if (!strcmp(string, "Washington")) return 421;
- else if (!strcmp(string, "Bobcat")) return 422;
- else if (!strcmp(string, "Mr Whoopee")) return 423;
- else if (!strcmp(string, "BF Injection")) return 424;
- else if (!strcmp(string, "Hunter")) return 425;
- else if (!strcmp(string, "Premier")) return 426;
- else if (!strcmp(string, "Enforcer")) return 427;
- else if (!strcmp(string, "Securicar")) return 428;
- else if (!strcmp(string, "Banshee")) return 429;
- else if (!strcmp(string, "Predator")) return 430;
- else if (!strcmp(string, "Bus")) return 431;
- else if (!strcmp(string, "Rhino")) return 432;
- else if (!strcmp(string, "Barracks")) return 433;
- else if (!strcmp(string, "Hotknife")) return 434;
- else if (!strcmp(string, "Article Trailer")) return 435;
- else if (!strcmp(string, "Previon")) return 436;
- else if (!strcmp(string, "Coach")) return 437;
- else if (!strcmp(string, "Cabbie")) return 438;
- else if (!strcmp(string, "Stallion")) return 439;
- else if (!strcmp(string, "Rumpo")) return 440;
- else if (!strcmp(string, "RC Bandit")) return 441;
- else if (!strcmp(string, "Romero")) return 442;
- else if (!strcmp(string, "Packer")) return 443;
- else if (!strcmp(string, "Monster")) return 444;
- else if (!strcmp(string, "Admiral")) return 445;
- else if (!strcmp(string, "Squallo")) return 446;
- else if (!strcmp(string, "Seasparrow")) return 447;
- else if (!strcmp(string, "Pizzaboy")) return 448;
- else if (!strcmp(string, "Tram")) return 449;
- else if (!strcmp(string, "Article Trailer 2")) return 450;
- else if (!strcmp(string, "Turismo")) return 451;
- else if (!strcmp(string, "Speeder")) return 452;
- else if (!strcmp(string, "Reefer")) return 453;
- else if (!strcmp(string, "Tropic")) return 454;
- else if (!strcmp(string, "Flatbed")) return 455;
- else if (!strcmp(string, "Yankee")) return 456;
- else if (!strcmp(string, "Caddy")) return 457;
- else if (!strcmp(string, "Solair")) return 458;
- else if (!strcmp(string, "RC Van")) return 459;
- else if (!strcmp(string, "Skimmer")) return 460;
- else if (!strcmp(string, "PCJ-600")) return 461;
- else if (!strcmp(string, "Faggio")) return 462;
- else if (!strcmp(string, "Freeway")) return 463;
- else if (!strcmp(string, "RC Baron")) return 464;
- else if (!strcmp(string, "RC Raider")) return 465;
- else if (!strcmp(string, "Glendale")) return 466;
- else if (!strcmp(string, "Oceanic")) return 467;
- else if (!strcmp(string, "Sanchez")) return 468;
- else if (!strcmp(string, "Sparrow")) return 469;
- else if (!strcmp(string, "Patriot")) return 470;
- else if (!strcmp(string, "Quad")) return 471;
- else if (!strcmp(string, "Coastguard")) return 472;
- else if (!strcmp(string, "Dinghy")) return 473;
- else if (!strcmp(string, "Hermes")) return 474;
- else if (!strcmp(string, "Sabre")) return 475;
- else if (!strcmp(string, "Rustler")) return 476;
- else if (!strcmp(string, "ZR-350")) return 477;
- else if (!strcmp(string, "Walton")) return 478;
- else if (!strcmp(string, "Regina")) return 479;
- else if (!strcmp(string, "Comet")) return 480;
- else if (!strcmp(string, "BMX")) return 481;
- else if (!strcmp(string, "Burrito")) return 482;
- else if (!strcmp(string, "Camper")) return 483;
- else if (!strcmp(string, "Marquis")) return 484;
- else if (!strcmp(string, "Baggage")) return 485;
- else if (!strcmp(string, "Dozer")) return 486;
- else if (!strcmp(string, "Maverick")) return 487;
- else if (!strcmp(string, "News Maverick")) return 488;
- else if (!strcmp(string, "Rancher")) return 489;
- else if (!strcmp(string, "FBI Rancher")) return 490;
- else if (!strcmp(string, "Virgo")) return 491;
- else if (!strcmp(string, "Greenwood")) return 492;
- else if (!strcmp(string, "Jetmax")) return 493;
- else if (!strcmp(string, "Hotring Racer")) return 494;
- else if (!strcmp(string, "Sandking")) return 495;
- else if (!strcmp(string, "Blista Compact")) return 496;
- else if (!strcmp(string, "Police Maverick")) return 497;
- else if (!strcmp(string, "Boxville")) return 498;
- else if (!strcmp(string, "Benson")) return 499;
- else if (!strcmp(string, "Mesa")) return 500;
- else if (!strcmp(string, "RC Goblin")) return 501;
- else if (!strcmp(string, "Hotring Racer")) return 502;
- else if (!strcmp(string, "Hotring Racer")) return 503;
- else if (!strcmp(string, "Bloodring Banger")) return 504;
- else if (!strcmp(string, "Rancher")) return 505;
- else if (!strcmp(string, "Super GT")) return 506;
- else if (!strcmp(string, "Elegant")) return 507;
- else if (!strcmp(string, "Journey")) return 508;
- else if (!strcmp(string, "Bike")) return 509;
- else if (!strcmp(string, "VTT")) return 510;
- else if (!strcmp(string, "Beagle")) return 511;
- else if (!strcmp(string, "Cropduster")) return 512;
- else if (!strcmp(string, "Stuntplane")) return 513;
- else if (!strcmp(string, "Tanker")) return 514;
- else if (!strcmp(string, "Roadtrain")) return 515;
- else if (!strcmp(string, "Nebula")) return 516;
- else if (!strcmp(string, "Majestic")) return 517;
- else if (!strcmp(string, "Buccaneer")) return 518;
- else if (!strcmp(string, "Shamal")) return 519;
- else if (!strcmp(string, "Hydra")) return 520;
- else if (!strcmp(string, "FCR-900")) return 521;
- else if (!strcmp(string, "NRG-500")) return 522;
- else if (!strcmp(string, "HPV1000")) return 523;
- else if (!strcmp(string, "Bétonnière")) return 524;
- else if (!strcmp(string, "Towtruck")) return 525;
- else if (!strcmp(string, "Fortune")) return 526;
- else if (!strcmp(string, "Cadrona")) return 527;
- else if (!strcmp(string, "FBI Truck")) return 528;
- else if (!strcmp(string, "Willard")) return 529;
- else if (!strcmp(string, "Forklift")) return 530;
- else if (!strcmp(string, "Tractor")) return 531;
- else if (!strcmp(string, "Combine Harvester")) return 532;
- else if (!strcmp(string, "Feltzer")) return 533;
- else if (!strcmp(string, "Remington")) return 534;
- else if (!strcmp(string, "Slamvan")) return 535;
- else if (!strcmp(string, "Blade")) return 536;
- else if (!strcmp(string, "Freight (Train)")) return 537;
- else if (!strcmp(string, "Brownstreak (Train)")) return 538;
- else if (!strcmp(string, "Vortex")) return 539;
- else if (!strcmp(string, "Vincent")) return 540;
- else if (!strcmp(string, "Bullet")) return 541;
- else if (!strcmp(string, "Clover")) return 542;
- else if (!strcmp(string, "Sadler")) return 543;
- else if (!strcmp(string, "Firetruck LA")) return 544;
- else if (!strcmp(string, "Hustler")) return 545;
- else if (!strcmp(string, "Intruder")) return 546;
- else if (!strcmp(string, "Primo")) return 547;
- else if (!strcmp(string, "Cargobob")) return 548;
- else if (!strcmp(string, "Tampa")) return 549;
- else if (!strcmp(string, "Sunrise")) return 550;
- else if (!strcmp(string, "Merit")) return 551;
- else if (!strcmp(string, "Utility Van")) return 552;
- else if (!strcmp(string, "Nevada")) return 553;
- else if (!strcmp(string, "Yosemite")) return 554;
- else if (!strcmp(string, "Windsor")) return 555;
- else if (!strcmp(string, "Monster \"A\"")) return 556;
- else if (!strcmp(string, "Monster \"B\"")) return 557;
- else if (!strcmp(string, "Uranus")) return 558;
- else if (!strcmp(string, "Jester")) return 559;
- else if (!strcmp(string, "Sultan")) return 560;
- else if (!strcmp(string, "Stratum")) return 561;
- else if (!strcmp(string, "Elegy")) return 562;
- else if (!strcmp(string, "Raindance")) return 563;
- else if (!strcmp(string, "RC Tiger")) return 564;
- else if (!strcmp(string, "Flash")) return 565;
- else if (!strcmp(string, "Tahoma")) return 566;
- else if (!strcmp(string, "Savanna")) return 567;
- else if (!strcmp(string, "Bandito")) return 568;
- else if (!strcmp(string, "Freight Flat Trailer (Train)")) return 569;
- else if (!strcmp(string, "Streak Trailer (Train)")) return 570;
- else if (!strcmp(string, "Kart")) return 571;
- else if (!strcmp(string, "Mower")) return 572;
- else if (!strcmp(string, "Dune")) return 573;
- else if (!strcmp(string, "Sweeper")) return 574;
- else if (!strcmp(string, "Broadway")) return 575;
- else if (!strcmp(string, "Tornado")) return 576;
- else if (!strcmp(string, "AT400")) return 577;
- else if (!strcmp(string, "DFT-30")) return 578;
- else if (!strcmp(string, "Huntley")) return 579;
- else if (!strcmp(string, "Stafford")) return 580;
- else if (!strcmp(string, "BF-400")) return 581;
- else if (!strcmp(string, "Newsvan")) return 582;
- else if (!strcmp(string, "Tug")) return 583;
- else if (!strcmp(string, "Petrol Trailer")) return 584;
- else if (!strcmp(string, "Emperor")) return 585;
- else if (!strcmp(string, "Wayfarer")) return 586;
- else if (!strcmp(string, "Euros")) return 587;
- else if (!strcmp(string, "Hotdog")) return 588;
- else if (!strcmp(string, "Club")) return 589;
- else if (!strcmp(string, "Freight Box Trailer (Train)")) return 590;
- else if (!strcmp(string, "Article Trailer 3")) return 591;
- else if (!strcmp(string, "Andromada")) return 592;
- else if (!strcmp(string, "Dodo")) return 593;
- else if (!strcmp(string, "RC Cam")) return 594;
- else if (!strcmp(string, "Launch")) return 595;
- else if (!strcmp(string, "LSPD")) return 596;
- else if (!strcmp(string, "SFPD")) return 597;
- else if (!strcmp(string, "LVPD")) return 598;
- else if (!strcmp(string, "Police Ranger")) return 599;
- else if (!strcmp(string, "Picador")) return 600;
- else if (!strcmp(string, "SWAT")) return 601;
- else if (!strcmp(string, "Alpha")) return 602;
- else if (!strcmp(string, "Phoenix")) return 603;
- else if (!strcmp(string, "Glendale Shit")) return 604;
- else if (!strcmp(string, "Sadler Shit")) return 605;
- else if (!strcmp(string, "Remorque à baggages \"A\"")) return 606;
- else if (!strcmp(string, "Remorque à baggages \"B\"")) return 607;
- else if (!strcmp(string, "Tug Stairs Trailer")) return 608;
- else if (!strcmp(string, "Boxville")) return 609;
- else if (!strcmp(string, "Farm Trailer")) return 610;
- else if (!strcmp(string, "Utility Trailer")) return 611;
- return -1;
- }
- stock Unjail(playerid)
- {
- PlayerInfo[playerid][pJailTime] = -1;
- SetPlayerPos(playerid, PlayerInfo[playerid][pJail][0], PlayerInfo[playerid][pJail][1], PlayerInfo[playerid][pJail][2]);
- SetPlayerVirtualWorld(playerid, 0);
- return SCM(playerid, 0xFF0000FF, "[Admin]"FIREBRICK" Tu as purgé ta peine de jail OOC. Ne reproduis plus d'actes NoRP/interdits si tu ne veux pas y retourner !");
- }
- stock Unmute(playerid) { PlayerInfo[playerid][pMutetime] = -1; return 1; }
- stock UpdateTime(playerid)
- {
- return GameTextForPlayer(playerid, "~p~Il te reste encore %d secondes de prison !", 500, 1, PlayerInfo[playerid][pJailTime]-gettime());
- }
- forward OnBanInfoFound(playerid);
- forward OnBanInfoConnect(playerid);
- forward OnUnbanDone(playerid, type, const username[], const banid, const ip[]);
- forward KickPublic(playerid);
- public OnBanInfoFound(playerid)
- {
- if(cache_num_rows() < 1) return 1;
- m_banid = cache_get_field_content_int(0, "pid", MySQL);
- return 1;
- }
- public OnBanInfoConnect(playerid)
- {
- if(cache_num_rows() > 0)
- {
- new bool:temp, temp1, heures, banid, tdate[25], date[6];
- cache_get_field_content(0, "bdate", tdate);
- cache_get_field_content(0, "raison", raison);
- SplitDateTime(tdate, date[0], date[1], date[2], date[3], date[4], date[5]);
- banid = cache_get_field_content_int(0, "id", MySQL);
- temp1 = cache_get_field_content_int(0, "temporaire", MySQL);
- if(temp1 == 0) temp = false;
- else temp = true;
- heures = cache_get_field_content_int(0, "heures", MySQL);
- if(!temp) return KickWithMessage(playerid, 0xFF0000FF, "[Ban]"FIREBRICK" Vous êtes actuellement banni depuis le "RED_4"%d/%d/%d (%dh%d)"FIREBRICK" pour "RED_4"[%s]."RED_4"[Ban pid : %d]",
- date[2], date[1], date[0], date[3], date[4], raison, banid);
- else return KickWithMessage(playerid, 0xFF0000FF, "[Ban]"FIREBRICK" Vous êtes actuellement banni depuis le "RED_4"%d/%d/%d (%dh%d)"FIREBRICK" pour "RED_4"[%s]"FIREBRICK". Il vous reste encore "RED_4"%d"FIREBRICK" heures de banissement."RED_4"[Ban pid : %d]",
- date[2], date[1], date[0], date[3], date[4], raison, heures, banid);
- }
- return 1;
- }
- public OnUnbanDone(playerid, type, const username[], const banid, const ip[])
- {
- switch(type)
- {
- case 1:
- {
- if(cache_affected_rows() > 0) return SCM(playerid, 0xFF0000FF, "[Unban]"FIREBRICK" Tu as débanni le compte %s. Le joueur peut dès à présent se reconnecter.", username);
- else return SCM(playerid, 0xFF0000FF, "[Unban]"FIREBRICK" Il y a eu un problème lors du déban du joueur. Veuillez réessayer. (Compte [%s] peut-être non banni)", username);
- }
- case 2:
- {
- if(cache_affected_rows() > 0) return SCM(playerid, 0xFF0000FF, "[Unban]"FIREBRICK" Tu as supprimé le ban ID %d. Le joueur affecté par ce banissement peut dès à présent se reconnecter.", banid);
- else return SCM(playerid, 0xFF0000FF, "[Unban]"FIREBRICK" Il y a eu un problème lors du déban du joueur. Veuillez réessayer. (Peut-être aucun ban correspondant à cet pid [%d])", banid);
- }
- case 3:
- {
- if(cache_affected_rows() > 0) return SCM(playerid, 0xFF0000FF, "[Unban]"FIREBRICK" Tu as débanni l'IP '%s'. Le(s) joueur(s) affecté(s) par ce banissement peut(vent) dès à présent se reconnecter !", ip);
- else return SCM(playerid, 0xFF0000FF, "[Unban]"FIREBRICK" Il y a eu un problème lors du déban du joueur. Veuillez réessayer. (IP [%s] peut-être non bannie)", ip);
- }
- }
- return 1;
- }
- public KickPublic(playerid) { Kick(playerid); return 1; }
- /*
- _____ __ .__ .__ __
- / _ \ _____/ |_|__| ____ | |__ ____ _____ _/ |_
- / /_\ \ / \ __\ | _/ ___\| | \_/ __ \\__ \\ __\
- / | \ | \ | | | \ \___| Y \ ___/ / __ \| |
- \____|__ /___| /__| |__| \___ >___| /\___ >____ /__|
- \/ \/ \/ \/ \/ \/
- */
- public OnPlayerAntiReload(playerid, weaponid)
- {
- if(PlayerInfo[playerid][pAdmin] < 1) return 1;
- BanSQL(playerid, -2, "Cheat - Anti reload");
- return 1;
- }
- public OnPlayerFall(playerid, Float:height, Float:damage) { Enable_safe_health(playerid); return 1; }
- stock AC_SetPlayerHealth(playerid, Float:health) { Enable_safe_health(playerid); SetPlayerHealth(playerid, health); return 1; }
- stock AC_SetPlayerArmour(playerid, Float:armour) { Enable_safe_armour(playerid); SetPlayerArmour(playerid, armour); return 1; }
- stock AC_GivePlayerWeapon(playerid, weaponid, ammo) { Enable_safe_weapon(playerid); GivePlayerWeapon(playerid, weaponid, ammo); return 1; }
- stock AC_ResetPlayerWeapons(playerid) { Enable_safe_weapon(playerid); ResetPlayerWeapons(playerid); return 1; }
- stock AC_GivePlayerMoney(playerid, money) { Enable_safe_money(playerid); GivePlayerMoney(playerid,money); return 1; }
- stock AC_ResetPlayerMoney(playerid) { Enable_safe_money(playerid); ResetPlayerMoney(playerid); return 1; }
- stock AC_AddVehicleComponent(vehicleid, componentid)
- {
- foreach(new p : Player)
- {
- if(IsPlayerInAnyVehicle(p))
- {
- if(GetPlayerVehicleID(p) == vehicleid) Enable_safe_tuning(p);
- }
- }
- AddVehicleComponent(vehicleid, componentid);
- return 1;
- }
- stock Enable_safe_health(playerid)
- {
- PlayerInfo[playerid][cVie] = true;
- SetTimerEx("stopVie", CHEAT_RANGE, false, "i", playerid);
- return 1;
- }
- stock Enable_safe_armour(playerid)
- {
- PlayerInfo[playerid][cArmure] = true;
- SetTimerEx("stopArmure", CHEAT_RANGE, false, "i", playerid);
- return 1;
- }
- stock Enable_safe_weapon(playerid)
- {
- PlayerInfo[playerid][cArmes] = true;
- SetTimerEx("stopArmes", CHEAT_RANGE, false, "i", playerid);
- return 1;
- }
- stock Enable_safe_money(playerid)
- {
- PlayerInfo[playerid][cArmes] = true;
- SetTimerEx("stopArgent", CHEAT_RANGE, false, "i", playerid);
- return 1;
- }
- stock Enable_safe_tuning(playerid)
- {
- PlayerInfo[playerid][cTuning] = true;
- SetTimerEx("stopTuning", CHEAT_RANGE, false, "i", playerid);
- return 1;
- }
- forward stopVie(playerid);
- forward stopArmure(playerid);
- forward stopArmes(playerid);
- forward stopArgent(playerid);
- forward stopTuning(playerid);
- public stopVie(playerid) { PlayerInfo[playerid][cVie] = false; return 1; }
- public stopArmure(playerid) { PlayerInfo[playerid][cArmure] = false; return 1; }
- public stopArmes(playerid) { PlayerInfo[playerid][cArmes] = false; return 1; }
- public stopArgent(playerid) { PlayerInfo[playerid][cArgent] = false; return 1; }
- public stopTuning(playerid) { PlayerInfo[playerid][cTuning] = false; return 1; }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement