Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Moje anti VPN ochrana funguje iba z Ban systémom
- #include <a_samp>
- new PlayerWarning[MAX_PLAYERS];
- public OnPlayerConnect(playerid)
- {
- new ip[16];
- GetPlayerIp(playerid, ip, sizeof(ip));
- if (IsVpnIp(ip)) {
- if (PlayerWarning[playerid] < 3) {
- // Hráč dostává varování kickem
- SendPlayerMessageToPlayer(playerid, COLOR_YELLOW, "Používáte VPN, což není povoleno na tomto serveru. Varování: %d/3", PlayerWarning[playerid] + 1);
- Kick(playerid);
- PlayerWarning[playerid]++;
- } else {
- // Hráč dostal již tři varování, udělujeme permanentní ban
- SendPlayerMessageToPlayer(playerid, COLOR_RED, "Bylo vám uděleno třetí varování za používání VPN. Nyní jste permanentně zabanován.");
- BanAccount(playerid);
- }
- }
- return OnPlayerConnect(playerid);
- }
- public IsVpnIp(ip[])
- {
- // Implementujte logiku pro kontrolu VPN IP
- // Zde byste měli mít seznam známých VPN IP adres nebo použít službu pro ověření
- // Falešná implementace pro účely ilustrace
- if (strcmp(ip, "VPN_IP_ADDRESS") == 0) {
- return true; // IP patří k VPN, vrátí true
- }
- return false; // IP nepatří k VPN, vrátí false
- }
- // Funkce pro permanentní ban na účet hráče
- public BanAccount(playerid)
- {
- // Implementujte logiku pro permanentní ban na účet hráče
- // Zde byste měli aktualizovat databázi banů nebo použít funkce, které nabízí SA:MP API
- // Příklad: Ban přidán do banlistu SA:MP na účet
- BanEx(playerid, "Ban na účet z důvodu používání VPN");
- // Příklad: Uložení banu do souboru nebo databáze pro další sledování
- SaveBanToDatabase(playerid);
- }
- // Funkce pro ukládání banu do databáze nebo souboru
- public SaveBanToDatabase(playerid)
- {
- // Implementujte logiku pro ukládání banu do databáze nebo souboru
- // Zde byste měli uložit informace o zabanovaném hráči, např. ID, IP, důvod atd.
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement