Участник
Пользователь
- Сообщения
- 460
- Реакции
- 68
- Помог
- 7 раз(а)
Всем привет форумчане. Помогите с дамагером хочу прикрутить включение/выключение командой в чат. Получается только вывод сообщения о том что вкл. или выкл., а всё остальное никак. Исход приложу ниже.
Я не скриптер поэтому не шарю как что и куда)
Я не скриптер поэтому не шарю как что и куда)
C++:
#include amxmodx
#include reapi
#define WALLS_VISIBLE
#if !defined WALLS_VISIBLE
#include fakemeta_util
#endif
new g_MsgSync1, g_MsgSync2;
public plugin_init()
{
register_plugin("[ReAPI] Damager","1.1","phe");
RegisterHookChain(RG_CBasePlayer_TakeDamage, "CBasePlayer_TakeDamage", true);
g_MsgSync1=CreateHudSyncObj();
g_MsgSync2=CreateHudSyncObj();
}
public CBasePlayer_TakeDamage(victim, inflictor, attacker, Float:damage)
{
if(!is_user_connected(attacker))
return;
if(!rg_is_player_can_takedamage(victim, attacker))
return;
if(get_member(victim, m_iTeam) == get_member(attacker, m_iTeam)) // if FFa, remove...
return;
set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
ShowSyncHudMsg(victim, g_MsgSync1, "%.0f", damage);
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
#if defined WALLS_VISIBLE
ShowSyncHudMsg(attacker, g_MsgSync2, "%.0f", damage);
#else
if(fm_is_ent_visible(attacker, victim))
ShowSyncHudMsg(attacker, g_MsgSync2, "%.0f", damage);
#endif
}
C++:
#include amxmodx
#include <fakemeta>
#include reapi
#define DMGOFF
#define WALLS_VISIBLE
#if !defined WALLS_VISIBLE
#include fakemeta_util
#endif
new bool:gOnOff[33] = { true, ... };
new g_MsgSync1, g_MsgSync2;
public plugin_init()
{
register_plugin("[ReAPI] Damager","1.1","phe");
register_clcmd("say /damager", "dmgOF", -1, "");
RegisterHookChain(RG_CBasePlayer_TakeDamage, "CBasePlayer_TakeDamage", true);
g_MsgSync1=CreateHudSyncObj();
g_MsgSync2=CreateHudSyncObj();
}
public dmgOF(id)
{
if( gOnOff[id] )
{
client_print(id, print_chat, "[AMXX] Показ урона выключен.");
gOnOff[id] = false;
}
else
{
client_print(id, print_chat, "[AMXX] Показ урона включён.");
gOnOff[id] = true;
}
#if defined DMGOFF
return PLUGIN_CONTINUE;
#else
return PLUGIN_HANDLED;
#endif
}
public CBasePlayer_TakeDamage(victim, inflictor, attacker, Float:damage)
{
if(!is_user_connected(attacker))
return;
if(!rg_is_player_can_takedamage(victim, attacker))
return;
if(get_member(victim, m_iTeam) == get_member(attacker, m_iTeam)) // if FFa, remove...
return;
#if defined DMGOFF
set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
ShowSyncHudMsg(victim, g_MsgSync1, "%.0f", damage);
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
#if defined WALLS_VISIBLE
ShowSyncHudMsg(attacker, g_MsgSync2, "%.0f", damage);
#else
if(fm_is_ent_visible(attacker, victim))
ShowSyncHudMsg(attacker, g_MsgSync2, "%.0f", damage);
#endif
}
public client_connect(id)
{
gOnOff[id] = true;
}
public client_disconnected(id)
{
#endif
gOnOff[id] = true;
}