diff options
-rw-r--r-- | src/client/snd_main.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/client/snd_main.c b/src/client/snd_main.c index ff233039..5cb206be 100644 --- a/src/client/snd_main.c +++ b/src/client/snd_main.c @@ -415,22 +415,28 @@ S_Play_f */ void S_Play_f( void ) { int i; + int c; sfxHandle_t h; - char name[256]; + char name[MAX_TOKEN_CHARS]; if( !si.RegisterSound || !si.StartLocalSound ) { return; } - i = 1; - while ( i<Cmd_Argc() ) { + c = Cmd_Argc(); + + if( c < 2 ) { + Com_Printf ("Usage: play <sound filename> [sound filename] [sound filename] ...\n"); + return; + } + + for( i = 1; i < c; i++ ) { Q_strncpyz( name, Cmd_Argv(i), sizeof(name) ); h = si.RegisterSound( name, qfalse ); if( h ) { si.StartLocalSound( h, CHAN_LOCAL_SOUND ); } - i++; } } @@ -453,7 +459,7 @@ void S_Music_f( void ) { } else if ( c == 3 ) { si.StartBackgroundTrack( Cmd_Argv(1), Cmd_Argv(2) ); } else { - Com_Printf ("music <musicfile> [loopfile]\n"); + Com_Printf ("Usage: music <musicfile> [loopfile]\n"); return; } |