hlmod.hu

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



Jelenlévő felhasználók

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

A legtöbb felhasználó (2761 fő) 2025.01.09. 20:06-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  [1 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Ölés rang
HozzászólásElküldve:2014.05.06. 14:40 
Offline
Fórum Moderátor
Avatar

Csatlakozott:2012.07.02. 17:41
Hozzászólások:1643
Megköszönt másnak: 121 alkalommal
Megköszönték neki: 249 alkalommal
Üdv, kérnék egy plugint amit tudjon:

0-30 ölésig Kezdő
30-250 ölésig Haladó
250-500 ölésig Veterám
500-1000 ölésig Közlegény
1000 felett Isten

Ezek a chatba a név elé kell. Valamint az adminoknak legyen zöld írás és a nevük elé hogy kick jogra Admin illetve immun joggal Tulaj. Allchatet is kérném beleírni. Névre mentse az öléseket. nem kell cvar se parancs.

Ez alapján eltudtok indulni :)
UI, ezt a plugint én már kipróbáltam, de egy gond van vele, hogy ha ékezeteket írnak chatba az első helyre pl akkor nem ír ki semmit :)
SMA Forráskód: [ Mindet kijelol ]
  1. #include < amxmodx >
  2. #include < amxmisc >
  3. #include < csx >
  4. #include < nvault >
  5. #include < cstrike >
  6.  
  7. new const g_iLevelMinKills[ ] =
  8. {
  9. 0,
  10. 250,
  11. 500,
  12. 1000
  13. };
  14.  
  15. const LEVELS = sizeof( g_iLevelMinKills );
  16.  
  17. new const g_szLevelName[ LEVELS ][ ] =
  18. {
  19. "Kezdő",
  20. "HaladĂł",
  21. "Közlegény",
  22. "Isten"
  23. };
  24.  
  25. #define MAX_PLAYERS 32
  26.  
  27. new g_iKills[ MAX_PLAYERS + 1 ];
  28. new g_iLevel[ MAX_PLAYERS + 1 ];
  29.  
  30. new g_hVault;
  31.  
  32. new g_iMsgID_SayText;
  33.  
  34. new g_iAdminChatFlag = ADMIN_ALL; // Do not edit this!
  35.  
  36. public plugin_init( )
  37. {
  38. register_plugin( "Kills Counter", "0.0.1", "Exolent" );
  39.  
  40. register_clcmd( "say", "CmdSay" );
  41. register_clcmd( "say_team", "CmdSayTeam" );
  42.  
  43. g_hVault = nvault_open( "KillsCounter" );
  44.  
  45. g_iMsgID_SayText = get_user_msgid( "SayText" );
  46.  
  47. new szCommand[ 32 ], iFlags;
  48. for( new i = 0; get_concmd( i, szCommand, charsmax( szCommand ), iFlags, "", 0, 0, -1 ); i++ )
  49. {
  50. if( equal( szCommand, "amx_chat" ) )
  51. {
  52. g_iAdminChatFlag = iFlags;
  53. break;
  54. }
  55. }
  56. }
  57.  
  58. public plugin_end( )
  59. {
  60. nvault_close( g_hVault );
  61. }
  62.  
  63. public client_authorized( iPlayer )
  64. {
  65. new szSteamID[ 35 ];
  66. get_user_authid( iPlayer, szSteamID, charsmax( szSteamID ) );
  67.  
  68. new iKills;
  69. if( ( iKills = nvault_get( g_hVault, szSteamID ) ) )
  70. {
  71. g_iKills[ iPlayer ] = iKills;
  72. g_iLevel[ iPlayer ] = GetLevel( iKills );
  73. }
  74. }
  75.  
  76. public client_disconnect( iPlayer )
  77. {
  78. new szSteamID[ 35 ];
  79. get_user_authid( iPlayer, szSteamID, charsmax( szSteamID ) );
  80.  
  81. new szKills[ 16 ];
  82. num_to_str( g_iKills[ iPlayer ], szKills, charsmax( szKills ) );
  83.  
  84. nvault_set( g_hVault, szSteamID, szKills );
  85.  
  86. g_iKills[ iPlayer ] = g_iLevel[ iPlayer ] = 0;
  87. }
  88.  
  89. public client_death( iKiller, iVictim, iWeapon, iHitPlace, bTK )
  90. {
  91. if( !bTK && iKiller != iVictim && iWeapon != CSW_C4 )
  92. {
  93. g_iLevel[ iKiller ] = GetLevel( ++g_iKills[ iKiller ] );
  94. }
  95. }
  96.  
  97. public CmdSay( iPlayer )
  98. {
  99. if( !is_user_connected( iPlayer ) )
  100. {
  101. return PLUGIN_HANDLED_MAIN;
  102. }
  103.  
  104. new szArgs[ 194 ];
  105.  
  106. if( !IsValidMessage( iPlayer, false, szArgs, charsmax( szArgs ) ) )
  107. {
  108. return PLUGIN_HANDLED_MAIN;
  109. }
  110.  
  111. new iAlive = is_user_alive( iPlayer );
  112. new CsTeams:iTeam = cs_get_user_team( iPlayer );
  113.  
  114. new iPlayers[ 32 ], iNum;
  115. get_players( iPlayers, iNum );
  116.  
  117. new szName[ 32 ];
  118. get_user_name( iPlayer, szName, charsmax( szName ) );
  119.  
  120. new const szPrefixes[ 2 ][ CsTeams ][ ] =
  121. {
  122. {
  123. "^1*HALOTT*",
  124. "^1*HALOTT*",
  125. "^1*HALOTT*",
  126. "^1*NÉZŐ*"
  127. },
  128. {
  129. "",
  130. "",
  131. "",
  132. ""
  133. }
  134. };
  135.  
  136. new szMessage[ 192 ];
  137. formatex( szMessage, charsmax( szMessage ), "%s^4 [%s]^3 %s^1 : %s", szPrefixes[ iAlive ][ iTeam ], g_szLevelName[ g_iLevel[ iPlayer ] ], szName, szArgs );
  138.  
  139. new iTarget;
  140. for( new i = 0; i < iNum; i++ )
  141. {
  142. iTarget = iPlayers[ i ];
  143.  
  144. if( iTarget == iPlayer || ( iAlive || is_user_connected( iTarget ) ) && is_user_alive( iTarget ) == iAlive )
  145. {
  146. message_begin( MSG_ONE_UNRELIABLE, g_iMsgID_SayText, _, iTarget );
  147. write_byte( iPlayer );
  148. write_string( szMessage );
  149. message_end( );
  150. }
  151. }
  152.  
  153. return PLUGIN_HANDLED_MAIN;
  154. }
  155.  
  156. public CmdSayTeam( iPlayer )
  157. {
  158. if( !is_user_connected( iPlayer ) )
  159. {
  160. return PLUGIN_HANDLED_MAIN;
  161. }
  162.  
  163. new szArgs[ 194 ];
  164.  
  165. if( !IsValidMessage( iPlayer, true, szArgs, charsmax( szArgs ) ) )
  166. {
  167. return PLUGIN_HANDLED_MAIN;
  168. }
  169.  
  170. new iAlive = is_user_alive( iPlayer );
  171. new CsTeams:iTeam = cs_get_user_team( iPlayer );
  172.  
  173. new iPlayers[ 32 ], iNum;
  174. get_players( iPlayers, iNum );
  175.  
  176. new szName[ 32 ];
  177. get_user_name( iPlayer, szName, charsmax( szName ) );
  178.  
  179. new const szPrefixes[ 2 ][ CsTeams ][ ] =
  180. {
  181. {
  182. "(Néző)",
  183. "*HALOTT*(Terrorist)",
  184. "*HALOTT*(Counter-Terrorist)",
  185. "(Néző)"
  186. },
  187. {
  188. "(Néző)",
  189. "(Terrorist)",
  190. "(Counter-Terrorist)",
  191. "(Néző)"
  192. }
  193. };
  194.  
  195. new szMessage[ 192 ];
  196. formatex( szMessage, charsmax( szMessage ), "^1%s^4 [%s]^3 %s^1 : %s", szPrefixes[ iAlive ][ iTeam ], g_szLevelName[ g_iLevel[ iPlayer ] ], szName, szArgs );
  197.  
  198. for( new i = 0, iTeammate; i < iNum; i++ )
  199. {
  200. iTeammate = iPlayers[ i ];
  201.  
  202. if( iTeammate == iPlayer || ( iAlive || is_user_connected( iTeammate ) ) && is_user_alive( iTeammate ) == iAlive && cs_get_user_team( iTeammate ) == iTeam )
  203. {
  204. message_begin( MSG_ONE_UNRELIABLE, g_iMsgID_SayText, _, iTeammate );
  205. write_byte( iPlayer );
  206. write_string( szMessage );
  207. message_end( );
  208. }
  209. }
  210.  
  211. return PLUGIN_HANDLED_MAIN;
  212. }
  213.  
  214. bool:IsValidMessage( iPlayer, bool:bTeamSay, szMessage[ ], iLen )
  215. {
  216. read_args( szMessage, iLen );
  217. remove_quotes( szMessage );
  218.  
  219. new iPos, cChar, i;
  220. while( ( cChar = szMessage[ iPos++ ] ) == '@' )
  221. {
  222. i++;
  223. }
  224.  
  225. if( ( bTeamSay ? ( i == 1 ) : ( 1 <= i <= 3 ) ) && !access( iPlayer, g_iAdminChatFlag ) )
  226. {
  227. return false;
  228. }
  229.  
  230. while( 0 <= ( cChar = szMessage[ iPos++ ] ) <= 255 )
  231. {
  232. if( cChar != ' ' && cChar != '%' )
  233. {
  234. return true;
  235. }
  236. }
  237.  
  238. return false;
  239. }
  240.  
  241. GetLevel( iKills )
  242. {
  243. for( new i = LEVELS - 1; i >= 0; i-- )
  244. {
  245. if( iKills >= g_iLevelMinKills[ i ] )
  246. {
  247. return i;
  248. }
  249. }
  250.  
  251. return 0;
  252. }
  253.  

_________________
Kép


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


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 3 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