Advertisement
Guest User

Untitled

a guest
May 28th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.89 KB | None | 0 0
  1. char g_sFlag[16], g_sConSound[256], g_sDisSound[256], g_sAdmSound[256];
  2.  
  3. public void OnPluginStart()
  4. {
  5.     HookEvent("player_disconnect", PlayersEvents, EventHookMode_Pre);
  6.     HookEvent("player_connect", PlayersEvents, EventHookMode_Pre);
  7.     HookEvent("player_team", PlayersEvents, EventHookMode_Pre);
  8.  
  9.     LoadTranslations("simple_connect_info.phrases");
  10. }
  11.  
  12. public void OnMapStart()
  13. {
  14.     char sBuff[128];
  15.  
  16.     KeyValues KvCi = new KeyValues("SCI_Settings");
  17.  
  18.     BuildPath(Path_SM, sBuff, sizeof(sBuff), "configs/connect_info.txt");
  19.     if(!KvCi.ImportFromFile(sBuff)) SetFailState("Конфигурационный файл отсутсвует!");
  20.  
  21.     KvCi.Rewind();
  22.  
  23.     KvCi.GetString("Adm_Flag", g_sFlag, sizeof(g_sFlag));
  24.     KvCi.GetString("Adm_Sound", g_sAdmSound, sizeof(g_sAdmSound));
  25.     KvCi.GetString("Connect_Sound", g_sConSound, sizeof(g_sConSound));
  26.     KvCi.GetString("Disconnect_Sound", g_sDisSound, sizeof(g_sDisSound));
  27.  
  28.     delete KvCi;
  29. }
  30.  
  31. public Action PlayersEvents(Event hEvent, const char[] sName, bool bDontBroadcast)
  32. {
  33.     hEvent.BroadcastDisabled = true;
  34.  
  35.     int iClient = GetClientOfUserId(hEvent.GetInt("userid"));
  36.  
  37.     if (sName[7] == 'c')
  38.     {
  39.         CGOPrintToChatAll("%t", GetUserFlagBits(iClient) & (1<<14) ? "AdminConnected":"ClientConnected", iClient);
  40.         if (g_sConSound[0] || g_sAdmSound[0]) EmitSoundToAll(GetUserFlagBits(iClient) & (1<<14) ? g_sAdmSound:g_sConSound, _, _, SNDLEVEL_DRYER, _, SNDVOL_NORMAL);
  41.     }
  42.     else if (sName[7] == 't')
  43.     {
  44.         switch(hEvent.GetInt("team"))
  45.         {
  46.             case 3:CGOPrintToChatAll("%t",  "JoinedCT", iClient);
  47.             case 2:CGOPrintToChatAll("%t",  "JoinedT", iClient);
  48.             case 1:CGOPrintToChatAll("%t",  "JoinedSpec", iClient);
  49.         }
  50.     }
  51.     else
  52.     {
  53.         char sReason[256];
  54.         hEvent.GetString("reason", sReason, 256);
  55.  
  56.         CGOPrintToChatAll("%t",  "ClientDisconnected", iClient, sReason);
  57.         if (g_sDisSound[0]) EmitSoundToAll(g_sDisSound, _, _, SNDLEVEL_DRYER, _, SNDVOL_NORMAL);
  58.     }
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement