Raised This Month: $ Target: $400
 0% 

User fps.


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
zombieplague
Veteran Member
Join Date: Apr 2009
Old 11-22-2009 , 12:03   Re: User fps.
Reply With Quote #1

Quote:
Originally Posted by lazarev View Post
PHP Code:
#include <amxmodx> 
#include <fakemeta>
 
#define PLG_VERSION "1.2"
 
new FPS 0;
new 
Float:NC 0.0;
 
new 
Float:g_nc[33] = 0.0;
 
new 
LASTFPS;
new 
textovariable;
 
new 
Pcvar[5];
 
new 
g_fps[33];
new 
g_lastfps[33];
new 
g_average[10];
 
public 
plugin_init()

    
register_plugin("FPS & Ping Status"PLG_VERSION ,"ReymonARG")
 
    
register_forward(FM_StartFrame,"ForwardStartFrame")
    
register_forward(FM_PlayerPreThink,"PreThink")
 
    
register_concmd"say /fps""infomenu" );
 
    
register_cvar("amx_statusinfo_version"PLG_VERSIONFCVAR_SERVER FCVAR_SPONLY );
 
    
Pcvar[0] = register_cvar("amx_statusinfo""1");
    
Pcvar[1] = register_cvar("amx_statusinfo_msg""0");
    
Pcvar[2] = register_cvar("amx_statusinfo_interval""180.0");
 
    
textovariable get_user_msgid("SayText");
    
set_task(60.0"msglala");
}
 
public 
client_putinserver(id)
    
g_nc[id] = get_gametime();
 
public 
client_disconnect(id)
    
remove_task(id);
 
public 
ForwardStartFrame()
{
    new 
Float:HLT get_gametime();
    if(
NC >= HLT)
    {
        
FPS++;
    }
    else
    {
        
NC NC 1;
        
LASTFPS FPS;
        new 
rand random_num(0,9);
        
g_average[rand] = FPS;
        
FPS 0;
    }
}
 
public 
PreThink(id
{
    new 
Float:HLT get_gametime();
    if( 
g_nc[id] >= HLT)
    {
        
g_fps[id]++;
    }
    else
    {
        
g_nc[id] = g_nc[id] + 1.0;
        
g_lastfps[id] = g_fps[id];
        
g_fps[id] = 0;
    }
}
 
GetAverage()
{    
    new 
Average;
 
    for(new 
010i++)
    {
        new 
calculo g_average[i];
        
Average += calculo;
    }
 
    return 
Average 10;
}
 
GetPing()
{
    new 
Playersnum,Players[32],Player,Count,Ping,Loss,Average;
    
get_players(Players,Playersnum,"ch");
 
    if( 
Playersnum )
        return 
0;
 
    for(
Count 0Count PlayersnumCount++)
    {
        
Player Players[Count];
        
get_user_ping(Player,Ping,Loss);
        
Average += Ping;
    }
 
    return 
Average Playersnum;
}
 
GetFps()
{
    new 
Playersnum,Players[32],Player,CountAverage;
    
get_players(Players,Playersnum,"ch");
 
    if( 
Playersnum )
        return 
0;
 
    for(
Count 0Count PlayersnumCount++)
    {
        
Player Players[Count];
        
Average += g_lastfps[Player];
    }
 
    return 
Average Playersnum;
}
 
public 
msglala()
{
    
set_task(get_pcvar_float(Pcvar[2]), "msglala")
 
    if( 
get_pcvar_num(Pcvar[0]) != )
        return;
 
    if( 
get_pcvar_num(Pcvar[1]) != )
        return;
 
    for( new 
1<= 32 i++)
    {
        if( 
is_user_connected(i) && !is_user_bot(i) )
            print(
i,"^x04Privet,^x04 kak dila?")
            
//print(i, "^x04[Jch] Server running at^x03 %d^x04 FPS (Average players^x03 %d^x04 FPS and^x03 %d^x04 Ping)", LASTFPS, GetFps(), GetPing());
    
}
}
 
public 
infomenu(id)
{
    if( 
get_pcvar_num(Pcvar[0]) != )
        return;
 
    new 
msgtitulo[64];
    
formatex(msgtitulo63"\yInfo Server \w- \y%i \wAverage: \y%i"LASTFPSGetAverage());
    new 
menu menu_create(msgtitulo"menuinfo");
    new 
contador 0;
 
    for( new 
1<= 32i++)
    {
        if( 
is_user_connected(i) && !is_user_bot(i) )
        {
            
contador++;
            new 
msg[128], name[32], numero[5], pingloss;
            
get_user_name(iname31);
            
get_user_ping(ipingloss);
            
formatex(msg127"\y%s \wwith \y%i \wFPS and \y%i \wPing"nameg_lastfps[i], ping );
            
num_to_str(contadornumero4);
            
menu_additem(menumsgnumero0);
        }
    }
 
    
menu_display(idmenu0);
    
set_task(1.0"infomenu"id__"b");
}
 
public 
menuinfo(idmenuitem)
{
    if(
item == MENU_EXIT)
    {
        
remove_task(id);
        return 
PLUGIN_HANDLED;
    }
 
    return 
0;
}
 
print(
id, const msg[], {Float,Sql,Result,_}:...)
{
    new 
message[192];
    
vformat(message191msg3);
 
    
message_begin(MSG_ONE_UNRELIABLEtextovariable_id);
    
write_byte(id);
    
write_string(message);
    
message_end();

Thanks for your help. But i don't need the ping status. Btw how can i see fps of user when my crosshair pointing at them ?
zombieplague is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 13:39.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode