Вешать эффект горения

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
336
Реакции
42
Помог
6 раз(а)
Всем привет. есть такой код
C:
#include <amxmodx>
#include <reapi>

#define NEW_HE_RADIUS 500.0

new gSpriteCircle;
new Float:fOrigin[ 3 ];
new iOrigin[ 3 ];

public plugin_init() {
    RegisterHookChain(RG_CGrenade_ExplodeHeGrenade, "CGrenade_ExplodeHeGrenade_Pre", .post = true);
}

public plugin_precache()
    gSpriteCircle = precache_model( "sprites/shockwave.spr" );

public CGrenade_ExplodeHeGrenade_Pre(iGrenade) {
    new Float:vecOrigin[3];
    get_entvar(iGrenade, var_origin, vecOrigin);

    rg_dmg_radius(vecOrigin, iGrenade, iGrenade, 0.0, NEW_HE_RADIUS, -1, DMG_BLAST);
    create_blast_circle(iGrenade);

    return HC_CONTINUE;
}

stock create_blast_circle(ent)
{
    for(new id = 1; id < MaxClients; id++)
    {
        get_entvar( ent, var_origin, fOrigin );
        FVecIVec( fOrigin, iOrigin );

        static r, g, b;
        r = 250;
        g = 10;
        b = 0;

        message_begin( MSG_ONE, SVC_TEMPENTITY, iOrigin, id );
        write_byte( TE_BEAMCYLINDER );
        write_coord( iOrigin[ 0 ] );
        write_coord( iOrigin[ 1 ] );
        write_coord( iOrigin[ 2 ] - 35);
        write_coord( iOrigin[ 0 ] );
        write_coord( iOrigin[ 1 ] );
        write_coord( iOrigin[ 2 ] + floatround(NEW_HE_RADIUS)) ;
        write_short( gSpriteCircle );
        write_byte( 0 );
        write_byte( 1 );
        write_byte( 6 );
        write_byte( 8 );
        write_byte( 1 );
        write_byte( r );
        write_byte( g );
        write_byte( b );
        write_byte( 128 );
        write_byte( 5 );
        message_end();
    }
}
как можно вешать эффект горения тем кто оказался в радиусе взрыва гранаты? (есть спрайт flame.spr)
 
Статус
В этой теме нельзя размещать новые ответы.

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

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