Advertisement
IdoGame

Players Fps Shower

Aug 10th, 2014
697
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.66 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <engine>
  4.  
  5. #define PLUGIN "Players Fps Shower by xflane first plugin by f0rce"
  6. #define VERSION "1.0"
  7. #define AUTHOR "xflane first plugin by f0rce"
  8. #define Tag "AMXX"
  9.  
  10. new iCount[ 33 ]
  11. new idFps[ 33 ]
  12.  
  13. public plugin_init() {
  14. register_plugin(PLUGIN, VERSION, AUTHOR)
  15. register_clcmd("say /fps","showmenu")
  16. set_task(300.0, "AMSG",_,_,_, "b");
  17. register_clcmd("say","SayCmd")
  18. }
  19. public AMSG(){
  20.  
  21. ColorChat(0,"This Server Using Players Fps Shower Type /fps!");
  22.  
  23. }
  24. public SayCmd(id)
  25. {
  26. new Message[192], Cmd[33], Amount[33], HisName[33];
  27. read_args(Message, 191);
  28. remove_quotes(Message);
  29.  
  30. parse(Message, Cmd, 32, HisName, 32, Amount, 32);
  31.  
  32. if(equali(Cmd, "/fps") )
  33. {
  34. new player = cmd_target(player, HisName, 8)
  35.  
  36.  
  37. if (player)
  38. {
  39.  
  40. ColorChat(id,"%s ^3FPS : ^4%i",GetUserName(player),idFps[player]);
  41.  
  42. }
  43.  
  44. }
  45.  
  46. }
  47. public client_PostThink( id )
  48. {
  49. iCount[ id ]++;
  50.  
  51. static LastEndTime[ 33 ]
  52.  
  53. if( floatround( get_gametime( ) ) == LastEndTime[ id ] )
  54. return;
  55.  
  56. LastEndTime[ id ] = floatround( get_gametime( ) );
  57.  
  58. idFps[ id ] = iCount[ id ];
  59. iCount[ id ] = 0;
  60. }
  61.  
  62.  
  63. public showmenu( id )
  64. {
  65. new nitems[100]
  66.  
  67. formatex(nitems,99, "\r[\y %s \r]\w Players Fps Shower^n\dVersion 1.3.4",Tag)
  68.  
  69. new menu = menu_create(nitems, "submenu" );
  70.  
  71. new players[ 32 ], pnum, tempid;
  72. new szName[ 32 ], szTempid[ 10 ];
  73.  
  74. get_players( players, pnum, "" );
  75.  
  76. for( new i; i< pnum; i++ )
  77. {
  78. tempid = players[ i ];
  79.  
  80. get_user_name( tempid, szName, 31 );
  81. num_to_str( tempid, szTempid, 9 );
  82. new nitem[100]
  83.  
  84. formatex(nitem,99, "%s \rFPS : \y%i",szName,idFps[tempid])
  85. menu_additem( menu, nitem, nitem, 0 );
  86.  
  87. }
  88.  
  89. menu_display( id, menu );
  90. return PLUGIN_HANDLED;
  91. }
  92.  
  93. public submenu( id, Menu, item )
  94. {
  95. if( item == MENU_EXIT )
  96. {
  97. menu_destroy( Menu );
  98. return PLUGIN_HANDLED;
  99. }
  100.  
  101.  
  102.  
  103.  
  104.  
  105. menu_destroy( Menu );
  106. showmenu(id);
  107. return PLUGIN_HANDLED;
  108. }
  109. stock GetUserName( const Index )
  110. {
  111. static gName[ 32 ];
  112.  
  113. get_user_name( Index, gName, charsmax( gName ) );
  114.  
  115. return gName;
  116. }
  117.  
  118. stock ColorChat(const id, const string[], {Float, Sql, Resul,_}:...) {
  119. new msg[191], players[32], count = 1;
  120. static len; len = formatex(msg, charsmax(msg), "^4[ ^3%s^4 ]^1 ",Tag);
  121. vformat(msg[len], charsmax(msg) - len, string, 3);
  122.  
  123. if(id) players[0] = id;
  124. else get_players(players,count,"ch");
  125.  
  126. for (new i = 0; i < count; i++)
  127. {
  128. if(is_user_connected(players[i]))
  129. {
  130. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"),_, players[i]);
  131. write_byte(players[i]);
  132. write_string(msg);
  133. message_end();
  134. }
  135. }
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement