Не получает индекс игрока бросившего гранату в CGrenade_ExplodeHeGrenade

Сообщения
459
Реакции
272
Помог
9 раз(а)
Ошибка
Player out of range -1
ОС
Linux
Amx Mod X
AMX Mod X 1.9.0.5241 (http://www.amxmodx.org)
Authors:
David "BAILOPAN" Anderson, Pavol "PM OnoTo" Marko
Felix "SniperBeamer" Geyer, Jonny "Got His Gun" Bergstrom
Lukasz "SidLuke" Wlasinski, Christian "Basic-Master" Hammacher
Borja "faluco" Ferrer, Scott "DS" Ehlert
Compiled: Jan 30 2019 07:09:07
Built from: https://github.com/alliedmodders/amxmodx/commit/2110037
Build ID: 5241:2110037
Core mode: JIT+ASM32
Билд
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.6.0.672-dev
Build date: 17:31:06 Jun 5 2019 (1880)
Build from: https://github.com/dreamstalker/rehlds/commit/0c8d3d7
ReGamedll
ReGameDLL version: 5.9.0.356-dev
Build date: 19:37:44 Jun 20 2019
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/9ed1945
Версия Metamod
Metamod-r v1.3.0.128, API (5:13)
Metamod-r build: 17:47:54 Aug 24 2018
Metamod-r from: https://github.com/theAsmodai/metamod-r/commit/0cf2f70
Список метамодулей
Currently loaded plugins:
description stat pend file vers src load unload
[ 1] AMX Mod X RUN - amxmodx.so v1.9.0.5241 ini ANY
[ 2] VoiceTranscoder RUN - vtc.so v2017RC3 ini ANY
[ 3] WHBlocker RUN - whblocker.so v1.5.696 ini ANY
[ 4] Reunion RUN - reunion.so v0.1.0.133 ini Start Never
[ 5] Rechecker RUN - rechecker.so v2.5 ini ANY
[ 6] ReAuthCheck RUN - reauthcheck.so v0.1.6 ini Start Never
[ 7] CStrike RUN - cstrike_amxx_i386.so v1.9.0.5241 pl1 ANY
[ 8] CSX RUN - csx_amxx_i386.so v1.9.0.5241 pl1 ANY
[ 9] GeoIP RUN - geoip_amxx_i386.so v1.9.0.5241 pl1 ANY
[10] FakeMeta RUN - fakemeta_amxx_i386.so v1.9.0.5241 pl1 ANY
[11] MySQL RUN - mysql_amxx_i386.so v1.9.0.5241 pl1 ANY
[12] ReAPI RUN - reapi_amxx_i386.so v5.9.0.167-dev pl1 ANY Never
[13] Engine RUN - engine_amxx_i386.so v1.9.0.5241 pl1 ANY
[14] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.9.0.5241 pl1 ANY
14 plugins, 14 running
Список плагинов
[  1] FreshBans               1.4.0b      kanagava          fresh_bans.amxx  running
[ 2] Admin Load 3.9.3 Dev F@nt0M admin_load.amxx running
[ 3] Slots Reservation @1 Pirates! admin_slots.amx running
[ 4] SQL MAIN INITS @1 Pirates! main_sql_inits. running
[ 5] Chat Manager 1.1.1-11 Mistrick chatmanager.amx running
[ 6] Chat Manager: Addon 0.0.4-70 Mistrick chatmanager_add running
[ 7] Bonuses @1 Pirates! player_bonuses. running
[ 8] Level system @1 Pirates! level_system.am debug
[ 9] Best round and map pla @1 Pirates! best_roundnmap. running
[ 10] nightvision @1 Pirates! nightvision.amx running
[ 11] Unstick Player 1.0.2 Arkshine unstuck.amxx running
[ 12] asp @1 Pirates! autoshoot_pisto running
[ 13] Music manager 1.0.1 .cpCTRL music.amxx running
[ 14] Demorecorder @1 Pirates! demorecorder.am running
[ 15] Napalm Nade @1 MeRcyLeZZ, Pirat napalm_nades.am debug
[ 16] Menu main @1 Pirates! menu_main.amxx running
[ 17] Menu settings @1 Pirates! menu_settings.a running
[ 18] Lang manage @1 Pirates! lang_manage.amx running
[ 19] Menu vip @1 Pirates! menu_vip.amxx running
[ 20] Players Menu @1 Pirates! players_menu.am running
[ 21] Pushable push @1 Pirates! pushable_push.a running
[ 22] Block fast infect @1 Pirates! block_fast_infe running
[ 23] Remove droped weapons @1 Pirates! remove_weaponsn running
[ 24] Damager[b] @1 @Pirates! damager.amxx running
[ 25] Block & Hide money @1 Pirates! block_money.amx running
[ 26] Map Manager: Core 3.0.0 Mistrick map_manager_cor running
[ 27] Map Manager: Scheduler 0.1.0 Mistrick map_manager_sch running
[ 28] Map Manager: Rtv 0.0.4 Mistrick map_manager_rtv running
[ 29] Map Manager: Nominatio 0.0.8 Mistrick map_manager_nom running
[ 30] Map Manager: BlockList 0.0.3 Mistrick map_manager_blo running
[ 31] Map Manager: Online so 0.0.2 Mistrick map_manager_onl running
[ 32] Map Manager: Effects 0.0.8 Mistrick map_manager_eff running
[ 33] Map Manager: Informer 0.0.5 Mistrick map_manager_inf running
[ 34] [b] Core 0.1.2 81x08 biohazard.amxx debug
[ 35] Weapons MaxClip 0.3.0 ConnorMcLeod weapons_maxclip running
[ 36] Bio Stats @1 Pirates! bio_stats.amxx running
[ 37] Real velocity @1 Pirates! bio_real_veloci running
[ 38] Remove Objectives @1 Pirates! bio_remove_obje running
[ 39] Block touch & Use @1 Pirates! bio_block_touch running
[ 40] Informer hud @1 Pirates! bio_informer.am running
40 plugins, 40 running
Автор плагина
MeRcyLeZZ, Pirates!
Версия плагина
@1
Исходный код
#include <amxmodx>
#include <reapi>
#include <engine>
#include <zmb>

#define MsgId_Damage 71

#define NapalmRadius 300
#define NapalmDuration 10
#define NapalmDamage 5.0
#define NapalmSlowDown 0.55

#define TASK_ID_BURN 2102

#define NapalmSound "weapons/hegrenade-1.wav"

enum _: spritesNum {
SpriteFlame,
SpriteSmoke,
SpriteTrail,
SpriteShockwave
};

new const napalmSprites[spritesNum][] = {
"sprites/flame.spr",
"sprites/black_smoke3.spr",
"sprites/laserbeam.spr",
"sprites/shockwave.spr"
};

new g_indexSprite[spritesNum];

public plugin_precache()
{
precache_sound(NapalmSound);

for (new i; i < sizeof napalmSprites; i++)
g_indexSprite[i] = precache_sound(napalmSprites[i]);
}

public plugin_init() {
register_plugin("Napalm Nade", "@1", "MeRcyLeZZ, Pirates!");

register_event("HLTV", "Event_Hltv", "a", "1=0", "2=0");

RegisterHookChain(RG_ThrowHeGrenade, "@CGrenade_ThrowHeGrenade_Post", true);
RegisterHookChain(RG_CGrenade_ExplodeHeGrenade, "@CGrenade_ExplodeHeGrenade_Pre", false);
}

public Event_Hltv() {
static iIndex;
for (iIndex = 1; iIndex <= MaxClients; iIndex++)
remove_task(iIndex + TASK_ID_BURN);
}

@CGrenade_ThrowHeGrenade_Post(const index, Float:vecStart[3], Float:vecVelocity[3], Float:time, const team, const usEvent) {
new entityIndex = GetHookChainReturn(ATYPE_INTEGER);

if (is_nullent(entityIndex))
return HC_CONTINUE;

rg_set_rendering(entityIndex, kRenderFxGlowShell, 155, 0, 0, kRenderNormal, 16);

message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_BEAMFOLLOW); // TE id
write_short(entityIndex) // entity
write_short(g_indexSprite[SpriteTrail]) // sprite
write_byte(10); // life
write_byte(10); // width
write_byte(155); // r
write_byte(0); // g
write_byte(0); // b
write_byte(200); // brightness
message_end();

return HC_CONTINUE;
}

@CGrenade_ExplodeHeGrenade_Pre(const this, tracehandle, const bitsDamageType) {
new iAttacker = get_entvar(this, var_owner);

if (!IsPlayer(iAttacker))
{
server_print("Player out of range %d", iAttacker);
return HC_CONTINUE;
}

new Float: grenadeOrigin[3];
get_entvar(this, var_origin, grenadeOrigin);

message_begin_f(MSG_PVS, SVC_TEMPENTITY, grenadeOrigin, 0);
write_byte(TE_BEAMCYLINDER); // TE id
write_coord_f(grenadeOrigin[0]); // x
write_coord_f(grenadeOrigin[1]); // y
write_coord_f(grenadeOrigin[2]); // z
write_coord_f(grenadeOrigin[0]); // x axis
write_coord_f(grenadeOrigin[1]); // y axis
write_coord_f(grenadeOrigin[2]+385.0); // z axis
write_short(g_indexSprite[SpriteShockwave]); // sprite
write_byte(0); // startframe
write_byte(0); // framerate
write_byte(4); // life
write_byte(60); // width
write_byte(0); // noise
write_byte(155); // red
write_byte(0); // green
write_byte(0); // blue
write_byte(200); // brightness
write_byte(0); // speed
message_end();

rh_emit_sound2(0, this, CHAN_WEAPON, NapalmSound, 1.0, ATTN_NORM, 0, PITCH_NORM);

for (new iIndex = 1; iIndex <= MaxClients; iIndex++)
{
if (entity_range(this, iIndex) > NapalmRadius)
continue;

if (!is_user_alive(iIndex))
continue;

if (!is_user_zombie(iIndex))
continue;

if (iAttacker == iIndex)
continue;

if (get_member(iAttacker, m_iTeam) == get_member(iIndex, m_iTeam))
continue;

message_begin(MSG_ONE_UNRELIABLE, MsgId_Damage, _, iIndex);
write_byte(0); // damage save
write_byte(0); // damage take
write_long(DMG_BURN); // damage type
write_coord(0); // x
write_coord(0); // y
write_coord(0); // z
message_end();

static burnParams[1];

burnParams[0] = NapalmDuration;

set_task(0.1, "burnPlayer", iIndex + TASK_ID_BURN, burnParams, sizeof burnParams);
}

return HC_CONTINUE;
}

public burnPlayer(burnParams[2], iIndex) {
iIndex -= TASK_ID_BURN;

if (!is_user_alive(iIndex))
return;

static Float: playerOrigin[3], playerFlags;

get_entvar(iIndex, var_origin, playerOrigin);
playerFlags = get_entvar(iIndex, var_flags);

if ((playerFlags & FL_INWATER) || burnParams[0] < 1)
{
// Smoke sprite
message_begin_f(MSG_PVS, SVC_TEMPENTITY, playerOrigin, 0);
write_byte(TE_SMOKE); // TE id
write_coord_f(playerOrigin[0]); // x
write_coord_f(playerOrigin[1]); // y
write_coord_f(playerOrigin[2]-50.0); // z
write_short(g_indexSprite[SpriteSmoke]); // sprite
write_byte(random_num(15, 20)); // scale
write_byte(random_num(10, 20)); // framerate
message_end();

return;
}

if (NapalmSlowDown > 0.0 && (playerFlags & FL_ONGROUND))
{
static Float: playerVelocity[3];
get_entvar(iIndex, var_velocity, playerVelocity);

UTIL_VecMulScalar(playerVelocity, NapalmSlowDown, playerVelocity);

set_entvar(iIndex, var_velocity, playerVelocity);
}

static Float: playerHealth;
playerHealth = get_entvar(iIndex, var_health);

if (playerHealth - NapalmDamage > 0.0)
set_entvar(iIndex, var_health, playerHealth - NapalmDamage);

message_begin_f(MSG_PVS, SVC_TEMPENTITY, playerOrigin, 0);
write_byte(TE_SPRITE); // TE id
write_coord_f(playerOrigin[0]+random_float(-5.0, 5.0)); // x
write_coord_f(playerOrigin[1]+random_float(-5.0, 5.0)); // y
write_coord_f(playerOrigin[2]+random_float(-10.0, 10.0)); // z
write_short(g_indexSprite[SpriteFlame]); // sprite
write_byte(random_num(5, 10)); // scale
write_byte(200); // brightness
message_end();

burnParams[0]--;

set_task(0.4, "burnPlayer", iIndex + TASK_ID_BURN, burnParams, sizeof burnParams);
}

stock rg_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16)
{
static Float:color[3]
color[0] = float(r)
color[1] = float(g)
color[2] = float(b)

set_entvar(entity, var_renderfx, fx)
set_entvar(entity, var_rendercolor, color)
set_entvar(entity, var_rendermode, render)
set_entvar(entity, var_renderamt, float(amount))
}
Не получает индекс игрока бросившего гранату в функции RG_CGrenade_ExplodeHeGrenade. m_pPlayer и var_owner выдают одинаково -1.
 
В этой теме было размещено решение! Перейти к решению.
Сообщения
584
Реакции
1,006
Помог
18 раз(а)
Ayk, пре хук, еще ничего не сбросилось.
 

Ayk

Сообщения
763
Реакции
478
Помог
19 раз(а)
Mistrick, да, я вижу. Почему же не работает?

Как вариант, в CGrenade_ThrowHeGrenade_Post сохрани index в pev_iuser* гранаты, и в CGrenade_ExplodeHeGrenade_Pre получай index игрока из pev_iuser* гранаты.
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
Чекнул в fakemeta хуке FM_SetModel, та же история. Дело не может быть в офсетах реапи? В оригинале плагина все работает.
 
Сообщения
145
Реакции
276
Помог
1 раз(а)
У объекта this какой класснейм ? Овнер должен быть привязан к объекту гранаты ещё на стадии SetModel Pre, иначе дамаг не будет нормально работать. Внимательно код проверяйте, а m_pPlayer ничего и не должен выдавать, ибо это оффсет оружия, а не летящей гранаты.
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
У объекта this какой класснейм ? Овнер должен быть привязан к объекту гранаты ещё на стадии SetModel Pre, иначе дамаг не будет нормально работать. Внимательно код проверяйте, а m_pPlayer ничего и не должен выдавать, ибо это оффсет оружия, а не летящей гранаты.
Код:
    new classname[32];
    get_entvar(this, var_classname, classname, charsmax(classname));
    server_print("Class: [ %s ]", classname);
Результат: Class: [ grenade ]
24 Июн 2019
Mistrick, да, я вижу. Почему же не работает?

Как вариант, в CGrenade_ThrowHeGrenade_Post сохрани index в pev_iuser* гранаты, и в CGrenade_ExplodeHeGrenade_Pre получай index игрока из pev_iuser* гранаты.
Благодарю, вариант рабочий, но все же хотелось бы без костылей ведь вроде как все есть. Как говорит Mistrick данные гранаты езе не сброшены, а по словам SISA проблемы в коде. Хотелось бы еще подсказок
 
Сообщения
145
Реакции
276
Помог
1 раз(а)
В set-Model под покажите, которым вы овнера искали, ибо там он точно должен быть.
24 Июн 2019
Если вы хотите проследить работу кода "без помощи зала", тогда всё делается намного проще.

1. Включаете FM_StartFrame
2. Внутри делаете цикл по объекта с класснеймом "grenade" и выводите принт, чтобы проверить овнера

Код:
    new ent = 1;
    while ((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", "grenade")))
    {
        pev(ent, pev_owner)
    }
3. На сервере ставите sys_ticrate 3 и покадрово смотрите, в каком серверном фрейме и что происходит с объектом..
 
Сообщения
145
Реакции
276
Помог
1 раз(а)
Судя по коду (вроде как он), овнер там действительно сбрасывается и по идее в Pre он ещё должен быть. Почему он в реапи оказывается сброшенным, это вопрос к разработчикам:

Код:
void CGrenade::Explode3(TraceResult *pTrace, int bitsDamageType)
{

    pev->model = 0;

    pev->solid = SOLID_NOT;

    pev->takedamage = DAMAGE_NO;


    if (pTrace->flFraction != 1)

        pev->origin = pTrace->vecEndPos + (pTrace->vecPlaneNormal * (pev->dmg - 24) * 0.6);


    MESSAGE_BEGIN(MSG_PAS, SVC_TEMPENTITY, pev->origin);

    WRITE_BYTE(TE_EXPLOSION);

    WRITE_COORD(pev->origin.x);

    WRITE_COORD(pev->origin.y);

    WRITE_COORD(pev->origin.z + 20);

    WRITE_SHORT(g_sModelIndexFireball3);

    WRITE_BYTE(25);

    WRITE_BYTE(30);

    WRITE_BYTE(0);

    MESSAGE_END();


    MESSAGE_BEGIN(MSG_PAS, SVC_TEMPENTITY, pev->origin);

    WRITE_BYTE(TE_EXPLOSION);

    WRITE_COORD(pev->origin.x + RANDOM_FLOAT(-64, 64));

    WRITE_COORD(pev->origin.y + RANDOM_FLOAT(-64, 64));

    WRITE_COORD(pev->origin.z + RANDOM_FLOAT(30, 35));

    WRITE_SHORT(g_sModelIndexFireball2);

    WRITE_BYTE(30);

    WRITE_BYTE(30);

    WRITE_BYTE(0);

    MESSAGE_END();


    CSoundEnt::InsertSound(bits_SOUND_COMBAT, pev->origin, NORMAL_EXPLOSION_VOLUME, 3);

    entvars_t *pevOwner;


    if (pev->owner)

        pevOwner = VARS(pev->owner);

    else

        pevOwner = NULL;


    pev->owner = NULL;

    RadiusDamage(pev, pevOwner, pev->dmg, CLASS_NONE, bitsDamageType);


    if (RANDOM_FLOAT(0, 1) < 0.5)

        UTIL_DecalTrace(pTrace, DECAL_SCORCH1);

    else

        UTIL_DecalTrace(pTrace, DECAL_SCORCH2);


    float flRndSound = RANDOM_FLOAT(0, 1);


    switch (RANDOM_LONG(0, 2))

    {

        case 0: EMIT_SOUND(ENT(pev), CHAN_VOICE, "weapons/debris1.wav", 0.55, ATTN_NORM); break;

        case 1: EMIT_SOUND(ENT(pev), CHAN_VOICE, "weapons/debris2.wav", 0.55, ATTN_NORM); break;

        case 2: EMIT_SOUND(ENT(pev), CHAN_VOICE, "weapons/debris3.wav", 0.55, ATTN_NORM); break;

    }


    pev->effects |= EF_NODRAW;

    SetThink(&CGrenade::Smoke3_C);

    pev->velocity = g_vecZero;

    pev->nextthink = gpGlobals->time + 0.55;

    int sparkCount = RANDOM_LONG(0, 3);


    for (int i = 0; i < sparkCount; i++)

        Create("spark_shower", pev->origin, pTrace->vecPlaneNormal, NULL);

}
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
SISA,
Код:
public Fakemeta_SetModel_pre(model[], ent)    {
    static Float: dmgtime;
    get_entvar(ent, var_dmgtime, dmgtime);

    if (dmgtime == 0.0)
        return FMRES_IGNORED;

    if (!equal(model[7], "w_he", 4))
        return FMRES_IGNORED;

    new classname[32];
    get_entvar(ent, var_classname, classname, charsmax(classname));
    server_print("SET MODEL PRE: Class: [ %s ] Owner [ %d ]", classname, get_entvar(ent, var_owner));

    return FMRES_IGNORED;
}

public Fakemeta_SetModel_post(model[], ent)    {
    static Float: dmgtime;
    get_entvar(ent, var_dmgtime, dmgtime);

    if (dmgtime == 0.0)
        return FMRES_IGNORED;

    if (!equal(model[7], "w_he", 4))
        return FMRES_IGNORED;

    new classname[32];
    get_entvar(ent, var_classname, classname, charsmax(classname));
    server_print("SET MODEL POST: Class: [ %s ] Owner [ %d ]", classname, get_entvar(ent, var_owner));

    return FMRES_IGNORED;
}
Результат:
Код:
L 06/24/2019 - 10:19:30: [AMXX] Displaying debug trace (plugin "napalm_nades.amxx", version "@1")
L 06/24/2019 - 10:19:30: [AMXX] Run time error 10: native error (native "get_entvar")
L 06/24/2019 - 10:19:30: [AMXX]    [0] napalm_nades.sma::Fakemeta_SetModel_pre (line 64)
L 06/24/2019 - 10:19:30: [ReAPI] get_entvar: invalid entity index 2624 [arg_index]
L 06/24/2019 - 10:19:30: [AMXX] Displaying debug trace (plugin "napalm_nades.amxx", version "@1")
L 06/24/2019 - 10:19:30: [AMXX] Run time error 10: native error (native "get_entvar")
L 06/24/2019 - 10:19:30: [AMXX]    [0] napalm_nades.sma::Fakemeta_SetModel_post (line 81)
 
Сообщения
145
Реакции
276
Помог
1 раз(а)
Энтити должна быть валидной при получении данных, как минимум. Post хукать не надо.
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
SISA, я так понимаю вариант остается предложенный Ayk
Как вариант, в CGrenade_ThrowHeGrenade_Post сохрани index в pev_iuser* гранаты, и в CGrenade_ExplodeHeGrenade_Pre получай index игрока из pev_iuser* гранаты.
 
Сообщения
145
Реакции
276
Помог
1 раз(а)
Ну очевидно что в RG_CGrenade_ExplodeHeGrenade Pre овнера уже нет (хотя должен быть судя по логике), так что да, только костылить.
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
Энтити должна быть валидной при получении данных, как минимум. Post хукать не надо.
С проверкой на валидность результата нет вовсе
24 Июн 2019
Ну очевидно что в RG_CGrenade_ExplodeHeGrenade Pre овнера уже нет (хотя должен быть судя по логике), так что да, только костылить.
Благодарю за помощь, буду довольствоваться тем что есть
 
Сообщения
333
Реакции
290
Помог
9 раз(а)
Не наблюдаю никаких проблем
Код:
L 06/24/2019 - 17:30:56: [new20.amxx] ThrowHeGrenade ent 287, player 4
L 06/24/2019 - 17:30:58: [new20.amxx] ExplodeHeGrenade ent 287, player 4
L 06/24/2019 - 17:31:06: [new20.amxx] ThrowHeGrenade ent 287, player 5
L 06/24/2019 - 17:31:08: [new20.amxx] ExplodeHeGrenade ent 287, player 5
L 06/24/2019 - 17:31:12: [new20.amxx] ThrowHeGrenade ent 287, player 7
L 06/24/2019 - 17:31:13: [new20.amxx] ExplodeHeGrenade ent 287, player 7
L 06/24/2019 - 17:31:19: [new20.amxx] ThrowHeGrenade ent 295, player 3
L 06/24/2019 - 17:31:20: [new20.amxx] ExplodeHeGrenade ent 295, player 3

] version
Protocol version 48
Exe version 1.1.2.7 (cstrike)
ReHLDS version: 3.6.0.675-dev
Build date: 19:34:19 Jun 21 2019 (1896)
Build from: https://github.com/dreamstalker/rehlds/commit/b9b03e7
] amxx modules
Currently loaded modules:
      name                    version     author               status     
 [ 1] MySQL                   1.8.3-dev+  AMX Mod X Dev Team   running   
 [ 2] Engine                  1.8.3-dev+  AMX Mod X Dev Team   running   
 [ 3] FakeMeta                1.8.3-dev+  AMX Mod X Dev Team   running   
 [ 4] ReAPI                   5.9.0.171-  Asmodai & s1lent     running   
 [ 5] JSON                    1.8.3-dev+  AMX Mod X Dev Team   running   
5 modules, 5 correct
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
zhorzh78, то есть, ентити легко выдает овнера?... В чем моя проблема?
 
Сообщения
333
Реакции
290
Помог
9 раз(а)
malniata, М.б. другой плагин подменяет. Только непонятно с какой целью. Я бы отключил остальные плагины для проверки.
 
Сообщения
459
Реакции
272
Помог
9 раз(а)
zhorzh78, чекнул по плагинам ничего не нашёл. Единственное влияние на гранату - блокировка урона от нее по себе и своим
24 Июн 2019
zhorzh78, винда или линь?
 

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

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