Killer/Killed Fade

reapi Killer/Killed Fade 1.0

Нет прав для скачивания
Автор
maFFyoZZyk
Исходный код
Основной код:
#include <amxmodx>
#include <reapi>

#define PLUGIN    "KK Fade"
#define VERSION   "1.0"
#define AUTHOR    "maFFyoZZyk"

#define KILLER_FADE            // Закомментировать, если не нужна тонировка(зеленая) при убийстве игрока
#define KILLER_HS_FADE        // Закомментировать, если не нужна тонировка(синяя) при убийстве игрока в голову
#define KILLED_FADE            // Закомментировать, если не нужна тонировка(красная) при смерти игрока в голову

#if defined KILLED_FADE
    #define BLOOD            // Закомментировать, если не нужна кровь при смерти в голову
    //#define BLOOD_SOUND        // Закомментировать, если не нужен звук при смерти в голову
    #define BLOOD_MSG        // Закомментировать, если не нужно сообщение при смерти в голову
#endif  

static mScreenFade;
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR);
   
#if defined KILLER_FADE    || defined KILLER_HS_FADE || defined KILLED_FADE
    register_event("DeathMsg","ScreenFade","a", "1>0");
#endif
    if(!mScreenFade) mScreenFade = get_user_msgid("ScreenFade");
}

public ScreenFade()
{
#if defined KILLER_FADE    || defined KILLER_HS_FADE
    new killer = read_data(1);
    new bool:allowKiller = bool:(is_user_connected(killer) && !IsBlind(killer));
#endif  
#if defined KILLED_FADE
    new victim = read_data(2);
    new bool:allowVictim = bool:(is_user_connected(victim) && !IsBlind(victim));
#endif
#if (defined KILLER_FADE || defined KILLER_HS_FADE) && defined KILLED_FADE
    if(killer == victim) return;
#endif
#if defined KILLER_HS_FADE || defined KILLED_FADE
    new hs = read_data(3);
#endif

#if defined KILLER_FADE    || defined KILLER_HS_FADE
    if(allowKiller)
    {
    #if defined KILLER_HS_FADE
        if(hs)
        {
            message_begin(MSG_ONE, mScreenFade, .player = killer);
            write_short(1<<10)
            write_short(1<<10)
            write_short(0x0000)
            write_byte(0)
            write_byte(0)
            write_byte(200)
            write_byte(75)
            message_end()
        }
    #endif
    #if defined KILLER_FADE  
        if(!hs)
        {
            message_begin(MSG_ONE, mScreenFade, .player = killer);
            write_short(1<<10)
            write_short(1<<10)
            write_short(0x0000)
            write_byte(0)
            write_byte(200)
            write_byte(0)
            write_byte(75)
            message_end()
        }
    #endif
    }
#endif
#if defined KILLED_FADE
    if(allowVictim && hs)
    {
        message_begin(MSG_ONE, mScreenFade, .player = victim);
        write_short(10<<12)
        write_short(10<<16)
        write_short(1<<1)
        write_byte(255)
        write_byte(0)
        write_byte(0)
        write_byte(255)
        message_end()
    #if defined BLOOD_SOUND
        client_cmd(victim,"spk fvox/flatline.wav")
    #endif
    #if defined BLOOD_MSG
        client_print(victim, print_center, "=== ПОЛУЧИЛ ПО ЧАЙНИКУ ===")
    #endif
    #if defined BLOOD
        new blood[3];
        get_user_origin(victim, blood);
        headshot(blood);
    #endif
    }
#endif
}
#if defined BLOOD
public headshot(origin[3])
{
    message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
    write_byte(TE_BLOODSTREAM)
    write_coord(origin[0])
    write_coord(origin[1])
    write_coord(origin[2]+30)
    write_coord(random_num(-20,20))
    write_coord(random_num(-20,20))
    write_coord(random_num(50,300))
    write_byte(70)
    write_byte(random_num(100,200))
    message_end()
}
#endif

stock bool:IsBlind(const pPlayer) {
    return bool:(Float:get_member(pPlayer, m_blindUntilTime) > get_gametime())
}
Требование ReAPI
Да
Поддержка русского языка
Да
Совместимость
  1. REHLDS
Сверху Снизу