Как сделать вызов меню только с одного STEAM ID

Тема в разделе "Программирование / Скриптинг", создана пользователем RSG, 23 окт 2014.

  1. RSG

    RSG

    Сообщения:
    279
    Симпатии:
    32
    Как сделать чтобы меню открывалось только для одного Steam ID, а не по флагу.
    Код:
    public OnPluginStart()
    {
        RegConsoleCmd("war3admin",War3Source_Admin,"Brings up the War3Source admin panel.");
    
        RegConsoleCmd("say war3admin",War3Source_Admin,"Brings up the War3Source admin panel.");
        RegConsoleCmd("say_team war3admin",War3Source_Admin,"Brings up the War3Source admin panel.");
    }
    
    
    public Action:War3Source_Admin(client,args)
    {
        if(ValidPlayer(client) && HasSMAccess(client, ADMFLAG_ROOT))
        {
            new Handle:adminMenu=CreateMenu(War3Source_Admin_Selected);
            SetMenuExitButton(adminMenu,true);
            SetSafeMenuTitle(adminMenu,"%T","[War3Source] Select a player to administrate",client);
            
            decl String:playername[64];
            decl String:war3playerbuf[4];
    
            for(new x=1;x<=MaxClients;x++)
            {
                if(ValidPlayer(x)){
                    
                    Format(war3playerbuf,sizeof(war3playerbuf),"%d",x);
                    GetClientName(x,playername,sizeof(playername));
                    AddMenuItem(adminMenu,war3playerbuf,playername);
                }
            }
            DisplayMenu(adminMenu,client,20);
        }
        
        return Plugin_Handled;
    }
    
     
  2. RSG

    RSG

    Сообщения:
    279
    Симпатии:
    32
    не компилиться
     
  3. pokypka20

    pokypka20

    Сообщения:
    250
    Симпатии:
    30
    dick,
    PHP:
    public OnPluginStart()
    {
        
    RegConsoleCmd("war3admin",War3Source_Admin,"Brings up the War3Source admin panel.");

        
    RegConsoleCmd("say war3admin",War3Source_Admin,"Brings up the War3Source admin panel.");
        
    RegConsoleCmd("say_team war3admin",War3Source_Admin,"Brings up the War3Source admin panel.");
    }


    public 
    Action:War3Source_Admin(client,args)
    {
        
    decl String:SteamID[25]; 
        if (
    GetClientAuthString(clientSteamID25) && !strcmp(SteamID"впиши сюда нужный STEAMid в полном формате")) 
        {
            if(
    ValidPlayer(client) && HasSMAccess(clientADMFLAG_ROOT))
            {
                new 
    Handle:adminMenu=CreateMenu(War3Source_Admin_Selected);
                
    SetMenuExitButton(adminMenu,true);
                
    SetSafeMenuTitle(adminMenu,"%T","[War3Source] Select a player to administrate",client);
                
                
    decl String:playername[64];
                
    decl String:war3playerbuf[4];
        
                for(new 
    x=1;x<=MaxClients;x++)
                {
                    if(
    ValidPlayer(x)){
                        
                        
    Format(war3playerbuf,sizeof(war3playerbuf),"%d",x);
                        
    GetClientName(x,playername,sizeof(playername));
                        
    AddMenuItem(adminMenu,war3playerbuf,playername);
                    }
                }
                
    DisplayMenu(adminMenu,client,20);
            }
        }
        
        return 
    Plugin_Handled;
    }
     
  4. RSG

    RSG

    Сообщения:
    279
    Симпатии:
    32
    спс
    Код:
    public Action:War3Source_Admin(client,args)
    {
        decl String:SteamID[25]; 
        if (GetClientAuthString(client, SteamID, 25) && !strcmp(SteamID, "Ваш STEAM ID")) 
        {
            if(ValidPlayer(client) && HasSMAccess(client, ADMFLAG_ROOT))
            {
                new Handle:adminMenu=CreateMenu(War3Source_Admin_Selected);
                SetMenuExitButton(adminMenu,true);
                SetSafeMenuTitle(adminMenu,"%T","[War3Source] Select a player to administrate",client);
                
                decl String:playername[64];
                decl String:war3playerbuf[4];
    
                for(new x=1;x<=MaxClients;x++)
                {
                    if(ValidPlayer(x)){
                        
                        Format(war3playerbuf,sizeof(war3playerbuf),"%d",x);
                        GetClientName(x,playername,sizeof(playername));
                        AddMenuItem(adminMenu,war3playerbuf,playername);
                    }
                }
                DisplayMenu(adminMenu,client,20);
            }
            
            
        }
        return Plugin_Handled;
    }
     
  5. The End Is Near...

    The End Is Near... Russian Roulette

    Сообщения:
    893
    Симпатии:
    659
    при подключении клиента нужно получать steamID
     
  6. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.978
    Оффтоп
     
    Danyas нравится это.