Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

set_task amx_nominations

Статус пользователя Ernar
сообщение 19.10.2020, 21:23
Сообщение #1
Стаж: 5 лет 7 месяцев

Сообщений: 68
Благодарностей: 3
Полезность: 38

здаравствуйте сделал csdm сервер дневные и ночные карты через set_task
amx_task 00:00 "exec server-night.cfg" t
amx_task 00:01 "exec server-night.cfg" t
amx_task 09:00 "exec server.cfg" t
amx_task 09:01 "exec server.cfg" t
mapcycle.txt дневные карты отсюда беруться
mapcycle-night.txt ночные карты
проблема в том плагин amx_menu_for_nomination не видит карты,можете помочь сделать чтоб меню наминаций после 00:00 mapcycle-night.txt,а после 09:00 вот отсюда брал для номинации карты mapcycle.txt через set_task
Код
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define PLUGIN    "Menu for Nomination"
#define VERSION    "1.0"
#define    AUTHOR    "AndrewZ"

#define PDATA_SAFE            2
#define OFFSET_LINUX        5
#define OFFSET_CSMENUCODE    205

new g_cvar_Mode, g_cvar_File

public plugin_init()
{  
    register_plugin( PLUGIN, VERSION, AUTHOR )
    
    register_clcmd( "say maps",             "clcmd_MapsMenu",    ADMIN_ALL, "- open menu for map nomination" )
    register_clcmd( "say /maps",             "clcmd_MapsMenu",    ADMIN_ALL, "- open menu for map nomination" )
    register_clcmd( "say_team /maps",         "clcmd_MapsMenu",    ADMIN_ALL, "- open menu for map nomination" )
    register_clcmd( "maps_menu",             "clcmd_MapsMenu",    ADMIN_ALL, "- open menu for map nomination" )
    register_clcmd( "amx_nomination_menu",     "clcmd_MapsMenu",    ADMIN_ALL, "- open menu for map nomination" )
    
    g_cvar_Mode = register_cvar( "amx_mfn_mode", "1" )             // 0 = OFF; 1 = File; 2 = Folder.
    g_cvar_File = register_cvar( "amx_mfn_file", "mapcycle.txt" )     // File with maps list in "configs" dir.
    
    register_dictionary( "amx_menu_for_nomination.txt" )    
}

public clcmd_MapsMenu( id )
{
    new iCvarMode = get_pcvar_num( g_cvar_Mode )

    if( !is_user_connected( id ) || !iCvarMode )
        return PLUGIN_HANDLED
        
    new szTemp[ 64 ], iMenu
    
    formatex( szTemp, charsmax( szTemp ), "\y%L\R", id, "MFN_MENU_TITLE" )
    iMenu = menu_create( szTemp, "handler_MapsMenu" )
        
    if( iCvarMode == 1 )
    {
        new szCvarFile[ 32 ], iMapsFile
        get_pcvar_string( g_cvar_File, szCvarFile, charsmax( szCvarFile ) )
        
        get_configsdir( szTemp, charsmax( szTemp ) )
        format( szTemp, charsmax( szTemp ), "%s/%s", szTemp, szCvarFile )
        
        iMapsFile = fopen( szTemp, "rt" )
        
        if( iMapsFile )
        {
            while( !feof( iMapsFile ) )
            {
                fgets( iMapsFile, szTemp, charsmax( szTemp ) )
                
                trim( szTemp )
                
                if( is_map_valid( szTemp ) )
                    menu_additem( iMenu, szTemp, "", ADMIN_ALL )
            }
            
            fclose( iMapsFile )
        }
    }
    else
    {
        new iMapsDir
        
        iMapsDir = open_dir( "maps", szTemp, charsmax( szTemp ) )
        
        if( iMapsDir )
        {
            new iLen
            
            while( next_file( iMapsDir, szTemp, charsmax( szTemp ) ) )
            {
                iLen = strlen( szTemp )
                
                if( iLen > 4 && equali( szTemp[ iLen - 4 ], ".bsp", 4 ) )
                {
                    szTemp[ iLen - 4 ] = '^0'
                    
                    if( is_map_valid( szTemp ) )
                        menu_additem( iMenu, szTemp, "", ADMIN_ALL )
                }
            }
            
            close_dir( iMapsDir )
        }
    }
    
    formatex( szTemp, charsmax( szTemp ), "%L", id, "MFN_MENU_BACK" )
    menu_setprop( iMenu, MPROP_BACKNAME, szTemp )
    
    formatex( szTemp, charsmax( szTemp ), "%L", id, "MFN_MENU_NEXT" )
    menu_setprop( iMenu, MPROP_NEXTNAME, szTemp )
    
    formatex( szTemp, charsmax( szTemp ), "%L", id, "MFN_MENU_EXIT" )
    menu_setprop( iMenu, MPROP_EXITNAME, szTemp )
    
    menu_setprop( iMenu, MPROP_NUMBER_COLOR, "\w" )
    
    if( pev_valid( id ) == PDATA_SAFE )
        set_pdata_int( id, OFFSET_CSMENUCODE, 0, OFFSET_LINUX )
    
    menu_display( id, iMenu, 0 )
    
    return PLUGIN_HANDLED
}
    
public handler_MapsMenu( id, iMenu, iItem )
{
    if( iItem == MENU_EXIT )
    {
        menu_destroy( iMenu )
        
        return PLUGIN_HANDLED
    }
    
    new szData[ 1 ], szName[ 32 ], iAccess, iCallback
    menu_item_getinfo( iMenu, iItem, iAccess, szData, charsmax( szData ), szName, charsmax( szName ), iCallback )
    
    client_cmd( id, "say %s", szName )
    
    menu_destroy( iMenu )
    
    return PLUGIN_HANDLED
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 2 гостей читают эту тему: