Shop show credits

Тема в разделе "Программирование / Скриптинг", создана пользователем B1g, 28 фев 2015.

  1. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Помогите пожалуйста , хочу сделать так чтобы когда игрок писал в чат !credits ему писало его кол-во кредитов , но что то не получается , помогите пожалуйста :(
    PHP:
    #pragma semicolon 1;
    #include <sourcemod>
    #include <shop>

    public Plugin:myinfo 
    {
        
    name "[Shop] Shop You Credits",
        
    author "Smoke",
        
    version "1.0",
        
    url ""
    }

    public 
    OnPluginStart()
    {
        
    RegConsoleCmd("sm_credits"Command_credits"Показывает кол-во кредитов в шопе");

    }

    public 
    Action:Command_credits(сlientargs)
    {
            
    decl String:Text[65];
            for (new 
    1<= MaxClientsi++)
            if (
    IsClientInGame(i) && Shop_IsAuthorized(i))
            {
                
    PrintToChat(Text65"У вас %s кредитов"clientiShop_GetClientCredits(i));
            }
    }
     
  2. artushonok

    artushonok

    Сообщения:
    964
    Симпатии:
    108
    B1g, такой плагин есть у R1KO, но он приватный
     
  3. Серый™

    Серый™ CS:S Server

    Сообщения:
    2.570
    Симпатии:
    1.153
    B1g, у тебя не верно, надо так

    PHP:
    if (IsClientInGame(client) && Shop_IsAuthorized(client))         
    {  
         
    PrintToChat(client"У вас %i кредитов"Shop_GetClientCredits(client));

     
    Последнее редактирование: 28 фев 2015
    B1g нравится это.
  4. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Подскажи как сделать , компилирую такой код , вылазиет куча ошибок :(
    PHP:
    #pragma semicolon 1;
    #include <sourcemod>
    #include <shop>

    public Plugin:myinfo 
    {
        
    name "[Shop] Shop You Credits",
        
    author "Smoke",
        
    version "1.0",
        
    url ""
    }

    public 
    OnPluginStart()
    {
        
    RegConsoleCmd("sm_credits"Command_credits"Показывает кол-во кредитов в шопе");

    }

    public 
    Action:Command_credits(сlientargs)
    {
            for (new 
    1<= MaxClientsi++)
            if (
    IsClientInGame(client) && Shop_IsAuthorized(client))         
            {  
               
    PrintToChat(client"У вас %i кредитов"Shop_GetClientCredits(client));
            }  
    }
     
  5. SenatoR

    SenatoR Модератор

    Сообщения:
    712
    Симпатии:
    270
    PHP:
    public Action:Command_credits(сlientargs)
    {
        if (
    IsClientInGame(client) && Shop_IsAuthorized(client))         
            {  
               
    PrintToChat(client"У вас %d кредитов"Shop_GetClientCredits(client));
            } 
            return 
    Plugin_Handled;
    }
     
    B1g и Серый™ нравится это.
  6. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Подскажите еще как сюда
    PHP:
    PrintToChatAll(client"\x04[Магазин] У вас \x03%d \x01кредитов !"Shop_GetClientCredits(client));
    Вставить ник игрока? И как добавить разные команды на вывод этого сообщения?
     
  7. The End Is Near...

    The End Is Near... Russian Roulette

    Сообщения:
    892
    Симпатии:
    659
    client > 0 вместо IsClientInGame
     
    B1g нравится это.
  8. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.579
    Симпатии:
    1.989
    На самом деле, так не совсем верно, а так:
    PHP:
    #include <shop> 

    public Plugin:myinfo =  

        
    name "[Shop] Shop You Credits"
        
    author "Smoke"
        
    version "1.0"
        
    url "" 


    public 
    OnPluginStart() RegConsoleCmd("sm_credits"Command_credits"Показывает кол-во кредитов в шопе");

    public 
    Action:Command_credits(сlientargs)
    {
        if (
    client && Shop_IsAuthorized(client)) PrintToChat(client"У вас %i кредитов."Shop_GetClientCredits(client));
        return 
    Plugin_Handled;
    }
    Для команды движка не надо проверять, в игре игрок или нет - сам же говорил) А вот консоли - всё же стоит, иначе в логе появится ошибка.
    Добавлять новые RegConsoleCmd("sm_credits", Command_credits, "Показывает кол-во кредитов в шопе"); рядом с предыдущим, с новой строчки. Где sm_credits - любая твоя новая команда, например, sm_dengi
    PrintToChat(client, "%N, у вас %i кредитов.", client, Shop_GetClientCredits(client));, где %N - это и будет ник игрока.
     
    B1g нравится это.
  9. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Помогите с эти ребят :( http://hlmod.ru/forum/showpost.php?p=178330&postcount=6

    Добавлено через 11 минут
    Вот с добавлением новой команды не очень понял и как русскую команду добавить? Можно пример?
     
    Последнее редактирование: 28 фев 2015
  10. R1KO

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

    Сообщения:
    6.001
    Симпатии:
    2.993
    Нет у меня такого.

    PHP:
    #include <shop> 


    public OnPluginStart()
    {
        
    RegConsoleCmd("sm_credits"Command_credits"Показывает кол-во кредитов в шопе");
        
    RegConsoleCmd("кредиты"Command_credits"Показывает кол-во кредитов в шопе");
    }

    public 
    Action:Command_credits(сlientargs)
    {
        if (
    client && Shop_IsAuthorized(client))
        {
            
    PrintToChat(client"\x04[Магазин] Привет %N, У вас \x03%i \x01кредитов !"сlientShop_GetClientCredits(client)); 
        }
        return 
    Plugin_Handled;
    }
     
    B1g нравится это.
  11. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Всем спасибо) Закройте тему)
     
  12. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Прошу помощи Shop Show Credits

    Привет помогите пожалуйста
    Компилирую этот код , мне пишет то что должно писать игрокам , а игрокам то что должно писать мне , и когда пишешь команду в чат то сообщение появляется не после ее написания а перед . Как исправить?

    PHP:
    #pragma semicolon 1;    
    #include <sourcemod>      
    #include <shop>      

    public Plugin:myinfo =       
    {      
        
    name "[Shop] Show You Credits",      
        
    author "Smoke",      
        
    version "1.0"    
    }      

    public 
    OnPluginStart()      
    {      
        
    AddCommandListener(Command_ShowYouCredits"say");     
        
    AddCommandListener(Command_ShowYouCredits"say_team");     
    }      

    public 
    Action:Command_ShowYouCredits(iClient, const String:sCommand[], args)       
    {       
        if(
    iClient && IsClientInGame(iClient))     
        {     
            
    decl String:Said128 ];      
            
    GetCmdArgStringSaidsizeofSaid ));      
            
    StripQuotesSaid );      
            
    TrimStringSaid );      
               
            if(
    StrEqualSaid"!credits" ) ||   
                    
    StrEqualSaid"!кредиты" ) ||   
                    
    StrEqualSaid"!cred" ) ||   
                    
    StrEqualSaid"!креды" ) ||   
                    
    StrEqualSaid"!cr" ) ||   
                    
    StrEqualSaid"!кр" ) ||   
                    
    StrEqualSaid"!credit" ) ||   
                    
    StrEqualSaid"!кред" ) ||   
                    
    StrEqualSaid"!mycredits" ) ||   
                    
    StrEqualSaid"!кредит" ) ||   
                    
    StrEqualSaid"!крд" ) ||   
                    
    StrEqualSaid"/credits" ) ||   
                    
    StrEqualSaid"/кредиты" ) ||   
                    
    StrEqualSaid"/cred" ) ||   
                    
    StrEqualSaid"/креды" ) ||   
                    
    StrEqualSaid"/cr" ) ||   
                    
    StrEqualSaid"/кр" ) ||   
                    
    StrEqualSaid"/credit" ) ||   
                    
    StrEqualSaid"/кред" ) ||   
                    
    StrEqualSaid"/mycredits" ) ||   
                    
    StrEqualSaid"/кредит" ) ||   
                    
    StrEqualSaid"/крд" ) ||   
                    
    StrEqualSaid"credits" ) ||   
                    
    StrEqualSaid"кредиты" ) ||   
                    
    StrEqualSaid"cred" ) ||   
                    
    StrEqualSaid"креды" ) ||   
                    
    StrEqualSaid"cr" ) ||   
                    
    StrEqualSaid"кр" ) ||   
                    
    StrEqualSaid"credit" ) ||   
                    
    StrEqualSaid"кред" ) ||   
                    
    StrEqualSaid"mycredits" ) ||   
                    
    StrEqualSaid"кредит" ) ||   
                    
    StrEqualSaid"крд" ))    
            {      
                if (
    Shop_IsAuthorized(iClient))                
                {   
                    new 
    iCredits Shop_GetClientCredits(iClient);   
                    for (new 
    1<= MaxClientsi++)    
                    {    
                        if (
    IsClientInGame(i) && !IsFakeClient(i))   
                        {   
                            if(
    != iClientPrintToChat(i"\x04[Магазин] \x01У вас \x03%i \x01кредитов !"iCredits);   
                            else 
    PrintToChat(i"\x04[Магазин] \x01У \x03%N \x04%i \x01кредитов !"iClientiCredits);   
                        }   
                    }   
                }   
                else    
                
    PrintToChat(iClient"\x04[Магазин] \x01Произошла ошибка!");      
                return 
    Plugin_Handled;     
            }     
        }     
        return 
    Plugin_Continue;     
     
  13. diller110

    diller110

    Сообщения:
    138
    Симпатии:
    48
    Re: Прошу помощи Shop Show Credits

    if(i != iClient) условие: если это не тот человек который ввел комманду.
    Значит так: if(i = iClient)
     
  14. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Re: Прошу помощи Shop Show Credits

    Можешь сделать готовый код чтобы исправились мои проблемы описанные выше? Я просто мало шарю в скриптинге :(
     
  15. diller110

    diller110

    Сообщения:
    138
    Симпатии:
    48
    Re: Прошу помощи Shop Show Credits

    Оффтоп

    Проверить нечем. Вывод перед командой решил таймером на 0.1 сек, не знаю будет ли работать, и правильное ли это решение.
     
  16. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Re: Прошу помощи Shop Show Credits

    Вообще не работает.
     
  17. diller110

    diller110

    Сообщения:
    138
    Симпатии:
    48
    Re: Прошу помощи Shop Show Credits

    Напиши хоть что именно. При компиляции ошибки, или ошибки в логах?
     
  18. R1KO

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

    Сообщения:
    6.001
    Симпатии:
    2.993
    PHP:
    #pragma semicolon 1
    #include <sourcemod>
    #include <shop>

    public Plugin:myinfo 
    {
        
    name "[Shop] Show You Credits",
        
    author "Smoke",
        
    version "1.0" 
    }

    public 
    OnPluginStart()
    {
        
    AddCommandListener(Command_ShowYouCredits"say");  
        
    AddCommandListener(Command_ShowYouCredits"say_team");  
    }

    public 
    Action:Command_ShowYouCredits(iClient, const String:sCommand[], args

        if(
    iClient && IsClientInGame(iClient))  
        {
            
    decl String:Said128 ];
            
    GetCmdArgStringSaidsizeofSaid ));
            
    StripQuotesSaid );
            
    TrimStringSaid );
            
            if(
    StrEqualSaid"!credits" ) ||
                    
    StrEqualSaid"!кредиты" ) ||
                    
    StrEqualSaid"!cred" ) ||
                    
    StrEqualSaid"!креды" ) ||
                    
    StrEqualSaid"!cr" ) ||
                    
    StrEqualSaid"!кр" ) ||
                    
    StrEqualSaid"!credit" ) ||
                    
    StrEqualSaid"!кред" ) ||
                    
    StrEqualSaid"!mycredits" ) ||
                    
    StrEqualSaid"!кредит" ) ||
                    
    StrEqualSaid"!крд" ) ||
                    
    StrEqualSaid"/credits" ) ||
                    
    StrEqualSaid"/кредиты" ) ||
                    
    StrEqualSaid"/cred" ) ||
                    
    StrEqualSaid"/креды" ) ||
                    
    StrEqualSaid"/cr" ) ||
                    
    StrEqualSaid"/кр" ) ||
                    
    StrEqualSaid"/credit" ) ||
                    
    StrEqualSaid"/кред" ) ||
                    
    StrEqualSaid"/mycredits" ) ||
                    
    StrEqualSaid"/кредит" ) ||
                    
    StrEqualSaid"/крд" ) ||
                    
    StrEqualSaid"credits" ) ||
                    
    StrEqualSaid"кредиты" ) ||
                    
    StrEqualSaid"cred" ) ||
                    
    StrEqualSaid"креды" ) ||
                    
    StrEqualSaid"cr" ) ||
                    
    StrEqualSaid"кр" ) ||
                    
    StrEqualSaid"credit" ) ||
                    
    StrEqualSaid"кред" ) ||
                    
    StrEqualSaid"mycredits" ) ||
                    
    StrEqualSaid"кредит" ) ||
                    
    StrEqualSaid"крд" )) 
            {
                if (
    Shop_IsAuthorized(iClient))
                {
                    
    CreateTimer(0.1TimeriClient);
                }
                else 
    PrintToChat(iClient"\x04[Магазин] \x01Произошла ошибка!");
                return 
    Plugin_Handled;  
            }  
            
        }  
        return 
    Plugin_Continue;  
    }

    public 
    Action:Timer(Handle:timerany:iClient
    {
        new 
    iCredits Shop_GetClientCredits(iClient);
        
    PrintToChat(iClient"\x04[Магазин] \x01У вас \x03%i \x01кредитов !"iCredits);
        for (new 
    1<= MaxClientsi++) 
        {
            if (
    != iClient && IsClientInGame(i) && !IsFakeClient(i))
            {
                
    PrintToChat(i"\x04[Магазин] \x01У \x03%N \x04%i \x01кредитов !"iClientiCredits);
            }
        }
     
    FrozDark и B1g нравится это.
  19. B1g

    B1g

    Сообщения:
    732
    Симпатии:
    27
    Всем спасибо ! РИКО помог в очередной раз! Закрывайте тему :)