Русское сообщество по скриптингу

Speclist неправильное отображение FPS

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Speclist неправильное отображение FPS

Сообщение dvahitov95 » 31 авг 2017, 22:24

Всем привет. Можно ли как нибудь исправить, то что отображается неправильное FPS (погрешность большая)? Даже в минус уходит...

Код: Выделить всё
#include <amxmodx>
#include <fakemeta>
#include <engine>
#include <cstrike>

#define UPDATEINTERVAL 1.0
#define ECHOCMD

native deathrun_level(id)

new 
gCvarImmunitygCvarOn
new bool:gOnOff[33] = { true, ... }
new 
g_fps[33][11], g_i[33]

public 
plugin_init()
{
    
register_plugin("Speclist""1.2a""SasaiLalka")
    
gCvarOn register_cvar("amx_speclist""1"00.0)
    
gCvarImmunity register_cvar("amx_speclist_immunity""1"00.0)
    
register_clcmd("dr_speclist""cmdSpecList", -1"")
    
set_task(UPDATEINTERVAL"tskShowSpec"123094""0"b"0)
}

public 
cmdSpecList(id)
{
    if(
gOnOff[id])
    {
        
gOnOff[id] = false
    
}
    else
    {
        
gOnOff[id] = true
    
}
    
#if defined ECHOCMD
    
return PLUGIN_CONTINUE
    
#else
    
return PLUGIN_HANDLED
    
#endif
}

public 
tskShowSpec()
{
    if(!
get_pcvar_num(gCvarOn))
    {
        return 
PLUGIN_CONTINUE
    
}
    static 
szHud[1102]
    static 
szName[34]
    static 
bool:send
    
for(new alive 1alive <= get_maxplayers(); alive++)
    {
        new 
bool:sendTo[33]
        
send false
        
if(!is_user_alive(alive))
        {
            continue;
        }
        
sendTo[alive] = true
        get_user_name
(aliveszName32)
        
format(szHud245"[ %d$ | %d HP ]^n[ Kill: %d | %i FPS ]^n^nНаблюдают:^n"cs_get_user_money(alive), get_user_health(alive), deathrun_level(alive), get_user_fps(alive))
        for(new 
dead 1dead <= get_maxplayers(); dead++)
        {
            if(
is_user_connected(dead))
            {
                if(
is_user_alive(dead) || is_user_bot(dead))
                {
                    continue;
                }
                if(
pev(deadpev_iuser2) == alive)
                {
                    if(!(
get_pcvar_num(gCvarImmunity) && get_user_flags(dead0) & ADMIN_LEVEL_D))
                    {
                        
get_user_name(deadszName32)
                        
add(szName33"^n"0)
                        
add(szHud1101szName0)
                        
send true
                    
}
                    
sendTo[dead] = true
                
}
            }
        }
        if(
send == true)
        {
            for(new 
1<= get_maxplayers(); i++)
            {
                if(
sendTo[i] == true && gOnOff[i] == true)
                {
                    
set_hudmessage(6464640.750.1500.0UPDATEINTERVAL 0.10.00.0, -1)
                    
show_hudmessage(iszHud)
                }
            }
        }
    }
    return 
PLUGIN_CONTINUE
}

public 
client_PreThink(id)
{
    
g_fps[id][10]++
}

public 
client_putinserver(id)
{
    
gOnOff[id] = true
    set_task
(0.1"count"id""0"b")
}

public 
count(id)
{
    if(
g_i[id] < 9)
    {
        
g_i[id]++
    }
    else
    {
        
g_i[id] = 0
    
}
    
g_fps[id][g_i[id]] = g_fps[id][10]
    
g_fps[id][10] = 0
}

get_user_fps(id)
{
    new 
i
    
new 0
    
for(09i++)
    {
        
+= g_fps[id][i]
    }
    return 
5;
}

public 
client_disconnect(id)
{
    
gOnOff[id] = true
Аватара пользователя
dvahitov95
 
Сообщения: 133
Зарегистрирован: 07 авг 2017, 17:48
Благодарил (а): 16 раз.
Поблагодарили: 1 раз.
Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#

Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6