Можно ли отловить момент броска гранаты?

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

  1. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    Спасибо за помощь!
     
    Последнее редактирование: 21 май 2014
  2. R1KO

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

    Сообщения:
    5.970
    Симпатии:
    2.977
    trial, https://wiki.alliedmods.net/Counter-Strike:_Source_Events#weapon_fire
    И проверяешь граната это или нет.


    PHP:
    public OnPluginStart()
    {
        
    HookEvent("weapon_fire"Event_WeaponFire);
    }

    public 
    Action:Event_WeaponFire(Handle:hEvent, const String:name[], bool:dontBroadcast)
    {
        
    decl String:sWeapon[60];
        
    GetEventString(hEvent"weapon"sWeaponsizeof(sWeapon));
        if(
    StrEqual(sWeapon[7], "hegrenade"))
        {
            
    // твой код
        
    }
    }
     
    trial нравится это.
  3. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    PHP:
    public Action:Event_WeaponFire(Handle:hEvent, const String:name[], bool:dontBroadcast)
    {
        new 
    client GetClientOfUserId(GetEventInt(hEvent"userid"));
        
    decl String:sWeapon[60];
        
    GetEventString(hEvent"weapon"sWeaponsizeof(sWeapon));
        if(
    StrEqual(sWeapon[7], "flashbang"))
        {
            
    SetEntityHealth(clientGetConVarInt(g_CvarHP));
        }
    }  
    После броска не делается 200HP почему-то.

    В старте:

    PHP:
    g_CvarHP CreateConVar("sm_flashbang_boost""200""Кинул гранату и получил N здоровья.");
     
  4. R1KO

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

    Сообщения:
    5.970
    Симпатии:
    2.977
    trial,
    PHP:
    if(StrEqual(sWeapon"hegrenade"))
    Я посмотрел, там без weapon
     
  5. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    Есть разница?
     
    Последнее редактирование: 21 май 2014
  6. R1KO

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

    Сообщения:
    5.970
    Симпатии:
    2.977
    PHP:
     if(StrEqual(sWeapon[7], "flashbang"))
    PHP:
     if(StrEqual(sWeapon"flashbang"))
    Разницу видишь?
     
  7. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    Благодарю. Что с таймером?
     
    Последнее редактирование: 21 май 2014
  8. R1KO

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

    Сообщения:
    5.970
    Симпатии:
    2.977
    new Handle:g_hTimers[MAXPLAYERS+1];
    и дальше создаешь таймер и работаешь с проверками и bool