[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Форум » Уроки SourceMod (SourcePawn) Скриптинга » Сколько игрок убил врагов за раунд (Сколько раз прыгнул Взято с world-source.ru)
Сколько игрок убил врагов за раунд
rootДата: Воскресенье, 03.02.2013, 01:45 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 561
Статус: Offline
Простой пример скрипта, считаем количество прыжков и убийств за раунд. 

Код
#include <sourcemod>  

new Jumps[MAXPLAYERS+1], Kills[MAXPLAYERS+1];  

public OnPluginStart()  
{  
      HookEvent("player_spawn", player_spawn);  
      HookEvent("player_jump", player_jump);  
      HookEvent("player_death", player_death);  
      HookEvent("round_end", round_end, EventHookMode_PostNoCopy);  
}  

public player_spawn(Handle:event, const String:name[], bool:dontBroadcast)  
{  
      new client = GetClientOfUserId(GetEventInt(event, "userid"));  
      Jumps [client]= 0;  
      Kills [client]= 0;  
}  

public player_jump(Handle:event, const String:name[], bool:dontBroadcast)  
{  
      Jumps[GetClientOfUserId(GetEventInt(event, "userid"))] += 1;  
}   

public player_death(Handle:event, const String:name[], bool:dontBroadcast)  
{  
      new client = GetClientOfUserId(GetEventInt(event, "attacker"));  
      if (client > 0 && GetClientTeam(client) != GetClientTeam(GetClientOfUserId(GetEventInt(event, "userid"))))  
      {  
          Kills [client]+= 1;  
      }  
}  

public round_end(Handle:event, const String:name[], bool:dontBroadcast)  
{  
      for (new i = 1; i <= MaxClients; i++)  
      {  
          if (IsClientInGame(i)) PrintToChat(i, "Вы прыгнули раз: %d, убили врагов: %d", Jumps[i], Kills[i]);  
      }  
}

prug.sp(1.1 Kb)
 
Форум » Форум » Уроки SourceMod (SourcePawn) Скриптинга » Сколько игрок убил врагов за раунд (Сколько раз прыгнул Взято с world-source.ru)
  • Страница 1 из 1
  • 1
Поиск: