Guest User

[SAMP] KickBanFix.inc by Gammix (REUPLOAD)

a guest
Apr 27th, 2018
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.74 KB | None | 0 0
  1. #if defined kickban_included
  2. #endinput
  3. #endif
  4. #define kickban_included
  5.  
  6. enum e_KICKBAN
  7. {
  8. e_KICKBAN_TIMER,
  9. e_KICKBAN_TYPE,
  10. e_KICKBAN_REASON[150]
  11. };
  12. static KB_ePlayer[MAX_PLAYERS][e_KICKBAN];
  13.  
  14. stock FIX_Kick(playerid, delay = 150)
  15. {
  16. if (! IsPlayerConnected(playerid) || KB_ePlayer[playerid][e_KICKBAN_TIMER])
  17. {
  18. return 0;
  19. }
  20.  
  21. CallRemoteFunction("OnPlayerDelayKickProcessed", "ii", playerid, SetTimerEx("OnPlayerDelayKicked", delay, false, "i", playerid));
  22.  
  23. KB_ePlayer[playerid][e_KICKBAN_TYPE] = 0;
  24. KB_ePlayer[playerid][e_KICKBAN_REASON][0] = EOS;
  25.  
  26. return 1;
  27. }
  28. #if defined _ALS_Kick
  29. #undef Kick
  30. #else
  31. native BAD_Kick(playerid) = Kick;
  32. #define _ALS_Kick
  33. #endif
  34. #define Kick FIX_Kick
  35.  
  36. stock FIX_Ban(playerid, delay = 150)
  37. {
  38. if (! IsPlayerConnected(playerid) || KB_ePlayer[playerid][e_KICKBAN_TIMER])
  39. {
  40. return 0;
  41. }
  42.  
  43. CallRemoteFunction("OnPlayerDelayKickProcessed", "ii", playerid, SetTimerEx("OnPlayerDelayKicked", delay, false, "i", playerid));
  44.  
  45. KB_ePlayer[playerid][e_KICKBAN_TYPE] = 1;
  46. KB_ePlayer[playerid][e_KICKBAN_REASON][0] = EOS;
  47.  
  48. return 1;
  49. }
  50. #if defined _ALS_Ban
  51. #undef Ban
  52. #else
  53. native BAD_Ban(playerid) = Ban;
  54. #define _ALS_Ban
  55. #endif
  56. #define Ban FIX_Ban
  57.  
  58. stock FIX_BanEx(playerid, const reason[], delay = 150)
  59. {
  60. if (! IsPlayerConnected(playerid) || KB_ePlayer[playerid][e_KICKBAN_TIMER])
  61. {
  62. return 0;
  63. }
  64.  
  65. CallRemoteFunction("OnPlayerDelayKickProcessed", "ii", playerid, SetTimerEx("OnPlayerDelayKicked", delay, false, "i", playerid));
  66.  
  67. KB_ePlayer[playerid][e_KICKBAN_TYPE] = 2;
  68. KB_ePlayer[playerid][e_KICKBAN_REASON][0] = EOS;
  69. strcat(KB_ePlayer[playerid][e_KICKBAN_REASON], reason);
  70.  
  71. return 1;
  72. }
  73. #if defined _ALS_BanEx
  74. #undef BanEx
  75. #else
  76. native BAD_BanEx(playerid, const reason[]) = BanEx;
  77. #define _ALS_BanEx
  78. #endif
  79. #define BanEx FIX_BanEx
  80.  
  81. forward OnPlayerDelayKicked(playerid);
  82. public OnPlayerDelayKicked(playerid)
  83. {
  84. CallRemoteFunction("OnPlayerDelayKickProcessed", "ii", playerid, 0);
  85.  
  86. switch (KB_ePlayer[playerid][e_KICKBAN_TYPE])
  87. {
  88. case 0:
  89. {
  90. BAD_Kick(playerid);
  91. }
  92. case 1:
  93. {
  94. BAD_Ban(playerid);
  95. }
  96. case 2:
  97. {
  98. BAD_BanEx(playerid, KB_ePlayer[playerid][e_KICKBAN_REASON]);
  99. }
  100. }
  101. }
  102.  
  103. forward OnPlayerDelayKickProcessed(playerid, i);
  104. public OnPlayerDelayKickProcessed(playerid, i)
  105. {
  106. KB_ePlayer[playerid][e_KICKBAN_TIMER] = i;
  107. }
  108.  
  109. public OnPlayerConnect(playerid)
  110. {
  111. KB_ePlayer[playerid][e_KICKBAN_TIMER] = 0;
  112.  
  113. #if defined KB_OnPlayerConnect
  114. return KB_OnPlayerConnect(playerid);
  115. #else
  116. return 1;
  117. #endif
  118.  
  119. }
  120. #if defined _ALS_OnPlayerConnect
  121. #undef OnPlayerConnect
  122. #else
  123. #define _ALS_OnPlayerConnect
  124. #endif
  125. #define OnPlayerConnect KB_OnPlayerConnect
  126. #if defined KB_OnPlayerConnect
  127. forward KB_OnPlayerConnect(playerid);
  128. #endif
  129.  
  130. public OnPlayerDisconnect(playerid, reason)
  131. {
  132. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  133. {
  134. KillTimer(KB_ePlayer[playerid][e_KICKBAN_TIMER]);
  135. KB_ePlayer[playerid][e_KICKBAN_TIMER] = 0;
  136.  
  137. OnPlayerDelayKicked(playerid);
  138. }
  139.  
  140. #if defined KB_OnPlayerDisconnect
  141. return KB_OnPlayerDisconnect(playerid, reason);
  142. #else
  143. return 1;
  144. #endif
  145. }
  146. #if defined _ALS_OnPlayerDisconnect
  147. #undef OnPlayerDisconnect
  148. #else
  149. #define _ALS_OnPlayerDisconnect
  150. #endif
  151. #define OnPlayerDisconnect KB_OnPlayerDisconnect
  152. #if defined KB_OnPlayerDisconnect
  153. forward KB_OnPlayerDisconnect(playerid, reason);
  154. #endif
  155.  
  156. public OnPlayerUpdate(playerid)
  157. {
  158. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  159. {
  160. return 0;
  161. }
  162.  
  163. #if defined KB_OnPlayerUpdate
  164. return KB_OnPlayerUpdate(playerid);
  165. #else
  166. return 1;
  167. #endif
  168. }
  169. #if defined _ALS_OnPlayerUpdate
  170. #undef OnPlayerUpdate
  171. #else
  172. #define _ALS_OnPlayerUpdate
  173. #endif
  174. #define OnPlayerUpdate KB_OnPlayerUpdate
  175. #if defined KB_OnPlayerUpdate
  176. forward KB_OnPlayerUpdate(playerid);
  177. #endif
  178.  
  179. public OnPlayerCommandText(playerid, cmdtext[])
  180. {
  181. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  182. {
  183. return 0;
  184. }
  185.  
  186. #if defined KB_OnPlayerCommandText
  187. return KB_OnPlayerCommandText(playerid, cmdtext);
  188. #else
  189. return 0;
  190. #endif
  191. }
  192. #if defined _ALS_OnPlayerCommandText
  193. #undef OnPlayerCommandText
  194. #else
  195. #define _ALS_OnPlayerCommandText
  196. #endif
  197. #define OnPlayerCommandText KB_OnPlayerCommandText
  198. #if defined KB_OnPlayerCommandText
  199. forward KB_OnPlayerCommandText(playerid, cmdtext[]);
  200. #endif
  201.  
  202. public OnPlayerText(playerid, text[])
  203. {
  204. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  205. {
  206. return 0;
  207. }
  208.  
  209. #if defined KB_OnPlayerText
  210. return KB_OnPlayerText(playerid, text);
  211. #else
  212. return 1;
  213. #endif
  214. }
  215. #if defined _ALS_OnPlayerText
  216. #undef OnPlayerText
  217. #else
  218. #define _ALS_OnPlayerText
  219. #endif
  220. #define OnPlayerText KB_OnPlayerText
  221. #if defined KB_OnPlayerText
  222. forward KB_OnPlayerText(playerid, text[]);
  223. #endif
  224.  
  225. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  226. {
  227. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  228. {
  229. return 0;
  230. }
  231.  
  232. #if defined KB_OnDialogResponse
  233. return KB_OnDialogResponse(playerid, dialogid, response, listitem, inputtext);
  234. #else
  235. return 1;
  236. #endif
  237. }
  238. #if defined _ALS_OnDialogResponse
  239. #undef OnDialogResponse
  240. #else
  241. #define _ALS_OnDialogResponse
  242. #endif
  243. #define OnDialogResponse KB_OnDialogResponse
  244. #if defined KB_OnDialogResponse
  245. forward KB_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
  246. #endif
  247.  
  248. public OnPlayerDeath(playerid, killerid, reason)
  249. {
  250. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  251. {
  252. return 0;
  253. }
  254.  
  255. #if defined KB_OnPlayerDeath
  256. return KB_OnPlayerDeath(playerid, killerid, reason);
  257. #else
  258. return 1;
  259. #endif
  260. }
  261. #if defined _ALS_OnPlayerDeath
  262. #undef OnPlayerDeath
  263. #else
  264. #define _ALS_OnPlayerDeath
  265. #endif
  266. #define OnPlayerDeath KB_OnPlayerDeath
  267. #if defined KB_OnPlayerDeath
  268. forward KB_OnPlayerDeath(playerid, killerid, reason);
  269. #endif
  270.  
  271. public OnVehicleMod(playerid, vehicleid, componentid)
  272. {
  273. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  274. {
  275. return 0;
  276. }
  277.  
  278. #if defined KB_OnVehicleMod
  279. return KB_OnVehicleMod(playerid, vehicleid, componentid);
  280. #else
  281. return 1;
  282. #endif
  283. }
  284. #if defined _ALS_OnVehicleMod
  285. #undef OnVehicleMod
  286. #else
  287. #define _ALS_OnVehicleMod
  288. #endif
  289. #define OnVehicleMod KB_OnVehicleMod
  290. #if defined KB_OnVehicleMod
  291. forward KB_OnVehicleMod(playerid, vehicleid, componentid);
  292. #endif
  293.  
  294. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  295. {
  296. if (KB_ePlayer[playerid][e_KICKBAN_TIMER])
  297. {
  298. return 0;
  299. }
  300.  
  301. #if defined KB_OnVehicleRespray
  302. return KB_OnVehicleRespray(playerid, vehicleid, color1, color2);
  303. #else
  304. return 1;
  305. #endif
  306. }
  307. #if defined _ALS_OnVehicleRespray
  308. #undef OnVehicleRespray
  309. #else
  310. #define _ALS_OnVehicleRespray
  311. #endif
  312. #define OnVehicleRespray KB_OnVehicleRespray
  313. #if defined KB_OnVehicleRespray
  314. forward KB_OnVehicleRespray(playerid, vehicleid, color1, color2);
  315. #endif
Add Comment
Please, Sign In to add comment