Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

ERS, dodanie czegoś nowego


  • Zamknięty Temat jest zamknięty
1 odpowiedź w tym temacie

#1 Kusek

    z Wikipedii

  • Power User

Reputacja: 446
Wszechobecny

  • Postów:1 655
  • Imię:Krystian
Offline

Napisano 18.10.2010 18:57

Witam, chciałbym się dowiedzieć jak dodać w ERS nowy cudzysłów w roundsound.ini


przeczytałem cały sma, lecz w dalszym ciągu nie wiem gdzie jest odpowiedzialny ten kod który czyta linie z roudnsound.ini


hmm.. czy to może być to??


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
}

  • +
  • -
  • 0

#2 Owner123

    Wszechpomocny

  • Użytkownik

Reputacja: 146
Zaawansowany

  • Postów:331
  • Lokalizacja:Barty ;]
Offline

Napisano 18.10.2010 20:45

        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 );

To jest czytanie pliku w formie innej niż read_file.

Skoro chcesz dodać kolejną opcje do roundsound.ini musisz pobawić się z parse().

Użytkownik Owner123 edytował ten post 18.10.2010 20:46

  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych