Помощь

ilya85i

Участник
Сообщения
41
Реакции
2
Операционная система
Linux
Нужна помощь от профессионалов. Может ли кто-нибудь помочь с добавлением в этот плагин функции подсвечивания игрока или же изменение цвета скина в момент когда он защищен плагином при респавне или после возрождения, чтобы другие игроки могли видеть издалека его защиту?
 

Вложения

  • sm_spawn_protection.sp
    4.8 КБ · Просмотры: 9
  • spawn_protection.phrases.txt
    247 байт · Просмотры: 7
  • spawn_protection.inc
    634 байт · Просмотры: 5

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
можно задействовать вот этот кусок кода из Revival:
C-подобный:
    if(fNoDmgTime > 0.01)
    {
        bProtected[target] = true;
        SetEntProp(target, Prop_Data, "m_takedamage", 0, 1);
        SetClientColor(target, RENDERFX_HOLOGRAM, RENDER_TRANSCOLOR, 63, 255, 63 , 63);
        CreateTimer(fNoDmgTime, Timer_EnableDmg, GetClientUserId(target), TIMER_FLAG_NO_MAPCHANGE);
    }
}

public Action Timer_EnableDmg(Handle timer, any client)
{
    if((client = GetClientOfUserId(client)))
    {
        bProtected[client] = false;
        SetEntProp(client, Prop_Data, "m_takedamage", 2, 1);
        SetClientColor(client);
    }

    return Plugin_Stop;
}

stock void SetClientColor(int client, RenderFx fx = RENDERFX_NONE, RenderMode mode = RENDER_NORMAL, int r = 255, int g = 255, int b = 255, int a = 255)
{
    SetEntityRenderFx(client, fx);
    SetEntityRenderMode(client, mode);
    SetEntityRenderColor(client, r, g, b, a);
}
 

ilya85i

Участник
Сообщения
41
Реакции
2
можно задействовать вот этот кусок кода из Revival:
C-подобный:
    if(fNoDmgTime > 0.01)
    {
        bProtected[target] = true;
        SetEntProp(target, Prop_Data, "m_takedamage", 0, 1);
        SetClientColor(target, RENDERFX_HOLOGRAM, RENDER_TRANSCOLOR, 63, 255, 63 , 63);
        CreateTimer(fNoDmgTime, Timer_EnableDmg, GetClientUserId(target), TIMER_FLAG_NO_MAPCHANGE);
    }
}

public Action Timer_EnableDmg(Handle timer, any client)
{
    if((client = GetClientOfUserId(client)))
    {
        bProtected[client] = false;
        SetEntProp(client, Prop_Data, "m_takedamage", 2, 1);
        SetClientColor(client);
    }

    return Plugin_Stop;
}

stock void SetClientColor(int client, RenderFx fx = RENDERFX_NONE, RenderMode mode = RENDER_NORMAL, int r = 255, int g = 255, int b = 255, int a = 255)
{
    SetEntityRenderFx(client, fx);
    SetEntityRenderMode(client, mode);
    SetEntityRenderColor(client, r, g, b, a);
}
Я просто добавил ваш код и при компиляции плагина у меня 6 ошибок. Можете добавить вы их правильно к этому исходному коду, а то похоже я что-то не так делаю.
 

Вложения

  • скрин.jpg
    скрин.jpg
    75.3 КБ · Просмотры: 14

ilya85i

Участник
Сообщения
41
Реакции
2

ilya85i

Участник
Сообщения
41
Реакции
2
Скорее всего вы просто не разобрались в кварах
Да вроде разобрался. Перепробовал разные варианты. Не работает.
Сообщения автоматически склеены:

Так нужно было не добавлять как есть, а подправить в соответствии с кодом плагина, куда вставляешь. Ещё бы оно скомпилилось.
Я как раз-таки создал тут тему чтобы мне с этим помогли. Вы можете помочь подправить код этого плагина?
 
Сверху Снизу