Поиск ищу плагин topaward

IIuToH

Только чтение
Заблокированные
Регистрация
5 Авг 2018
Сообщения
143
Симпатии
0
Предупреждения
260
Добрый вечер!
ищу плагин topaward что бы работал с csstats_mysql скальпеля
что бы выдавал несколько флагов и игнорил тоже несколько
 

IIuToH

Только чтение
Заблокированные
Регистрация
5 Авг 2018
Сообщения
143
Симпатии
0
Предупреждения
260
нашел неугомона, но может ли он выдавать несколько флагов? так же как и игнорить?
Код:
#include <amxmodx>
#tryinclude <reapi>
#if !defined _reapi_included
    #include <hamsandwich>
#endif

#define YOUR_STATS_SYSTEM 1
    // Игровая статистика, установленная на Вашем сервере
    // 0 - CSX
    // 1 - CSSTATS MYSQL by SKAJIbnEJIb
    // 2 - CSSTATSX SQL by serfreeman1337

#define MAX_TOP_POSITION 5
    // Сколько первых человек из статистики получат флаги из SET_FLAGS
    
#define SET_FLAGS ADMIN_LEVEL_H
    // Выдаваемые флаги доступа
    
#define IGNORED_FLAGS (ADMIN_MENU|ADMIN_LEVEL_H)
    // Флаги, с которыми не выдавать флаги
    
#if YOUR_STATS_SYSTEM == 0
    #include <csstats>
#endif
#if YOUR_STATS_SYSTEM == 1
    #include <csstats_mysql>
#endif
#if YOUR_STATS_SYSTEM == 2
    #include <csstatsx_sql>
#endif   

new bool:g_bSetFlags[33];
    
public plugin_init()
{
    register_plugin("Top Awards", "1.0", "neygomon");
#if defined _reapi_included
    RegisterHookChain(RG_CBasePlayer_Spawn, "CBasePlayer_Spawn_Post", true);
#else
    RegisterHam(Ham_Spawn, "player", "CBasePlayer_Spawn_Post", true);
#endif
}

public client_putinserver(id)
    g_bSetFlags[id] = false;

public CBasePlayer_Spawn_Post(const id)
{
    if(!is_user_connected(id))
        return;
    
    if(!is_user_allowed(id))
    {
        if(g_bSetFlags[id])
        {
            set_user_flags(id, get_user_flags(id) & ~SET_FLAGS);
            client_print(id, print_chat, "Вы вылетели из TOP %d сервера. Привилегии удалены :(", MAX_TOP_POSITION);
            g_bSetFlags[id] = false;
        }
    }
    else
    {
        set_user_flags(id, get_user_flags(id) | SET_FLAGS);
        client_print(id, print_chat, "Вы попали в TOP %d сервера. Привилегии успешно активированы :)", MAX_TOP_POSITION);
        g_bSetFlags[id] = true;
    }
}

bool:is_user_allowed(id)
{
    if(get_user_flags(id) & IGNORED_FLAGS)
        return false;
    
    new myRank = 0;
    new bool:bAllowed = false;
    new players[32], pnum;
    get_players(players, pnum);
    
#if YOUR_STATS_SYSTEM == 0 || YOUR_STATS_SYSTEM == 2
    new st[8], bh[HIT_RIGHTLEG + 1];
#endif
#if YOUR_STATS_SYSTEM == 1
    new st[22];
#endif
    for(new i, pos; i < pnum; ++i)
    {
    #if YOUR_STATS_SYSTEM == 0
        pos = get_user_stats(id, st, bh);
    #endif
    #if YOUR_STATS_SYSTEM == 1
        pos = csstats_get_user_stats(id, st);
    #endif
    #if YOUR_STATS_SYSTEM == 2
        pos = get_user_stats_sql(id, st, bh);
    #endif
        if(players[i] == id)
            myRank = pos;
        else
        {
            if(0 < pos <= MAX_TOP_POSITION)
            {
                if(get_user_flags(players[i]) & SET_FLAGS)
                {
                    bAllowed = true;
                    break;
                }
            }
        }   
    }
    
    if(bAllowed && myRank == MAX_TOP_POSITION + 1)
        return true;
    else if(0 < myRank <= MAX_TOP_POSITION)
        return true;
    
    return false;
}
 
Сверху Снизу