Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.58 KB | None | 0 0
  1. #if defined _vip_included
  2. #endinput
  3. #endif
  4. #define _vip_included
  5.  
  6. #define VIP_INTERFACE "vip_interface005"
  7.  
  8. enum enSound
  9. {
  10. pNoSound = 0,
  11. pSucces = 1,
  12. pError = 2,
  13. };
  14.  
  15. /**
  16. * Записывать события в файл vip.log
  17. * Сторониий плагин регистрируется именим файла: [vip.smx] ...
  18. */
  19. native Vip_Log(const String:format[], any:...);
  20.  
  21. /**
  22. * Записывать события ошибок в файл vip_error.log
  23. * Сторониий плагин регистрируется именим файла: [vip.smx] ...
  24. */
  25. native Vip_ErrorLog(const String:format[], any:...);
  26.  
  27. /**
  28. * Проверка игрока на VIP доступ.
  29. */
  30. native bool:IsClientVip(client);
  31.  
  32. /**
  33. * Проверка игрока на доступ к функции "Управления игроками".
  34. */
  35. native bool:IsClientVipCmds(client);
  36.  
  37. /**
  38. * Проверка иммунитета у VIP игрока.
  39. */
  40. native bool:IsClientVipImmune(client);
  41.  
  42. /**
  43. * Глобальный запрос перед проверкой и установки флагов игрока.
  44. * return true - Разрешить проверку и установки флагов игрока.
  45. * return false - Игнорировать проверку и установки флагов игрока.
  46. */
  47. forward bool:Vip_OnUsersLoadFlags(client, const String:authid[]);
  48.  
  49. /**
  50. * Глобальный запрос после проверки и установки флагов игрока.
  51. */
  52. forward Vip_OnUsersLoadFlags_Post(client, const String:authid[], const bool:usersvip, const bool:userscmds, const bool:usersadmin);
  53.  
  54. /**
  55. * Установить игроку VIP флаги.
  56. */
  57. native bool:SetVipUsersFlags(client, const String:flags[]="0a", minutes=60, const String:password[]="", bool:savekvbase=true);
  58.  
  59. /**
  60. * Проверка в наличии групп в базе: data/vip/users_groups.ini
  61. * Пример: isVipUsersGroups("group basic")
  62. */
  63. native bool:isVipUsersGroups(String:group[]);
  64.  
  65. /**
  66. * Установить игроку VIP группу флагов из базы: data/vip/users_groups.ini
  67. * Пример: SetVipUsersGroups(client, "group basic")
  68. */
  69. native bool:SetVipUsersGroups(client, const String:group[]="group basic", minutes=60, const String:password[]="", bool:savekvbase=true);
  70.  
  71. /**
  72. * Удалить VIP игрока из базы: data/vip/users.ini
  73. * Пример: VipUsersDelete("STEAM_0:0:11231243")
  74. * Ответ: true steamid vip удален из базы.
  75. * Ответ: false Не удалось удалить steamid vip из базы, возможно его в базе нет.
  76. */
  77. native bool:VipUsersDelete(const String:steamid[]);
  78.  
  79. /**
  80. * Узнать, когда истечет время привелегий плагина у VIP игрока в unixtime.
  81. * Пример: VipUsersGetExpires("STEAM_0:0:11231243")
  82. * Ответ: -1 Игрока нет в базе.
  83. * Ответ: 0 Навсегда.
  84. * Ответ: Другие числа время в unixtime.
  85. */
  86. native VipUsersGetExpires(const String:steamid[]);
  87.  
  88. /**
  89. * Напечатать сообщение игроку в чат с определенным звуков.
  90. * pNoSound - Без звука.
  91. * pSucces - Звук по адресу: sound/buttons/weapon_confirm.wav
  92. * pError - Звук по адресу: sound/buttons/button11.wav
  93. * Пример: VipPrint(client, pNoSound, "Привет.");
  94. */
  95. native VipPrint(client, enSound:pNoSound, const String:format[], any:...);
  96.  
  97. /**
  98. * Установить опцию чата для игроков.
  99. * option:
  100. * 0 Стандартно.
  101. * 1 Для всех игроков включается форматирование сообщение чата, отключает проверку живой или мертвый.
  102. */
  103. native VipUsersChatSettings(option);
  104.  
  105. /**
  106. * Узнать установленное значение опции чата игроков.
  107. */
  108. native GetVipUsersChatSettings();
  109.  
  110.  
  111. /**
  112. * Какие атрибуты установлены на определенном SteamID игрока.
  113. * steamid SteamID игрока, которого ищем в базе.
  114. * buffer переменная в которую будет занесены атрибуты, флаги или группа.
  115. * maxlength Максимальная длина текста переменной buffer.
  116. * Ответ: true steamid под VIP найден в базе, передача в buffer группы или флаги.
  117. * Ответ: false steamid не найден в базе или не имеет VIP группы или флаги.
  118. */
  119. native bool:GetVipUsersAttribute(const String:steamid[], String:buffer[], maxlength);
  120.  
  121. public SharedPlugin:__pl_vip =
  122. {
  123. name = VIP_INTERFACE,
  124. file = "vip.smx",
  125. #if defined REQUIRE_PLUGIN
  126. required = 1,
  127. #else
  128. required = 0,
  129. #endif
  130. };
  131.  
  132. #if !defined REQUIRE_PLUGIN
  133. public __pl_vip_SetNTVOptional()
  134. {
  135. MarkNativeAsOptional("Vip_Log");
  136. MarkNativeAsOptional("Vip_ErrorLog");
  137. MarkNativeAsOptional("IsClientVip");
  138. MarkNativeAsOptional("IsClientVipCmds");
  139. MarkNativeAsOptional("IsClientVipImmune");
  140. MarkNativeAsOptional("SetVipUsersFlags");
  141. MarkNativeAsOptional("isVipUsersGroups");
  142. MarkNativeAsOptional("SetVipUsersGroups");
  143. MarkNativeAsOptional("VipUsersDelete");
  144. MarkNativeAsOptional("VipUsersGetExpires");
  145. MarkNativeAsOptional("VipPrint");
  146. MarkNativeAsOptional("VipUsersChatSettings");
  147. MarkNativeAsOptional("GetVipUsersChatSettings");
  148. MarkNativeAsOptional("GetVipUsersAttribute");
  149. }
  150. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement