Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Action Command_Nominate( int client, int args )
- {
- if( args < 1 )
- {
- OpenNominateMenu( client );
- return Plugin_Handled;
- }
- char mapname[PLATFORM_MAX_PATH];
- GetCmdArg( 1, mapname, sizeof(mapname) );
- if( SMC_FindMap( mapname, mapname, sizeof(mapname) ) )
- {
- if( StrEqual( mapname, g_cMapName ) )
- {
- ReplyToCommand( client, "[SMC] Can't nominate current map" );
- return Plugin_Handled;
- }
- int idx = g_aOldMaps.FindString( mapname );
- if( idx != -1 )
- {
- ReplyToCommand( client, "[SMC] %s was recently played", mapname );
- return Plugin_Handled;
- }
- ReplySource old = SetCmdReplySource( SM_REPLY_TO_CHAT );
- Nominate( client, mapname );
- SetCmdReplySource( old );
- }
- else
- {
- PrintToChatAll( "[SMC] Could not find map '%s'", mapname );
- }
- return Plugin_Handled;
- }
- public Action Command_UnNominate( int client, int args )
- {
- if( g_cNominatedMap[client][0] == '\0' )
- {
- ReplyToCommand( client, "[SMC] You haven't nominated a map" );
- return Plugin_Handled;
- }
- int idx = g_aNominateList.FindString( g_cNominatedMap[client] );
- if( idx != -1 )
- {
- g_aNominateList.Erase( idx );
- g_cNominatedMap[client][0] = '\0';
- }
- ReplyToCommand( client, "[SMC] Successfully removed nomination for '%s'", g_cNominatedMap[client] );
- return Plugin_Handled;
- }
- void Nominate( int client, const char mapname[PLATFORM_MAX_PATH] )
- {
- int idx = g_aNominateList.FindString( mapname );
- if( idx != -1 )
- {
- ReplyToCommand( client, "[SMC] %s has already been nominated", mapname );
- return;
- }
- if( g_cNominatedMap[client][0] != '\0' )
- {
- RemoveString( g_aNominateList, g_cNominatedMap[client] );
- }
- g_aNominateList.PushString( mapname );
- g_cNominatedMap[client] = mapname;
- PrintToChatAll( "[SMC] %N has nominated %s", client, mapname );
- }
- bool SMC_FindMap( const char[] mapname, char[] output, int maxlen )
- {
- int length = g_aMapList.Length;
- for( int i = 0; i < length; i++ )
- {
- char entry[PLATFORM_MAX_PATH];
- g_aMapList.GetString( i, entry, sizeof(entry) );
- if( StrContains( entry, mapname ) != -1 )
- {
- strcopy( output, maxlen, entry );
- return true;
- }
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement