hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.28. 23:50



Jelenlévő felhasználók

Jelenleg 225 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 224 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 26 hozzászólás ]  Oldal 1 2 3 Következő
Szerző Üzenet
 Hozzászólás témája: Hirdetés blokkoló
HozzászólásElküldve: 2015.03.29. 00:48 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.09.08. 22:21
Hozzászólások: 3014
Megköszönt másnak: 96 alkalommal
Megköszönték neki: 555 alkalommal
Block Advertising
v1.3 by Alka
Fordította: mforce


Leírás:

A plugin blokkolja és akár ki is rúgja a hirdetőket a szerveren. A lehető legtöbb formátumot észleli és blokkolja. Pl.: szóköz a webcímek, számok közt, sok pont, szimbólumok.

Példa a találatokra:

Kód:
11.1.1.1
11.1.1.1:20715
11...1...1...1 (Akármennyi pont)
11/1/1/1
11 / 1 / 1 / 1
1/1.2.3/1.2/3 (Mindenféle kombináció)
11 1 1 1
1 2 3       1 1      3 1     2
22 l 2 l 2 l 2


Cvar:

amx_advblock (Alap: "abcde")
Kód:
a - Hirdetésnek vett chat sorok blokkolása
b - A hirdető figyelmeztetése
c - Játékos kickelése,ha meghaladta a MAX_WARNINGS (alap: 3) hirdetést.
d - Hirdetésnek vélt chat sorok logolása ( Név és üzenet )
e - A BYPASS_FLAG (alap: rcon) joggal rendelkező adminok kivételek

Követelmények:

ColorChat Stock Version by ConnorMcLeod: https://forums.alliedmods.net/showpost. ... stcount=90

Módosítható elemek:

ColorChat használat: Írj eléjük // jelet,ha nem szeretnél színeket látni benne.
Kód:
//#include <colorchat>
//#define USE_COLORCHAT

Maximum figyelmeztetések a kirúgás előtt,ha a "c" cvar értéket használod.
Kód:
#define MAX_WARNINGS 3

Admin flag a hirdetés blokkoló kikerüléséhez:
Kód:
#define BYPASS_FLAG ADMIN_RCON

Fájlok:

advblock_config.ini - Rakd az /addons/amxmodx/configs mappába.
advblock_logs.log - A log fájl automatikusan generálódik a /addons/amxmodx/logs mappába.
block_advertising.sma - Értelemszerűen a megadott ColorChat includet használva átalakítod .amxx-be, az /addons/amxmodx/plugins mappába helyezed az .amxx fájlt,és az addons/amxmodx/configs/plugins.ini-be beírod az elérési nevét (block_advertising.amxx).

_________________
GitHub - mforce


A hozzászólást 4 alkalommal szerkesztették, utoljára mforce 2015.03.29. 01:03-kor.

Ők köszönték meg mforce nek ezt a hozzászólást: MinimalGamer (2015.06.09. 10:03)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.03.29. 13:19 
Offline
Senior Tag
Avatar

Csatlakozott: 2014.07.03. 00:07
Hozzászólások: 297
Megköszönt másnak: 37 alkalommal
Megköszönték neki: 35 alkalommal
Nagyon ügyes , ez már minőségi ;)

_________________
http://www.subbass.hu
[steam]krisz_nvidia[/steam]
Admin Rendszer v1.3
http://csgoskins.net/?rid=76561198147396400


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.04.01. 09:59 
Offline
Senior Tag
Avatar

Csatlakozott: 2014.02.02. 10:59
Hozzászólások: 238
Megköszönt másnak: 63 alkalommal
Megköszönték neki: 12 alkalommal
nemtudom atalakitani az SMA-t... nemengedi hibas forraskodot jelez

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.04.01. 14:19 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.03.07. 14:55
Hozzászólások: 939
Megköszönt másnak: 38 alkalommal
Megköszönték neki: 95 alkalommal
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team

mforcebacsi.sma(277) : error 017: undefined symbol "client_print_color"
mforcebacsi.sma(291) : error 017: undefined symbol "client_print_color"
mforcebacsi.sma(429) : warning 203: symbol is never used: "ColorChat"
mforcebacsi.sma(429) : warning 203: symbol is never used: "ColorSelection"
mforcebacsi.sma(429) : warning 203: symbol is never used: "FindPlayer"
mforcebacsi.sma(429) : warning 203: symbol is never used: "ShowColorMessage"
mforcebacsi.sma(429) : warning 203: symbol is never used: "Team_Info"


Szerk: Lenyegtelen a fenti resz,igen,nem olvastam el figyelmesen,elnezest kerek!

_________________
Hmm.
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.04.01. 15:03 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.09.08. 22:21
Hozzászólások: 3014
Megköszönt másnak: 96 alkalommal
Megköszönték neki: 555 alkalommal
Akkor most másoljam ide a követelmények részt? Ne csináld,hogy kajak a lényegre nem figyelsz...
El kéne olvasni a leírást :)

_________________
GitHub - mforce

Ők köszönték meg mforce nek ezt a hozzászólást (összesen 2): Zeei (2015.04.01. 15:52) • MinimalGamer (2015.06.09. 10:04)
  Népszerűség: 4.55%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.07.01. 18:13 
Offline
Fanatikus

Csatlakozott: 2009.09.26. 10:29
Hozzászólások: 171
Megköszönték neki: 54 alkalommal
Zeei írta:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team

mforcebacsi.sma(277) : error 017: undefined symbol "client_print_color"
mforcebacsi.sma(291) : error 017: undefined symbol "client_print_color"
mforcebacsi.sma(429) : warning 203: symbol is never used: "ColorChat"
mforcebacsi.sma(429) : warning 203: symbol is never used: "ColorSelection"
mforcebacsi.sma(429) : warning 203: symbol is never used: "FindPlayer"
mforcebacsi.sma(429) : warning 203: symbol is never used: "ShowColorMessage"
mforcebacsi.sma(429) : warning 203: symbol is never used: "Team_Info"


Szerk: Lenyegtelen a fenti resz,igen,nem olvastam el figyelmesen,elnezest kerek!


Javítva:

  1. #include <amxmodx>#include <amxmisc>#include <colorchat> #define PLUGIN "Block Advertising"#define VERSION "1.3"#define AUTHOR "Alka" #define USE_COLORCHAT #define MAX_WARNINGS 1#define MAX_LOGS 50 #define BYPASS_FLAG ADMIN_RCON #define IsValidBlock(%0) (0 <= str_to_num(%0) <= 255) enum (<<=1) {     ADV_BLOCK = 1,  ADV_WARN,   ADV_KICK,   ADV_LOG,    ADV_BYPASS}; enum {   ADDR_VALID = 1, ADDR_NOT_FOUND = -1}; new g_pCvarMode; new Trie:g_tChars, Trie:g_tBlocks;new Array:g_aDomains, Array:g_aWhitelist; new g_iWarnings[33]; new g_szLogsFile[64]; public plugin_init() {  register_plugin(PLUGIN, VERSION, AUTHOR);  register_clcmd("say", "clcmd_HandleChat");  register_clcmd("say_team", "clcmd_HandleChat");    g_pCvarMode = register_cvar("amx_advblock", "abcde");  g_tChars = TrieCreate();    g_tBlocks = TrieCreate();  g_aDomains = ArrayCreate(6);    g_aWhitelist = ArrayCreate(32);} public plugin_cfg(){  get_basedir(g_szLogsFile, charsmax(g_szLogsFile));  add(g_szLogsFile, charsmax(g_szLogsFile), "/logs/advblock_logs.log");  if(file_size(g_szLogsFile, 1) / 3 > MAX_LOGS)       fclose(fopen(g_szLogsFile, "w"));   else        fclose(fopen(g_szLogsFile, "a"));  LoadConfigs();} public plugin_end(){   TrieDestroy(g_tChars);  TrieDestroy(g_tBlocks); ArrayDestroy(g_aDomains);   ArrayDestroy(g_aWhitelist);} public client_disconnect(id){ if(g_iWarnings[id] > 0)     g_iWarnings[id] = 0;} public clcmd_HandleChat(id){ if((GetModFlags() & ADV_BYPASS) && get_user_flags(id) & BYPASS_FLAG)        return PLUGIN_CONTINUE;    new szText[191];    read_args(szText, charsmax(szText));    remove_quotes(szText);     if(strlen(szText) < 4)      return PLUGIN_CONTINUE;    TrieClear(g_tBlocks);  new szBlock[4], iLen;   new iNumSeq, iNumBlocks, iDel;  new iLastBlock; new bool:bDuplicate;   for(new i = 0 ; i < sizeof szText ; i++)    {       if(isdigit(szText[i]) && (i + 1 < sizeof szText))       {           iLen += formatex(szBlock[iLen], charsmax(szBlock) - iLen, "%c", szText[i]);            if(isdigit(szText[i + 1]))              iNumSeq++;          else            {               if(IsValidBlock(szBlock))               {                   if(!TrieKeyExists(g_tBlocks, szBlock))                  {                       TrieSetCell(g_tBlocks, szBlock, 1);                        new iTo = strlen(szBlock) == 3 ? i - 2 : (strlen(szBlock) == 2 ? i - 1 : i);                        if(FindDiffChars(szText, charsmax(szText), iLastBlock, iTo) < 8)                            iNumBlocks++;                      iLastBlock = i;                 }                   else if(TrieKeyExists(g_tBlocks, szBlock) && !bDuplicate)                   {                       new iTo = strlen(szBlock) == 3 ? i - 2 : (strlen(szBlock) == 2 ? i - 1 : i);                        if(FindDiffChars(szText, charsmax(szText), iLastBlock, iTo) < 8)                            iNumBlocks++;                      iLastBlock = i;                     bDuplicate = true;                  }               }               iLen = 0;           }       }       else        {           if(szText[i] != 0)          {               iDel++;         }       }   }  if((iNumSeq > 0 && iNumBlocks > 3) || (iNumBlocks > 3 && iDel > 5) || CheckAddr(szText, charsmax(szText)) != ADDR_NOT_FOUND)    {       new iFlags = GetModFlags();        if(iFlags & ADV_WARN)       {           if(iFlags & ADV_KICK)           {               g_iWarnings[id]++;              #if !defined USE_COLORCHAT                  client_print(id, print_chat, "Figyelem!!! IP / Weboldal hirdetés! [%d/%d] - Kick", g_iWarnings[id], MAX_WARNINGS);             #else                   ColorChat(id, RED, "^3Figyelem!!! ^4IP ^1/ ^4Weboldal ^1hirdetés! ^4[^3%d^1/^3%d^4] ^1- Kick", g_iWarnings[id], MAX_WARNINGS);             #endif                 if(g_iWarnings[id] == 3)                {                   server_cmd("kick #%d ^"Hirdetes!^"", get_user_userid(id));                  g_iWarnings[id] = 0;                }           }           else            {               #if !defined USE_COLORCHAT                  client_print(id, print_chat, "Figyelem!!! IP / Weboldal hirdetes!");                #else                   client_print_color(id, RED, "^3Figyelem!!! ^4IP ^1/ ^4Weboldal ^1hirdetés!");              #endif          }       }       if(iFlags & ADV_LOG)        {           new szName[32];         get_user_name(id, szName, charsmax(szName));           new iFile = fopen(g_szLogsFile, "a");           fprintf(iFile, "Nev: %s ^nChat: %s^n---------------------------------------^n", szName, szText);            fclose(iFile);      }       if(iFlags & ADV_BLOCK)          return PLUGIN_HANDLED;      else            return PLUGIN_CONTINUE; }   return PLUGIN_CONTINUE;} stock FindDiffChars(szString[], iLen, iFrom, iTo){    TrieClear(g_tChars);   new iChars; for(new i = 0 ; i < iLen ; i++) {       if(iFrom < i < iTo)     {           new szChar[2];          formatex(szChar, charsmax(szChar), "%c", szString[i]);             if(!TrieKeyExists(g_tChars, szChar))            {               TrieSetCell(g_tChars, szChar, 1);               iChars++;           }       }   }   return iChars;} stock CheckAddr(szString[], iLen){ new szText[128], iLen2; new i;  for(i = 0 ; i < iLen ; i++) {       if(!isalpha(szString[i]) && !ValidAddrSeparator(szString[i]))           continue;      iLen2 += formatex(szText[iLen2], charsmax(szText) - iLen2, "%c", szString[i]);  }  new szTemp[6], szTemp1[32]; for(i = 0 ; i < ArraySize(g_aWhitelist) ; i++)  {       ArrayGetString(g_aWhitelist, i, szTemp1, charsmax(szTemp1));        if(containi(szText, szTemp1) != -1)     {           replace(szText, charsmax(szText), szTemp1, "");         i--;        }   }   for(i = 0 ; i < ArraySize(g_aDomains) ; i++)    {       ArrayGetString(g_aDomains, i, szTemp, charsmax(szTemp));       if(containi(szText, szTemp) > 0)            return ADDR_VALID;  }       return ADDR_NOT_FOUND;} stock bool:ValidAddrSeparator(iChar){  new iChars[] = { ':', '/', '.' };   for(new i = 0 ; i < sizeof iChars ; i++)    {       if(iChar == iChars[i])          return true;    }   return false;} stock GetModFlags(){    new szVal[6];   get_pcvar_string(g_pCvarMode, szVal, charsmax(szVal));     return read_flags(szVal);} stock LoadConfigs(){    new szFile[64]; get_configsdir(szFile, charsmax(szFile));   add(szFile, charsmax(szFile), "/advblock_config.ini");     new iFile = fopen(szFile, "r"); if(!iFile)      set_fail_state("Nem sikerult a konfig fajl betoltese!");   new szBuffer[32];   new iConfig;    while(!feof(iFile)) {       fgets(iFile, szBuffer, charsmax(szBuffer));     trim(szBuffer);        if(!szBuffer[0] || szBuffer[0] == ';')          continue;      if(equal(szBuffer, "#domains"))     {           iConfig = 1;            continue;       }       else if(equal(szBuffer, "#whitelist"))      {           iConfig = 2;            continue;       }       else        {           if(szBuffer[0] != '{' || szBuffer[0] != '}')            {               switch(iConfig)             {                   case 1: ArrayPushString(g_aDomains, szBuffer);                  case 2: ArrayPushString(g_aWhitelist, szBuffer);                }           }       }   }   fclose(iFile);}


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.07.01. 19:09 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.09.08. 22:21
Hozzászólások: 3014
Megköszönt másnak: 96 alkalommal
Megköszönték neki: 555 alkalommal
Inkább te is olvass normálisan posztot. -.-" A látásodat kéne javítani.

_________________
GitHub - mforce


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.07.01. 19:28 
Offline
Fanatikus

Csatlakozott: 2009.09.26. 10:29
Hozzászólások: 171
Megköszönték neki: 54 alkalommal
normálisan is lehet olvasni posztot? Kedves emforsz. Olvastam ezt: Követelmények:

ColorChat Stock Version by ConnorMcLeod: https://forums.alliedmods.net/showpost. ... stcount=90

Betettem, és hibát írt akkor is.
Javítottam a 160. sorban lévőt:
  1. client_print_color(id, RED, "^3Figyelem!!! ^4IP ^1/ ^4Weboldal ^1hirdetés! ^4[^3%d^1/^3%d^4] ^1- Kick", g_iWarnings[id], MAX_WARNINGS);

:arrow:
  1. ColorChat(id, RED, "^3Figyelem!!! ^4IP ^1/ ^4Weboldal ^1hirdetés! ^4[^3%d^1/^3%d^4] ^1- Kick", g_iWarnings[id], MAX_WARNINGS);


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.07.01. 21:30 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.09.08. 22:21
Hozzászólások: 3014
Megköszönt másnak: 96 alkalommal
Megköszönték neki: 555 alkalommal
Hú te fiú :D
Érdekes betettem az inc-et és tökéletes.
Ha ennyit nem tudsz magadnak megcsinálni inkább ne okoskodj.

Kép

_________________
GitHub - mforce


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Hirdetés blokkoló
HozzászólásElküldve: 2015.07.01. 21:33 
Offline
Fanatikus

Csatlakozott: 2009.09.26. 10:29
Hozzászólások: 171
Megköszönték neki: 54 alkalommal
mforce írta:
Hú te fiú :D
Érdekes betettem az inc-et és tökéletes.
Ha ennyit nem tudsz magadnak megcsinálni inkább ne okoskodj.

Kép


Mindjárt beteszek a szádba valamit, ami eldugít.. Hülye nem vagyok, betettem én is, és error. Hmm?


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 26 hozzászólás ]  Oldal 1 2 3 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 7 vendég


Nem nyithatsz témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole