Advertisement
ShomyScript

Untitled

Oct 6th, 2017
686
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.89 KB | None | 0 0
  1. //==========================[ • AFK SYS SHOMY • ]=============================//
  2.  
  3. //=-= [ INCLUDE ] =-=//
  4.  
  5. #include < a_samp >
  6. #include < callbacks >
  7. #include < zcmd >
  8.  
  9. //=-= [ DEFINE ] =-=//
  10.  
  11. #define DIALOG_UKLJISKLJ 1
  12.  
  13. //=-= [ NEW ] =-=//
  14.  
  15. new TimerAFK[ MAX_PLAYERS ];
  16. new Sekundi[ MAX_PLAYERS ];
  17. new Minuti[ MAX_PLAYERS ];
  18. new TimerAFK2[ MAX_PLAYERS ];
  19. new bool:KickUkljucen;
  20. new Text3D:label;
  21.  
  22. //=-= [ FORWARD ] =-=//
  23.  
  24. forward AFKTimer(playerid);
  25. forward KickTimer(playerid);
  26. forward AFKVreme(playerid);
  27.  
  28. //=-= [ PUBLIC ] =-=//
  29.  
  30. public OnFilterScriptInit()
  31. {
  32. KickUkljucen = true;
  33. return 1;
  34. }
  35. public OnPlayerPause(playerid)
  36. {
  37. new str[128];
  38. if(KickUkljucen)
  39. {
  40. TimerAFK[playerid] = SetTimerEx( "AFKTimer", 600000, false, "i", playerid );
  41. }
  42. TimerAFK2[playerid] = SetTimerEx( "AFKVreme", 1000, true, "i", playerid );
  43. format(str, sizeof(str), "[ AFK - %d:%d ]", Minuti[playerid], Sekundi[playerid]);
  44. label = Create3DTextLabel(str, 0x008080FF, 30.0, 40.0, 50.0, 40.0, 0);
  45. Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.7);
  46. return 1;
  47. }
  48. public OnPlayerResume(playerid, time)
  49. {
  50. KillTimer(TimerAFK[playerid]);
  51. KillTimer(TimerAFK2[playerid]);
  52. Sekundi[playerid] = 0;
  53. Minuti[playerid] = 0;
  54. Delete3DTextLabel(label);
  55. return 1;
  56. }
  57. public AFKTimer(playerid)
  58. {
  59. SendClientMessage(playerid, -1, "AFK Ste duze od 10 minuta, izbaceni ste sa servera !");
  60. SetTimerEx( "KickTimer", 500, false, "i", playerid );
  61. return 1;
  62. }
  63. public KickTimer(playerid)
  64. {
  65. Kick(playerid);
  66. return 1;
  67. }
  68. public AFKVreme(playerid)
  69. {
  70. Sekundi[playerid] += 1;
  71. if(Sekundi[playerid] == 60)
  72. {
  73. Minuti[playerid] += 1;
  74. }
  75. if(Sekundi[playerid] == 120)
  76. {
  77. Minuti[playerid] += 1;
  78. }
  79. if(Sekundi[playerid] == 180)
  80. {
  81. Minuti[playerid] += 1;
  82. }
  83. if(Sekundi[playerid] == 240)
  84. {
  85. Minuti[playerid] += 1;
  86. }
  87. if(Sekundi[playerid] == 300)
  88. {
  89. Minuti[playerid] += 1;
  90. }
  91. if(Sekundi[playerid] == 360)
  92. {
  93. Minuti[playerid] += 1;
  94. }
  95. if(Sekundi[playerid] == 420)
  96. {
  97. Minuti[playerid] += 1;
  98. }
  99. if(Sekundi[playerid] == 480)
  100. {
  101. Minuti[playerid] += 1;
  102. }
  103. if(Sekundi[playerid] == 540)
  104. {
  105. Minuti[playerid] += 1;
  106. }
  107. if(Sekundi[playerid] == 600)
  108. {
  109. Minuti[playerid] += 1;
  110. }
  111. return 1;
  112. }
  113. public OnPlayerUpdate(playerid)
  114. {
  115. if(Sekundi[playerid] += 1)
  116. {
  117. Update3D(playerid);
  118. }
  119. else if(Minuti[playerid] += 1)
  120. {
  121. Update3D(playerid);
  122. }
  123. return 1;
  124. }
  125. public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[])
  126. {
  127. if(dialogid == DIALOG_UKLJISKLJ)
  128. {
  129. if(response)
  130. {
  131. switch(listitem)
  132. {
  133. case 0:
  134. {
  135. if(!KickUkljucen)
  136. {
  137. KickUkljucen = true;
  138. SendClientMessage(playerid, -1, "Ukljucili ste AFK Kick.");
  139. }
  140. else return SendClientMessage(playerid, -1, "Vec je ukljucen !");
  141. }
  142. case 1:
  143. {
  144. if(KickUkljucen)
  145. {
  146. KickUkljucen = false;
  147. SendClientMessage(playerid, -1, "Iskljucili ste AFK Kick.");
  148. }
  149. else return SendClientMessage(playerid, -1, "Vec je iskljucen !");
  150. }
  151. case 2:
  152. {
  153. SendClientMessage(playerid, -1, "AFK Kick System By - Shomy");
  154. SendClientMessage(playerid, -1, "Facebook - Milos GC");
  155. }
  156. }
  157. }
  158. }
  159. return 1;
  160. }
  161.  
  162. //=-= [ STOCK ] =-=//
  163.  
  164. stock Update3D(playerid)
  165. {
  166. new str[128];
  167. format(str, sizeof(str), "[ AFK - %d:%d ]", Minuti[playerid], Sekundi[playerid]);
  168. label = Create3DTextLabel(str, 0x008080FF, 30.0, 40.0, 50.0, 40.0, 0);
  169. Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.7);
  170. }
  171.  
  172. //=-= [ CMD ] =-=//
  173.  
  174. CMD:iskljucikick(playerid, params[])
  175. {
  176. if(IsPlayerAdmin(playerid))
  177. {
  178. ShowPlayerDialog(playerid, DIALOG_UKLJISKLJ, DIALOG_STYLE_LIST, "AFK System","Ukljuci\nIskljuci\nCredits","Odaberi","Izadji");
  179. }
  180. else return SendClientMessage(playerid, -1, "Niste ovlasceni !");
  181. return 1;
  182. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement