Всем по 1 фрагу?фраг будет засчитываться террористам
public OnPluginStart() HookEvent("player_death", EvDeath);
public Action:EvDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
if(GetClientTeam(GetClientOfUserId(GetEventInt(event, "userid"))) == 3)
{
new client = GetClientOfUserId(GetEventInt(event, "attacker"));
for(new i = 1; i <= MaxClients; i++)
if(i != client && GetClientTeam(i) == 2)
SetEntProp(i, Prop_Data, "m_iFrags", GetClientFrags(i) + 1);
}
}
Тогда пост 5 почти подходит:картой либо сам разбился
public OnPluginStart() HookEvent("player_death", EvDeath);
public Action:EvDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
if(GetClientTeam(GetClientOfUserId(GetEventInt(event, "userid"))) == 3)
{
for(new i = 1; i <= MaxClients; i++)
if(IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2)
SetEntProp(i, Prop_Data, "m_iFrags", GetClientFrags(i) + 1);
}
}
Конкретно. Если Т или сама карта убивает КТ, то всем живым Т дать 1 фраг.как мне еще объяснить я не знаю
А из 10-го?
L 10/27/2015 - 20:08:30: [SM] Native "IsPlayerAlive" reported: Client 8 is not in game
L 10/27/2015 - 20:08:30: [SM] Displaying call stack trace for plugin "player_death.smx":
L 10/27/2015 - 20:08:30: [SM] [0] Line 8, D:\Dev\sourcemod\scripting\player_death.sp::EvDeath()
Кинул в ЛС свою версию.чтобы считалось как будто террорист убивает людей
не совсем.Может тебе именно убийство из оружия надо, тогда с ножа подставлять - и всё, будет показ в правом углу.
Да-да, так и есть. Просто забыл преобразовать индекс игрока в userid, поэтому работало лишь после запуска сервера. Считает верно, но не отображает справа. Вряд ли это важно для других плагинов, если только по оружию ещё.террористу дается фраг как будто это он сделал
public OnPluginStart() HookEvent("player_death", EvDeath, EventHookMode_Pre);
public Action:EvDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
if(GetClientTeam(GetClientOfUserId(GetEventInt(event, "userid"))) == 3 && GetClientOfUserId(GetEventInt(event, "attacker")) == 0)
{
for(new i = 1; i <= MaxClients; i++)
if(IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2)
{
SetEventInt(event, "attacker", GetClientUserId(i));
return Plugin_Changed;
}
}
return Plugin_Continue;
}
Не знаю, ТС спроси.зачем здесь обсуждать
Приват - ему наверняка хотелось, чтобы такой плагин был лишь у него. Да и писал чисто в своём стиле, вряд ли такой исходник будет полезен кому-то для изменений...код в лс ныкать
Я это всё к массиву int переменных свёл, проверки минимальны.IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2