hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.05.11. 15:25



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: nincs regisztrált felhasználó 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  [ 2 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Piros admin írás
HozzászólásElküldve: 2015.12.31. 14:06 
Offline
Tag
Avatar

Csatlakozott: 2015.10.04. 20:32
Hozzászólások: 51
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 1 alkalommal
Sziasztok

Van olyan plugin amivel az adminok nem zöldel hanem pirossal írhatnak?


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Piros admin írás
HozzászólásElküldve: 2015.12.31. 14: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
Ez-e...
Lite Chat

Csak az sma ez legyen, átírtam:

  1. #include <amxmodx>
  2.  
  3. /*  Ami előtt // van az le van tiltva, ami előtt nincs, az aktív. Itt tudsz mindent módosítani. */
  4.  
  5. #define PREFIXEK                // Alap prefixek engedélyezése.
  6. #if defined PREFIXEK
  7.     //#define EGYEDI_PREFIXEK       // Egyedi prefixek engedélyezése "addons/amxmodx/configs/egyedi_prefixek.ini"
  8. #endif
  9. //#define STEAM_PREFIX              // Steam prefix engedélyezése.
  10. #define ZOLD_IRAS           // Zöld írás az Adminoknak és a VIP-nek.
  11. #define TULAJ_JOG   ADMIN_RCON  // Tulaj jog a Tulaj prefixhez. (alap: "l")
  12. #define ADMIN_JOG       ADMIN_BAN   // Admin jog az Admin prefixhez. (alap: "d")
  13. #define VIP_JOG     ADMIN_LEVEL_H   // VIP jog a VIP prefixhez. (alap: "t")
  14. //#define ANTI_FLOOD            // Anti-flood bekapcsolása (ki kell törölni a plugins.ini-ből az alap "antiflood.amxx"-et.)
  15. #define IDOKOZ      0.75        // Flood időköz
  16. #define ADMIN_LAT           // Az Admin látja az élő és a halott, és a két csapat írását egyaránt.
  17. //#define ALAP_CHAT     // Élő nem látja a halott írását, kivéve az Admin,ha az ADMIN_LAT aktív. (alap: mindenki látja a halottat is.)
  18.  
  19. #if defined STEAM_PREFIX
  20. new bool:steames[33];
  21. #endif
  22. #if defined EGYEDI_PREFIXEK
  23. enum _:ADATOK
  24. {
  25.     TIPUS[2],
  26.     ELLENORZES[32],
  27.     PREFIX[64]
  28. };
  29. new Array:adat, jatekosadat[ADATOK];
  30. new prefix[33][64];
  31. #endif
  32.  
  33. #define GetBit(%1,%2)       (%1 & (1 << (%2 & 31)))
  34. #define SetBit(%1,%2)       %1 |= (1 << (%2 & 31))
  35. #define ResetBit(%1,%2)     %1 &= ~(1 << (%2 & 31))
  36. #if defined ADMIN_LAT
  37. new bitadmin;
  38. #endif
  39. new bitelo;
  40.  
  41. public plugin_init()
  42. {
  43.     #define AUTHOR "neygomon, mforce"
  44.     register_plugin("Lite Chat", "1.0", AUTHOR);
  45.     register_cvar("lite_chat", AUTHOR, FCVAR_SERVER | FCVAR_SPONLY);
  46.  
  47.     register_clcmd("say", "HandlerSay");
  48.     register_clcmd("say_team", "HandlerSayTeam");
  49.  
  50.     register_event("ResetHUD", "eResetHUD", "be");
  51.     register_event("DeathMsg", "eDeathMsg", "a", "1>0");
  52. }
  53.  
  54. #if defined EGYEDI_PREFIXEK
  55. public plugin_cfg()
  56. {
  57.     adat = ArrayCreate(ADATOK);
  58.  
  59.     new betolt[256], fp = fopen("addons/amxmodx/configs/egyedi_prefixek.ini", "rt");
  60.     if(!fp) return set_fail_state("A fajlt ^"addons/amxmodx/configs/egyedi_prefixek.ini^" nem talaltuk");
  61.  
  62.     while(!feof(fp))
  63.     {
  64.         fgets(fp, betolt, charsmax(betolt));
  65.         if(betolt[0] && betolt[0] != ';' && parse(betolt, jatekosadat[TIPUS], charsmax(jatekosadat[TIPUS]), jatekosadat[ELLENORZES], charsmax(jatekosadat[ELLENORZES]), jatekosadat[PREFIX], charsmax(jatekosadat[PREFIX])))
  66.             ArrayPushArray(adat, jatekosadat);
  67.     }
  68.     return fclose(fp);
  69. }
  70. #endif
  71. public client_putinserver(id)
  72. {
  73. #if defined EGYEDI_PREFIXEK
  74.     kereses(id);
  75. #endif 
  76. #if defined STEAM_PREFIX
  77.     steames[id] = is_user_steam(id) ? true : false;
  78. #endif
  79. #if defined ADMIN_LAT
  80.     if(get_user_flags(id) & ADMIN_CHAT) SetBit(bitadmin, id);
  81.     else ResetBit(bitadmin, id);
  82. #endif
  83. }
  84.  
  85. public client_disconnect(id)    ResetBit(bitelo, id);
  86. public eResetHUD(id)        SetBit(bitelo, id);
  87. public eDeathMsg()      ResetBit(bitelo, read_data(2));
  88.  
  89. public HandlerSay(id) return uzenetformazas(id, false);
  90. public HandlerSayTeam(id) return uzenetformazas(id, true);
  91.  
  92. uzenetformazas(id, bool:csapat)
  93. {
  94. #define MAX_BIT 180
  95.     static uzenet[MAX_BIT], stringkonvertalas[charsmax(uzenet) * 2 + 1];
  96.     read_args(uzenet, charsmax(uzenet));
  97.     remove_quotes(uzenet);
  98.  
  99.     if(uzenet[0] == EOS || uzenet[0] == '/' || equal(uzenet, " "))
  100.         return PLUGIN_HANDLED_MAIN;
  101. #if defined ANTI_FLOOD
  102.     static Float:floodido[33], Float:jatekido, figyelmeztetes[33];
  103.  
  104.     if(floodido[id] > (jatekido = get_gametime()))
  105.     {
  106.         if(++figyelmeztetes[id] > 2)
  107.         {          
  108.             client_print(id, print_chat, "NE FLOODOLJ!");
  109.             floodido[id] = jatekido + IDOKOZ + 3.0;
  110.             return PLUGIN_HANDLED;
  111.         }
  112.     }
  113.     else if(figyelmeztetes[id]) figyelmeztetes[id]--;
  114.     floodido[id] = jatekido + IDOKOZ;
  115. #endif
  116.     static fullos, tagek[MAX_BIT], team_lekeres, sTeam[16];
  117.     team_lekeres  = get_user_team(id, sTeam, charsmax(sTeam));
  118.  
  119.     switch(team_lekeres)
  120.     {
  121.         case 1: fullos = formatex(tagek, charsmax(tagek), "%s%s", GetBit(bitelo, id) ? "^1" : "^1*Halott* ", csapat ? "^1[T] " : "");
  122.         case 2: fullos = formatex(tagek, charsmax(tagek), "%s%s", GetBit(bitelo, id) ? "^1" : "^1*Halott* ", csapat ? "^1[CT] " : "");
  123.         default:fullos = formatex(tagek, charsmax(tagek), "^1*Spec* ");
  124.     }
  125. #if defined ZOLD_IRAS || (defined PREFIXEK && !defined EGYEDI_PREFIXEK)
  126.     static hozzaferes; hozzaferes = jogellenorzes(id);
  127. #endif 
  128. #if defined STEAM_PREFIX
  129.     if(steames[id])
  130.         fullos += formatex(tagek[fullos], charsmax(tagek) - fullos, "^1[^4Steam^1] ");
  131. #endif
  132. #if defined PREFIXEK   
  133.     #if defined EGYEDI_PREFIXEK
  134.     if(prefix[id][0])
  135.     {
  136.         replace_all(prefix[id], charsmax(prefix[]), "!n", "^1");
  137.         replace_all(prefix[id], charsmax(prefix[]), "!t", "^3");
  138.         replace_all(prefix[id], charsmax(prefix[]), "!g", "^4");
  139.         fullos += formatex(tagek[fullos], charsmax(tagek) - fullos, "%s ", prefix[id]);
  140.     }  
  141.     #else
  142.     static const adminprefixek[][] = { "", "^4[Tulaj] ", "^4[Admin] ", "^4[VIP] " };
  143.     fullos += formatex(tagek[fullos], charsmax(tagek) - fullos, "%s", adminprefixek[hozzaferes]);
  144.     #endif
  145. #endif 
  146. #if defined ZOLD_IRAS
  147.     switch(hozzaferes)
  148.     {
  149.         case 0: fullos += formatex(tagek[fullos], charsmax(tagek) - fullos, "^3%%s1^1 :  %%s2");
  150.         default:fullos += formatex(tagek[fullos], charsmax(tagek) - fullos, "^4%%s1^1 :  ^3%%s2");
  151.     }
  152. #else
  153.     fullos += formatex(tagek[fullos], charsmax(tagek) - fullos, "^3%%s1^1 :  %%s2");
  154. #endif
  155.     stringkonvertalas = uzenet;
  156.     replace_all( stringkonvertalas, charsmax( stringkonvertalas ), "", " " );
  157.     replace_all( stringkonvertalas, charsmax( stringkonvertalas ), "", " " );
  158.  
  159.     static bitlimit; bitlimit = MAX_BIT;
  160.     while(fullos + strlen(stringkonvertalas) > MAX_BIT) stringkonvertalas[bitlimit -= 10] = 0;
  161.  
  162.     static players[32], pcount; get_players(players, pcount, "c");
  163.     switch(csapat)
  164.     {
  165.         case true:
  166.         {
  167.             for(new i; i < pcount; i++)
  168.             {
  169. #if defined ADMIN_LAT              
  170.                 if(GetBit(bitadmin, players[i]) || (GetBit(bitelo, id) == GetBit(bitelo, players[i]) && team_lekeres == get_user_team(players[i])))
  171. #else
  172.                 if(GetBit(bitelo, id) == GetBit(bitelo, players[i]) && team_lekeres == get_user_team(players[i]))
  173. #endif
  174.                     PrintChat(players[i], id, tagek, stringkonvertalas);
  175.             }                              
  176.         }
  177.         case false:
  178.         {  
  179.             for(new i; i < pcount; i++)
  180. #if defined ALAP_CHAT          
  181.     #if defined ADMIN_LAT          
  182.                 if(GetBit(bitadmin, players[i]) || GetBit(bitelo, id) == GetBit(bitelo, players[i]))
  183.     #else
  184.                 if(GetBit(bitelo, id) == GetBit(bitelo, players[i]))
  185.     #endif             
  186.                     PrintChat(players[i], id, tagek, stringkonvertalas);
  187. #else
  188.                 PrintChat(players[i], id, tagek, stringkonvertalas);
  189. #endif 
  190.         }
  191.     }
  192.     static sAuthId[25], sName[32];
  193.     get_user_name(id, sName, charsmax(sName));
  194.     get_user_authid(id, sAuthId, charsmax(sAuthId));
  195.     log_message("^"%s<%d><%s><%s>^" %s ^"%s^"", sName, get_user_userid(id), sAuthId, sTeam, csapat ? "say_team" : "say" , stringkonvertalas);  
  196.     return PLUGIN_HANDLED;
  197. }
  198.  
  199. PrintChat(iReceiver, iSender, const tagek[], const uzenet[])
  200. {
  201.     message_begin(MSG_ONE, 76, .player=iReceiver);
  202.     write_byte(iSender);
  203.     write_string(tagek);
  204.     write_string("");
  205.     write_string(uzenet);
  206.     message_end();
  207. }
  208.  
  209. stock kereses(const id)
  210. {
  211.     for(new i; i < ArraySize(adat); i++)
  212.     {
  213.         ArrayGetArray(adat, i, jatekosadat);
  214.         switch(jatekosadat[TIPUS])
  215.         {
  216.             case 'j':
  217.             {
  218.                 if(get_user_flags(id) & read_flags(jatekosadat[ELLENORZES]))
  219.                     return copy(prefix[id], charsmax(prefix[]), jatekosadat[PREFIX]);
  220.             }  
  221.             case 'i':
  222.             {
  223.                 static sIP[16]; get_user_ip(id, sIP, charsmax(sIP), 1);
  224.                 if(!strcmp(jatekosadat[ELLENORZES], sIP))
  225.                     return copy(prefix[id], charsmax(prefix[]), jatekosadat[PREFIX]);
  226.             }      
  227.             case 's':
  228.             {
  229.                 static sAuthid[25]; get_user_authid(id, sAuthid, charsmax(sAuthid));
  230.                 if(!strcmp(jatekosadat[ELLENORZES], sAuthid))
  231.                     return copy(prefix[id], charsmax(prefix[]), jatekosadat[PREFIX]);
  232.             }      
  233.         }
  234.     }
  235.     return prefix[id][0] = 0;
  236. }
  237.  
  238. stock jogellenorzes(id)
  239. {
  240.     static flagek; flagek = get_user_flags(id);
  241.     if(flagek & TULAJ_JOG)  return 1;
  242.     else if(flagek & ADMIN_JOG) return 2;
  243.     else if(flagek & VIP_JOG)   return 3;
  244.     return 0;
  245. }
  246.  
  247. stock bool:is_user_steam(id)
  248. {
  249.     static dp_pointer;
  250.     if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
  251.     {
  252.         server_cmd("dp_clientinfo %d", id);
  253.         server_exec();
  254.         return (get_pcvar_num(dp_pointer) == 2) ? true : false;
  255.     }
  256.     return false;
  257. }

_________________
GitHub - mforce

Ők köszönték meg mforce nek ezt a hozzászólást: ksslszl (2015.12.31. 14:14)
  Népszerűség: 2.27%


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  [ 2 hozzászólás ] 


Ki van itt

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


Nyithatsz új 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