Блокировка стандартного HintText сообщения

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

  1. Danyas

    Danyas Спасибо, браток © yand3xmail Модератор

    Сообщения:
    1.725
    Симпатии:
    461
    Интересует способ блокировки стандартных сообщений
    [​IMG]
    Желательно который просто выключает их, а не перебивает пустым
     
  2. WINS

    WINS

    Сообщения:
    216
    Симпатии:
    52
    в плагине cleanchat есть такой код, мож это оно

    PHP:
    public Action:Hook_HintText(UserMsg:msg_idHandle:bf, const players[], playersNumbool:reliablebool:init)
    {
        
    decl String:message[256];
        
    BfReadString(bfmessagesizeof(message));
     
        if (
    StrContains(message"spotted_a_friend") != -1)
          return 
    Plugin_Handled;

        if (
    StrContains(message"careful_around_teammates") != -1)
          return 
    Plugin_Handled;
     
        if (
    StrContains(message"try_not_to_injure_teammates") != -1)
          return 
    Plugin_Handled;
      
        return 
    Plugin_Continue;
    }
    на просторах интернета нашел "события" или как их правильно назвать
    Код:
    win_round_by_killing_enemy
    press_buy_to_purchase
    spotted_an_enemy
    use_nightvision
    lost_money
    removed_for_next_hostage_killed
    careful_around_hostages
    careful_around_teammates
    reward_for_killing_vip
    win_round_by_killing_enemy
    try_not_to_injure_teammates
    you_are_in_targetzone
    hostage_rescue_zone
    terrorist_escape_zone
    ct_vip_zone
    terrorist_vip_zone
    cannot_play_because_tk
    use_hostage_to_stop_him
    lead_hostage_to_rescue_point
    you_have_the_bomb
    you_are_the_vip
    out_of_ammo
    spotted_a_friend
    spotted_an_enemy
    prevent_hostage_rescue
    rescue_the_hostages
    press_use_so_hostage_will_follow
     
    Danyas нравится это.
  3. Danyas

    Danyas Спасибо, браток © yand3xmail Модератор

    Сообщения:
    1.725
    Симпатии:
    461
    Понаписывал вот такое, но не работает
    PHP:
    #include <sourcemod>
    #include <sdktools>

    public Plugin:myinfo = {name "HintText blocker",author "Danyas"}

    new 
    UserMsg:umHintText INVALID_MESSAGE_ID;

    public 
    OnPluginStart()
    {
        
    umHintText GetUserMessageId("HintText");
        if (
    umHintText == INVALID_MESSAGE_ID)    SetFailState("This game doesn't support HintText");
        
    HookUserMessage(umHintTextMsgHook_HintText);
    }

    public 
    Action:MsgHook_HintText(UserMsg:msg_idHandle:bf, const players[], playersNumbool:reliablebool:init)
    {
        
    decl String:message[256];BfReadString(bfmessagesizeof(message));
        if (
    StrContains(message"spotted_a_friend") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"careful_around_teammates") != -1)            return Plugin_Handled;
        if (
    StrContains(message"try_not_to_injure_teammates") != -1)        return Plugin_Handled;
        if (
    StrContains(message"win_round_by_killing_enemy") != -1)        return Plugin_Handled;
        if (
    StrContains(message"press_buy_to_purchase") != -1)                return Plugin_Handled;
        if (
    StrContains(message"spotted_an_enemy") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"use_nightvision") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"lost_money") != -1)                        return Plugin_Handled;
        if (
    StrContains(message"removed_for_next_hostage_killed") != -1)    return Plugin_Handled;
        if (
    StrContains(message"careful_around_hostages") != -1)            return Plugin_Handled;
        if (
    StrContains(message"careful_around_teammates") != -1)            return Plugin_Handled;
        if (
    StrContains(message"reward_for_killing_vip") != -1)            return Plugin_Handled;
        if (
    StrContains(message"win_round_by_killing_enemy") != -1)        return Plugin_Handled;
        if (
    StrContains(message"you_are_in_targetzone") != -1)                return Plugin_Handled;
        if (
    StrContains(message"hostage_rescue_zone") != -1)                return Plugin_Handled;
        if (
    StrContains(message"terrorist_escape_zone") != -1)                return Plugin_Handled;
        if (
    StrContains(message"ct_vip_zone") != -1)                        return Plugin_Handled;
        if (
    StrContains(message"terrorist_vip_zone") != -1)                return Plugin_Handled;
        if (
    StrContains(message"cannot_play_because_tk") != -1)            return Plugin_Handled;
        if (
    StrContains(message"use_hostage_to_stop_him") != -1)            return Plugin_Handled;
        if (
    StrContains(message"lead_hostage_to_rescue_point") != -1)        return Plugin_Handled;
        if (
    StrContains(message"you_have_the_bomb") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"you_are_the_vip") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"out_of_ammo") != -1)                        return Plugin_Handled;
        if (
    StrContains(message"spotted_a_friend") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"spotted_an_enemy") != -1)                    return Plugin_Handled;
        if (
    StrContains(message"prevent_hostage_rescue") != -1)            return Plugin_Handled;
        if (
    StrContains(message"rescue_the_hostages") != -1)                return Plugin_Handled;
        if (
    StrContains(message"press_use_so_hostage_will_follow") != -1)    return Plugin_Handled;
        return 
    Plugin_Continue;
    }
     
  4. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    Danyas, я конечно не кодю на павне,но цикл то можно сделать:)Чем эти if использовать каждый раз.
     
  5. AlmazON

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

    Сообщения:
    4.583
    Симпатии:
    1.990
    Для теста так нагляднее, что всё безошибочно прописано.
     
    September и Danyas нравится это.