Падение.

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
893
Реакции
149
Помог
25 раз(а)
Здравствуйте, пытаюсь отловить падение игрока. Делаю следующим образом:
C++:
RegisterHam(Ham_TakeDamage, "player", "@CBase_TakeDamage_Pre", .Post = false);

...
    
@CBase_TakeDamage_Pre(pVictim, iInflictor, pAttacker, Float:flDamage, iBits) {
    if(!is_user_alive(pAttacker))
        return HAM_IGNORED;

    if(iBits == DMG_FALL) {
        server_print("DMG_FALL");
    }

    return HAM_IGNORED;
}
По логике вещей должно выводить в консоль сообщение при падении, но не выводит. Вопрос, что я делаю не так?
 
Сообщения
1,560
Реакции
1,573
Помог
2 раз(а)
Конечно не будет выводить,ты же аттакера впихнул на проверку
А жертва - это ты
Вот так выводит при падении в консоле
Код:
#include <amxmodx>
#include <engine>
#include <hamsandwich>

public plugin_init()
{
    RegisterHam(Ham_TakeDamage, "player", "Fw_Damage");
}

public Fw_Damage(victim, inflictor, attacker, Float:damage, dmgbits)
{
    if(!is_user_alive(victim))
        return HAM_IGNORED;

    if(dmgbits == DMG_FALL)
    {
        server_print(" Я упал,но всё ещё живой ))) ");
    }

    return HAM_IGNORED;
}
cstrike 2022-07-07 01-18-28-36.jpg
 
Сообщения
893
Реакции
149
Помог
25 раз(а)
Javekson, уже понял ошибку, верно, не так сравнил, нужно было через &
 
Сообщения
3,593
Реакции
1,576
Помог
141 раз(а)
Benzogang_BabyTape, "падение" - с уроном? Если небольшое падение без урона, его так не поймать
 
Сообщения
893
Реакции
149
Помог
25 раз(а)
Nordic Warrior, уже разобрался, спасибо большое всем за помощь, можно закрывать.
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу