Там единственное упоминание про флеш ассист в player_death. Но там булевское значение, которое показывает был ли флеш ассист от того, кто ассистировал в убийстве. А мне надо узнать кто является флеш-ассистентом
ксго научилась передавать 3+ ассистентов?Там единственное упоминание про флеш ассист в player_death. Но там булевское значение, которое показывает был ли флеш ассист от того, кто ассистировал в убийстве. А мне надо узнать кто является флеш-ассистентом
ксго научилась передавать 3+ ассистентов?
assistedflash - является ли ассистент ослепителем
assister - userid ассистента
пожалуйста, читайте описание внимательно. да и подумоть было бы неплохо
3 ассиста. ору
Я тоже думал над тем, чтоб хранить все ослепления в массиве. Но убить игрока могут и спустя долгое время после того, как он был ослеплен - это ведь уже не считается ассистом3 ассиста. ору
можно сохранять недавние ослепления в глобальный массив используя blind hook
![]()
Blind Hook
Расширение работает только в связке с плагинами Используйте тэг blindhook для поиска плагинов API: /** * Вызывается, когда световая граната ослепляет игрока. * Верните Plugin_Continue, чтобы оставить как есть, или же, * верните большое...hlmod.net
Ну и по поводу этого - я не понимаю чего-то? Откуда 3 то? На скрине же убийца + ассистент по урону + ассистент по флешке3 ассиста. ору
Я тоже думал над тем, чтоб хранить все ослепления в массиве. Но убить игрока могут и спустя долгое время после того, как он был ослеплен - это ведь уже не считается ассистом
Ну и по поводу этого - я не понимаю чего-то? Откуда 3 то? На скрине же убийца + ассистент по урону + ассистент по флешке
float g_fFlashDuration[MAXPLAYERS+1];
int g_iFlashAttacker[MAXPLAYERS+1];
public void OnPluginStart()
{
HookEvent("player_blind", Event_PlayerBlind);
HookEvent("player_death", Event_DeathPlayer);
}
void Event_DeathPlayer(Event hEvent, const char[] szEvent, bool dontBroadcast)
{
int iClient = GetClientOfUserId(GetEventInt(hEvent, "userid"));
if (g_fFlashDuration[iClient] - GetGameTime() > 0 && (g_iFlashAttacker[iClient] = GetClientOfUserId(g_iFlashAttacker[iClient])))
{
// g_iFlashAttacker[iClient]
}
}
void Event_PlayerBlind(Event hEvent, const char[] szEvent, bool dontBroadcast)
{
int iTarget = GetClientOfUserId(GetEventInt(hEvent, "userid"));
int iAttacker = GetClientOfUserId(GetEventInt(hEvent, "attacker"));
float fDuration = GetEventFloat(hEvent, "blind_duration");
g_fFlashDuration[iTarget] = GetGameTime() + fDuration;
g_iFlashAttacker[iTarget] = GetClientUserId(iAttacker);
}
а зачем обрабатывать ассиста по ослеплению, если ивент показывает false?Но убить игрока могут и спустя долгое время после того, как он был ослеплен - это ведь уже не считается ассистом
Спасибо большое!C-подобный:float g_fFlashDuration[MAXPLAYERS+1]; int g_iFlashAttacker[MAXPLAYERS+1]; public void OnPluginStart() { HookEvent("player_blind", Event_PlayerBlind); HookEvent("player_death", Event_DeathPlayer); } void Event_DeathPlayer(Event hEvent, const char[] szEvent, bool dontBroadcast) { int iClient = GetClientOfUserId(GetEventInt(hEvent, "userid")); if (g_fFlashDuration[iClient] - GetGameTime() > 0 && (g_iFlashAttacker[iClient] = GetClientOfUserId(g_iFlashAttacker[iClient]))) { // g_iFlashAttacker[iClient] } } void Event_PlayerBlind(Event hEvent, const char[] szEvent, bool dontBroadcast) { int iTarget = GetClientOfUserId(GetEventInt(hEvent, "userid")); int iAttacker = GetClientOfUserId(GetEventInt(hEvent, "attacker")); float fDuration = GetEventFloat(hEvent, "blind_duration"); g_fFlashDuration[iTarget] = GetGameTime() + fDuration; g_iFlashAttacker[iTarget] = GetClientUserId(iAttacker); }