l4d PrintToChatAll нужна помощь

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

  1. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    Здравствуйте. Как правильно вставить это -

    PrintToChatAll("\x04[INFO]\x05 NEW %s TANK SPAWN HP: %d \x04", clName , maxHP);

    в код:
    PHP:
    ShowHealthGauge(clientmaxBARmaxHPnowHPString:clName[]){
        new 
    percent RoundToCeil((float(nowHP) / float(maxHP)) * float(maxBAR));
        new 
    ilength maxBAR nCharLength 2;

        
    decl String:showBAR[length];
        
    showBAR[0] = '\0';
        for(
    i=0i<percent&&i<maxBARi++){
            
    StrCat(showBARlengthsCharHealth);
        }
        for(; 
    i<maxBARi++){
            
    StrCat(showBARlengthsCharDamage);
        }

        if(
    nShowType){
            if(!
    nShowNum){
                
    PrintHintText(client"HP: |-%s-|  %s"showBARclName);
            }
            else{
                
    PrintHintText(client" %s HP: %d / %d "clName,nowHPmaxHP);
            }
        }
        else{
            if(!
    nShowNum){
                
    PrintCenterText(client"HP: |-%s-|  %s"showBARclName);
            }
            else{
                
    PrintHintText(client" %s HP: %d / %d "clName,nowHPmaxHP);
            }

        }
        
    PrintToChatAll("\x04[INFO]\x05 NEW %s TANK SPAWN HP: %d \x04"clName maxHP);
    }
    У МЕНЯ МНОГО СПАМА ПОЛУЧАЕТСЯ В ЧАТЕ:

    [INFO] NEW TANK SPAWN HP: 20000
    [INFO] NEW TANK SPAWN HP: 20000
    [INFO] NEW TANK SPAWN HP: 20000
    [INFO] NEW TANK SPAWN HP: 20000

    НУЖНО ЧТОБЫ ПИСАЛО 1 РАЗ.
     
  2. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.065
    Симпатии:
    345
    Данное сообщение вставь в событие появления танка tank_spawn.
     
  3. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    само сообщение работает когда танк появляется [INFO] NEW TANK SPAWN но у меня не работают значения clName , maxHP.
    то есть не показвает здоровье танка и его название.
    вот ссылка на плагин https://forums.alliedmods.net/showthread.php?t=125747
    кто поможет правильно поставить

    PrintToChatAll("\x04[INFO]\x05 NEW %s TANK SPAWN HP: %d \x04", clName , maxHP);
     
  4. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.065
    Симпатии:
    345
    Не компилировал (нету возможности)
     

    Вложения:

    Последнее редактирование: 9 ноя 2014
  5. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    это не работает. вообще нет сообщения о танке.
     
  6. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.065
    Симпатии:
    345
    Попробуй еще раз скачать (пост выше мой)
     
  7. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    не работает. мой первый пост там работает но вместо одной строки очень много.может там добавить что то нужно
     
  8. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.065
    Симпатии:
    345
    Попробуй так я уже не знаю даже, если не так ...
     
  9. AlmazON

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

    Сообщения:
    4.583
    Симпатии:
    1.990
    Оффтоп
     
  10. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    СРАБОТАЛ ЭТОТ КОД

    public Action:OnTankSpawn(Handle:event, const String:name[], bool:dontBroadcast)
    {
    new client = GetClientOfUserId(GetEventInt(event, "userid"));
    decl String:clName[MAX_NAME_LENGTH];
    GetClientName(client, clName, sizeof(clName));
    {
    PrintToChatAll("\x04[INFO]\x05 NEW \x04 %s \x05 TANK SPAWN \x04 HP: %i\x05", clName, GetConVarInt(FindConVar("z_tank_health")));
    }

    }

    КАК В НЕГО ДОБАВИТЬ maxHP чтобы показывало HP танка ?

    GetConVarInt(FindConVar("z_tank_health")) показвывает HP не правильно.

    у танка 20000 он показывает 10000
     
  11. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.065
    Симпатии:
    345
    Значит какой, то другой плагин или еще что-то меняет, потому что консольная переменная z_tank_spawn и так устанавливает максимальное значение здоровья танку.
     
  12. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    public Action:OnTankSpawn(Handle:event, const String:name[], bool:dontBroadcast)
    {
    new client = GetClientOfUserId(GetEventInt(event, "userid"));
    new maxHP = GetEntProp(client, Prop_Send, "m_iMaxHealth") & 0xffff;
    decl String:clName[MAX_NAME_LENGTH];
    GetClientName(client, clName, sizeof(clName));
    {
    PrintToChatAll("\x04[INFO]\x05 NEW \x04 %s \x05 TANK SPAWN \x04 HP: %i\x05", clName, maxHP);
    }

    }

    HP работает .зато не работает clName ((
     
  13. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.065
    Симпатии:
    345
    PHP:
    public OnSpawnTank(Handle:event, const String:name[], bool:dontBroadcast)
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
        
    decl String:s_name[MAX_NAME_LENGTH];
        
    PrintToChatAll("\x04[INFO]\x05 NEW \x04 %s \x05 TANK SPAWN \x04 HP: %i\x05"GetClientName(clients_namesizeof(s_name)), GetEntProp(clientProp_Send"m_iMaxHealth"));
    }
     
  14. bYKa

    bYKa

    Сообщения:
    0
    Симпатии:
    0
    к сожалению не работает
     
  15. The End Is Near...

    The End Is Near... Russian Roulette

    Сообщения:
    892
    Симпатии:
    659
    Vit_ amin
    PHP:
    // Функция GetClientName возвращает:
    // True on success, false otherwise. (https://sm.alliedmods.net/api/index.php?fastload=show&id=399&)
    // т.е. true/false; 1/0

    "%N"client // надо пробовать, по аналогии с css, может что и изменили, давно не проверял