.mp3 sukonfiguravimas

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Post Reply
User avatar
Koti
Jau po truputį tampa savu
Posts: 192
Joined: 2012 Oct 24 14:37

.mp3 sukonfiguravimas

Post by Koti »

Sveiki, kaip ir per kur sukonfiguruoti .mp3 failus, kad grotų per cs? Ten bitrate ar ką reik pakeist?

Tetusis

Re: .mp3 sukonfiguravimas

Post by Tetusis »

Koti wrote:Sveiki, kaip ir per kur sukonfiguruoti .mp3 failus, kad grotų per cs? Ten bitrate ar ką reik pakeist?
bitrate tai yra kokybe, didziausia man rodos pagal standarta 320, aisku yra ir daugiau taip pat kylant kokybei dideja ir failo apimtis, tai nieko nekeicia, yra komanda kaip mp3 play kuri siunciama zaidejui su kintamuoju kintamasis yra dainos direktorija su pacia daina.

User avatar
Koti
Jau po truputį tampa savu
Posts: 192
Joined: 2012 Oct 24 14:37

Re: .mp3 sukonfiguravimas

Post by Koti »

Bet kuomet įmetu savo apkarpytas dainas, jos negroja. Pluginas gerai sukonfiguruotas, errorų nėr.

Tetusis

Re: .mp3 sukonfiguravimas

Post by Tetusis »

Koti wrote:Bet kuomet įmetu savo apkarpytas dainas, jos negroja. Pluginas gerai sukonfiguruotas, errorų nėr.
numesk plugino .sma (source)

User avatar
Koti
Jau po truputį tampa savu
Posts: 192
Joined: 2012 Oct 24 14:37

Re: .mp3 sukonfiguravimas

Post by Koti »

Code: Select all

          Credits:        - - - - - - -            * PaintLancer : Original idea and plugin.            * Avalanche   : Inspired color chat function from gungame plugin.            * Arion       : Random precache idea.                        * Languages translation :                - [fr] : Arkshine                - [de] : Mordekay                - [es] : Darkless             - - - - - - - - - - - */     #include <amxmodx>    #include <amxmisc>          new const    // _________________________________________________             PLUGIN [] = "Alternative End Round Sounds",            VERSION[] = "2.3b",            AUTHOR [] = "Arkshine";    // _________________________________________________      #if AMXX_VERSION_NUM < 180        #define old_amxx    #endif      /* ========================= [ "START" AERA FOR CHANGES ] ========================= */          #define _DEBUG                 // Active debug        #define MAX_FILE_LENGTH  196   // Max length for files + path.         #if defined old_amxx            #define MAX_SOUNDS    25   // Max sounds per team        #endif         new const             g_FileName[]    = "roundsound",     // Name of the main file if no files is found in 'g_FileFolder'.            g_FileFolder[]  = "round_sound",    // Name of the directory in amxmodx/configs/ for per-map files.            g_FilePrefix[]  = "ini",            // File extension used for the files.            g_CmdChat[]     = "/roundsound";    // Chat command for player.      /* ========================= [ "END" AERA FOR CHANGES ] ========================= */       // - - - - - - - - - - - - - - - - - - - - - - -     #define MAX_PLAYERS  32    #define TASKID_ADS   1333    #define SIZE_FILE    0    #define NULL        -1     new        bool:g_pHeardSound[ MAX_PLAYERS + 1 ],         #if !defined old_amxx            Array:g_lstSoundCT,            Array:g_lstSoundT,        #endif         p_enabled,        p_player_toggle,        p_time_ads,        p_random_precache,         g_sRp_value[12],        g_msgSayText;      enum _:e_Team    {        T = 0,        CT,    };     new g_nSnd[ e_Team ];     #if defined old_amxx        new g_sTeam_sounds[ MAX_SOUNDS ][ e_Team ][ MAX_FILE_LENGTH ];        #define charsmax(%1)  sizeof( %1 ) - 1    #endif     #define _is_wav(%1)  equali( %1[strlen( %1 ) - 4 ], ".wav" )     // - - - - - - - - - - - - - - - - - - - - - - -      public plugin_precache()    {        register_dictionary( "end_roundsound.txt" );                      if( ( p_random_precache = get_cvar_pointer( "erc_random_precache" ) ) )            get_pcvar_string( p_random_precache, g_sRp_value, charsmax( g_sRp_value ) );         if( !p_random_precache )            return;                    #if !defined old_amxx            g_lstSoundCT = ArrayCreate( MAX_FILE_LENGTH );            g_lstSoundT  = ArrayCreate( MAX_FILE_LENGTH );        #endif         loading_file();    }      public plugin_init()    {        register_plugin( PLUGIN, VERSION, AUTHOR );        register_cvar( "ers_version", VERSION, FCVAR_SERVER | FCVAR_SPONLY );         register_event( "SendAudio", "eT_win" , "a", "2&%!MRAD_terwin" );        register_event( "SendAudio", "eCT_win", "a", "2&%!MRAD_ctwin"  );         p_enabled         = register_cvar( "ers_enabled"        , "1"   );        p_player_toggle   = register_cvar( "ers_player_toggle"  , "1"   );        p_time_ads        = register_cvar( "erc_time_ads"       , "120" );         if( !p_random_precache )        {            register_cvar( "erc_random_precache", g_sRp_value );            server_cmd( "restart" );        }         register_clcmd( "say"       , "cmd_Say" );        register_clcmd( "say_team"  , "cmd_Say" );         g_msgSayText = get_user_msgid( "SayText" );    }      public client_authorized( id )        g_pHeardSound[id] = true;      public client_disconnect( id )     {        g_pHeardSound[id] = true;        remove_task( id + TASKID_ADS );    }      public client_putinserver( id )    {        new Float:time = get_pcvar_float( p_time_ads );         if( !time )            return;         remove_task( id + TASKID_ADS );        set_task( time, "show_ads", id + TASKID_ADS, _, _, "b" );    }      public show_ads( taskid )    {        new id = taskid - TASKID_ADS;        ShowPrint( id, "%L", id, "ERS_DISPLAY_ADS", g_CmdChat );    }      public cmd_Say( id )    {        if( !get_pcvar_num( p_enabled ) )            return PLUGIN_CONTINUE;         static sMsg[64];        read_argv( 1, sMsg, charsmax( sMsg ) );         if( equali( sMsg, g_CmdChat ) )        {            if( !get_pcvar_num( p_player_toggle ) )            {                ShowPrint( id, "%L", id, "ERS_CMD_DISABLED" );                return PLUGIN_HANDLED;            }             g_pHeardSound[id] = g_pHeardSound[id] ? false : true;            ShowPrint( id, "%L", id, g_pHeardSound[id] ? "ERS_SOUND_ENABLED" : "ERS_SOUND_DISABLED" );             return PLUGIN_HANDLED;        }         return PLUGIN_CONTINUE;    }      public eT_win()    {        if( !g_nSnd[ e_Team:T ] )            return;         play_sound( e_Team:T );    }      public eCT_win()    {        if( !g_nSnd[ e_Team:CT ] )            return;         play_sound( e_Team:CT );    }      play_sound( iTeam )    {        static    //  - - - - - - - - - - - - - - - -            sCurSnd[ MAX_FILE_LENGTH ];    //  - - - - - - - - - - - - - - - -         new iRand;         if( g_nSnd[ iTeam ] > 1 )            iRand = random( g_nSnd[ iTeam ] );         #if defined old_amxx            copy( sCurSnd, MAX_FILE_LENGTH - 1, g_sTeam_sounds[ iRand ][ iTeam ] );        #else            ArrayGetString( iTeam == CT ? g_lstSoundCT : g_lstSoundT, iRand, sCurSnd, MAX_FILE_LENGTH - 1 );        #endif         _is_wav( sCurSnd ) ?              format( sCurSnd, MAX_FILE_LENGTH - 1, "spk %s", sCurSnd[6] ) :             format( sCurSnd, MAX_FILE_LENGTH - 1, "mp3 play %s", sCurSnd );         if( get_pcvar_num( p_player_toggle ) )        {            static        //  - - - - - - - - - - -                iPlayers[32],                iNum, pid;        //  - - - - - - - - - - -             get_players( iPlayers, iNum, "c" );             for( new i; i < iNum; i++ )            {                pid = iPlayers[i];                 if( !g_pHeardSound[pid] || is_user_bot( pid ) )                    continue;                 client_cmd( pid, "%s", sCurSnd );            }        }        else            client_cmd( 0, "%s", sCurSnd );    }      get_prefix( sMap[], iLen_map, sMapType[], iLen_type )    {        new    //  - - - - - - - - -            sRest[32];    //  - - - - - - - - -         get_mapname( sMap, iLen_map );        strtok( sMap, sMapType, iLen_type, sRest, charsmax( sRest ), '_', 1 );    }      loading_file()    {        static    //  - - - - - - - - - - - - - - - - -            sPath[ MAX_FILE_LENGTH ],    //      |            sConfigsDir[64],            sPrefix[6],            sMap[32];    //  - - - - - - - - - - - - - - - - -         get_prefix( sMap, charsmax( sMap ), sPrefix, charsmax( sPrefix ) );        get_configsdir( sConfigsDir, charsmax( sConfigsDir ) );          new bool:bFound;         for( new i = 1; i <= 3; i++ )        {            switch( i )            {                case 1 : formatex( sPath, charsmax( sPath ), "%s/%s/prefix-%s.%s", sConfigsDir, g_FileFolder, sPrefix, g_FilePrefix );                case 2 : formatex( sPath, charsmax( sPath ), "%s/%s/%s.%s", sConfigsDir, g_FileFolder, sMap, g_FilePrefix );                case 3 : formatex( sPath, charsmax( sPath ), "%s/%s.%s", sConfigsDir, g_FileName, g_FilePrefix );                 default : break;            }             if( !CheckFile( sPath ) )                continue;             bFound = true;            break;        }         log_amx( "---" );         bFound ?            log_amx( "%L", LANG_SERVER, "ERS_LOG_LOADING", sPath ) :            log_amx( "%L", LANG_SERVER, "ERS_LOG_NO_FILES_FOUND" );         load_sound( sPath );    }         load_sound( const file[] )    {        new    //  - - - - - - - - - - - - - - -            sBuffer[256],    //      |            sLeft[ MAX_FILE_LENGTH ],            sRight[4],            sExt[6],    //      |            eTeam;    //  - - - - - - - - - - - - - - -         new fp = fopen( file, "rt" );         while( !feof( fp ) )        {            fgets( fp, sBuffer, charsmax( sBuffer ) );             trim( sBuffer );             if( !sBuffer[0] || sBuffer[0] == ';' || ( sBuffer[0] == '/' && sBuffer[1] == '/' ) )                continue;             if( sBuffer[0] != '"' || strlen( sBuffer  ) < 11 )                continue;             parse( sBuffer, sLeft, charsmax( sLeft ), sRight, charsmax( sRight ) );            formatex( sExt, charsmax( sExt ), sLeft[ strlen( sLeft ) - 4 ] );             if( equali( sExt, ".mp3" ) == -1 || equali( sExt, ".wav" ) == -1 )            {                log_amx( "%L", LANG_SERVER, "ERS_LOG_UNKNOW_EXTENSION", sExt );                continue;            }             if( !file_exists( sLeft ) )            {                log_amx( "%L", LANG_SERVER, "ERS_LOG_INEXISTENT_FILE", sLeft );                continue;            }             eTeam = NULL;             if( equali( sRight, "CT" ) )                eTeam = CT;             else if( equali( sRight, "T" ) )                eTeam = T;             if( eTeam == NULL )            {                log_amx( "%L", LANG_SERVER, "ERS_LOG_NO_TEAM_SOUND", sLeft );                continue;            }             #if defined old_amxx                copy( g_sTeam_sounds[ g_nSnd[ eTeam ] ][ eTeam ], MAX_FILE_LENGTH - 1, sLeft );            #else                ArrayPushString( eTeam == CT ? g_lstSoundCT : g_lstSoundT, sLeft );            #endif             ++g_nSnd[ eTeam ];        }        fclose( fp );         if( g_nSnd[ e_Team:T ] > 1 || g_nSnd[ e_Team:CT ] > 1 )        {                new iMax_t, iMax_ct;                GetPrecacheValue( iMax_t, iMax_ct );                 #if defined old_amxx                    UpdateArray( iMax_t, e_Team:T );                    UpdateArray( iMax_ct, e_Team:CT );                #else                    p_DeleteRandomItem( iMax_t , e_Team:T , g_lstSoundT  );                    p_DeleteRandomItem( iMax_ct, e_Team:CT, g_lstSoundCT );                #endif        }         log_amx( "---" );         #if defined _DEBUG            log_amx( "[ Loading %d CTs Sounds ]", g_nSnd[ e_team:CT ] );        #endif        #if defined old_amxx            PrecacheSounds( e_Team:CT );        #else            PrecacheSounds_n( g_lstSoundCT );        #endif         #if defined _DEBUG             log_amx( "[ Loading %d Ts Sounds ]", g_nSnd[ e_team:T ] );        #endif        #if defined old_amxx            PrecacheSounds( e_Team:T );        #else            PrecacheSounds_n( g_lstSoundT );        #endif    }      GetPrecacheValue( &iMax_t, &iMax_ct )    {        trim( g_sRp_value );        new pos = contain( g_sRp_value, "-" );         if( pos > 0 )        {            iMax_ct = str_to_num( g_sRp_value[ pos + 1 ] )            g_sRp_value[ pos ] = '^0';            iMax_t = str_to_num( g_sRp_value );        }        else        {            iMax_t  = str_to_num( g_sRp_value );            iMax_ct = iMax_t;        }    }         stock UpdateArray( iMax, iTeam )    {        new const iCnt_sound = g_nSnd[ iTeam ];                    if( !iMax || iMax == iCnt_sound )            return;         if( iMax >= iCnt_sound )            iMax = iCnt_sound - 1;         static            sTmp_sounds[ MAX_SOUNDS ][ e_Team ][ MAX_FILE_LENGTH ],            iLast_number[ MAX_SOUNDS ];         new i, iRand;        for( i = 0; i < iCnt_sound; i++ )        {            copy( sTmp_sounds[i][ iTeam ], MAX_FILE_LENGTH - 1, g_sTeam_sounds[i][ iTeam ] );            g_sTeam_sounds[i][ iTeam ][0] = '^0';        }         arrayset( iLast_number, 0, charsmax( iLast_number ) );         i = 0;        while( i != iMax )        {            check:            iRand = random( iCnt_sound );             if( iLast_number[ iRand ] )                goto check;             copy( g_sTeam_sounds[i][ iTeam ], MAX_FILE_LENGTH - 1, sTmp_sounds[ iRand ][ iTeam ] );            ++i;                            iLast_number[ iRand ] = 1;        }         g_nSnd[ iTeam ] = iMax;    }         stock p_DeleteRandomItem( iMax, iTeam, Array:sSound_a )    {        new const iCnt_sound = g_nSnd[ iTeam ];                    if( !iMax || iMax == iCnt_sound )            return;         if( iMax >= iCnt_sound )            iMax = iCnt_sound - 1;         DeleteRandomItem( iCnt_sound - iMax, sSound_a );        g_nSnd[ iTeam ] = iMax;    }      stock DeleteRandomItem( iRandom_n, Array:sSound_a )        {            new i;             while( i++ != iRandom_n )                ArrayDeleteItem( sSound_a, random( ArraySize( sSound_a ) ) );        }             stock PrecacheSounds( iTeam )    {        for( new i; i < g_nSnd[ iTeam ]; i++ )        {            PrecacheFile( g_sTeam_sounds[i][ iTeam ] );             #if defined _DEBUG                log_amx( "   - %s", g_sTeam_sounds[i][ iTeam ] );            #endif        }         log_amx( "---" );    }      stock PrecacheSounds_n( Array:sSound_a )    {        static    //  - - - - - - - - - - - - - - - - - - -            sFile[ MAX_FILE_LENGTH ],            iFileLen = charsmax( sFile );    //  - - - - - - - - - - - - - - - - - - -         for( new i; i < ArraySize( sSound_a ); i++ )        {            ArrayGetString( sSound_a, i, sFile, iFileLen );            PrecacheFile( sFile );             #if defined _DEBUG                log_amx( "   - %s", sFile );            #endif        }          log_amx( "---" );    }      PrecacheFile( const sound[] )    {        _is_wav( sound ) ?             precache_sound( sound[6] ) :            precache_generic( sound );    }      ShowPrint( id, const sMsg[], { Float, Sql, Result, _ }:... )    {        static    //  - - - - - - - - -            newMsg[191],            message[191],    //      |            tNewMsg;    //  - - - - - - - - -         tNewMsg = charsmax( newMsg );        vformat( newMsg, tNewMsg, sMsg, 3 );         replace_all( newMsg, tNewMsg, "!t", "^3" );        replace_all( newMsg, tNewMsg, "!g", "^4" );        replace_all( newMsg, tNewMsg, "!n", "^1" );         formatex( message, charsmax( message ), "^4[ERS]^1 %s", newMsg );         emessage_begin( MSG_ONE, g_msgSayText, _, id );        ewrite_byte( id );        ewrite_string( message );        emessage_end();    }            bool:CheckFile( const file[] )    {        new    //  - - - - - - - - - - - - - - - - -            sBuffer[256],            fp = fopen( file, "rt" );    //  - - - - - - - - - - - - - - - - -         if( !fp )            return false;         while( !feof( fp ) )        {            fgets( fp, sBuffer, charsmax( sBuffer ) );             trim( sBuffer );             if( !sBuffer[0] || sBuffer[0] == ';' || ( sBuffer[0] == '/' && sBuffer[1] == '/' ) || sBuffer[0] != '"' )                continue;             if( ( contain( sBuffer, ".mp3^"" ) != -1 || contain( sBuffer, ".wav^"" ) != -1 ) && ( contain( sBuffer, "^"T^"" ) != -1 || contain( sBuffer, "^"CT^"" ) != -1 ) )                return true;        }        fclose( fp );         return false;    }

Tetusis

Re: .mp3 sukonfiguravimas

Post by Tetusis »

viska surasiai teisingai kaip plugino autorius nurode? nes sitas pluginas taip pat palaiko .wav kuris naudoja komanda spk

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: .mp3 sukonfiguravimas

Post by aaarnas »

Nepamenu kurį ten kodeką reik naudot. Geriausia konvertuoti ir žiūrėti kuris tiks. O kad patikrinti ar veikia, tai įmeti failą į cs direktoriją sounds ir rašai:
mp3 play failas

Jei groja, tai viskas ok.
Palikau CS pasaulį ;/ . Nebepasiekiamas.

User avatar
Koti
Jau po truputį tampa savu
Posts: 192
Joined: 2012 Oct 24 14:37

Re: .mp3 sukonfiguravimas

Post by Koti »

Tetusis wrote:viska surasiai teisingai kaip plugino autorius nurode? nes sitas pluginas taip pat palaiko .wav kuris naudoja komanda spk
Taip, viską surašęs teisingai. Mano muzikų formatas .mp3
aaarnas wrote:Nepamenu kurį ten kodeką reik naudot. Geriausia konvertuoti ir žiūrėti kuris tiks. O kad patikrinti ar veikia, tai įmeti failą į cs direktoriją sounds ir rašai:
mp3 play failas

Jei groja, tai viskas ok.
Čia tą mp3 play failas į konsolę vest, ar kur?
Last edited by Koti on 2012 Nov 22 19:04, edited 1 time in total.

Tetusis

Re: .mp3 sukonfiguravimas

Post by Tetusis »

Koti wrote:
Tetusis wrote:viska surasiai teisingai kaip plugino autorius nurode? nes sitas pluginas taip pat palaiko .wav kuris naudoja komanda spk
Taip, viską surašęs teisingai. Mano muzikų formatas .mp3
aaarnas wrote:Nepamenu kurį ten kodeką reik naudot. Geriausia konvertuoti ir žiūrėti kuris tiks. O kad patikrinti ar veikia, tai įmeti failą į cs direktoriją sounds ir rašai:
mp3 play failas

Jei groja, tai viskas ok.
Čia tą mp3 play failas į konsolę vest, ar kur?
mp3 play /cstrike/sounds/tavokazkas/blablabla.mp3 , nepamirsk ten tureti to failo, suvesk tai savo zaidimo konsoleje

User avatar
rotosas
Gana aktyvus vartotojas
Posts: 225
Joined: 2011 Mar 19 18:56
Skype: rotosas
Location: Vilnius

Re: .mp3 sukonfiguravimas

Post by rotosas »

Arba

Code: Select all

play mp3 failas
lygtais irgi turėtų veikt.
Image
Image
Jei padėjau, nepagailėk ir nepatingėk paspaust +KARMA. :)

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 3 guests