Advertisement
OtaconEvil

[INC] Simple_SetTimerCMD_By_OTACON

Jul 9th, 2013
313
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.71 KB | None | 0 0
  1.  
  2. /*
  3.              Prohibido TOTALMENTE el Robo de Créditos o la
  4.               Publicación de este INCLUDE sin Mi Permiso.
  5.                
  6.     SIMPLE INCLUDE --> SetTimerCMD
  7.     CREDITOS: OTACON ;)
  8.     NOTA: Menos Creditos para los que me los critican.. JO'PUTAS! :D xD ;)
  9.    
  10.     native GetSeg(playerid,slot) //Para Chequear Los Segundos que debe esperar para utilizar La Funcion correspondiente. [NOTA]: Utilizar con format.
  11.     native GetVar(playerid,slot) //Para Chequear si un contador esta activo.
  12.     native SetTimerCMD(playerid,slot,tiempo) //Para Establecer el Tiempo que se debe esperar entre segundos para utilizar la funcion correspondiente.
  13. */
  14.  
  15. /*
  16.     //EJEMPLO 1:
  17.     COMMAND:test1(playerid, params[]) {
  18.         if(GetVar(playerid,0)) {
  19.             new s[128];
  20.             format(s, 128, "[TEST 1] Debes Esperar %d Segundos Para Volver a Utilizar La funcion!.", GetSeg(playerid,0));
  21.             return SendClientMessage(playerid, -1, s);
  22.         }
  23.         SetTimerCMD(playerid, 15, 0); //playerid=id del jugador, 15= 15 segundos, 0=el slot correspondiente
  24.         SendClientMessage(playerid, -1, "[TEST 1] Comando Funciona");
  25.         //TU FUNCION...
  26.         //TU FUNCION...
  27.         return true;
  28.     }
  29.  
  30.     //EJEMPLO 2:
  31.     COMMAND:test2(playerid, params[]) {
  32.         if(GetVar(playerid,1)) {
  33.             new s[128];
  34.             format(s, 128, "[TEST 2] Debes Esperar %d Segundos Para Volver a Utilizar La funcion!.", GetSeg(playerid,1));
  35.             return SendClientMessage(playerid, -1, s);
  36.         }
  37.         SetTimerCMD(playerid, 20, 1); //playerid=id del jugador, 20= 20 segundos, 1=el slot correspondiente
  38.         SendClientMessage(playerid, -1, "[TEST 2] Comando Funciona");
  39.         //TU FUNCION...
  40.         //TU FUNCION...
  41.         return true;
  42.     }
  43.  
  44.     //EJEMPLO 3:
  45.     COMMAND:test3(playerid, params[]) {
  46.         if(GetVar(playerid,2)) {
  47.             new s[128];
  48.             format(s, 128, "[TEST 3] Debes Esperar %d Segundos Para Volver a Utilizar La funcion!.", GetSeg(playerid,2));
  49.             return SendClientMessage(playerid, -1, s);
  50.         }
  51.         SetTimerCMD(playerid, 25, 2); //playerid=id del jugador, 25= 25 segundos, 2=el slot correspondiente
  52.         SendClientMessage(playerid, -1, "[TEST 3] Comando Funciona");
  53.         //TU FUNCION...
  54.         //TU FUNCION...
  55.         return true;
  56.     }
  57.     //ETC...
  58. */
  59.  
  60. /*
  61.              Prohibido TOTALMENTE el Robo de Créditos o la
  62.               Publicación de este INCLUDE sin Mi Permiso.
  63.  
  64.     SIMPLE INCLUDE --> SetTimerCMD
  65.     CREDITOS: OTACON ;)
  66.     NOTA: Menos Creditos para los que me los critican.. JO'PUTAS! :D xD ;)
  67.    
  68.     native GetSeg(playerid,slot) //Para Chequear Los Segundos que debe esperar para utilizar La Funcion correspondiente. [NOTA]: Utilizar con format.
  69.     native GetVar(playerid,slot) //Para Chequear si un contador esta activo.
  70.     native SetTimerCMD(playerid,slot,tiempo) //Para Establecer el Tiempo que se debe esperar entre segundos para utilizar la funcion correspondiente.
  71. */
  72.  
  73. // ========== [ -|- FUNCION -|- ] ==========
  74. #define MAX_VAR (200) //El maximo de contadores que se podran crear.
  75. #define GetVar(%0,%1) EsperarActivarCMD[%0][%1]==true //Para Chequear si un contador esta activo.
  76. #define GetSeg(%0,%1) EsperarCMD[%0][%1][0] //Para Chequear Los Segundos que debe esperar para utilizar La Funcion correspondiente. [NOTA]: Utilizar con format.
  77. #define SetTimerCMD(%0,%1,%2) EsperarCMD_Contador(%0,%1,%2) //Para Establecer el Tiempo que se debe esperar entre segundos para utilizar la funcion correspondiente.
  78. #define SetVar(%0,%1) EsperarActivarCMD[%0][%1]
  79. #define TimerVar(%0,%1) EsperarCMD[%0][%1][1]
  80. new bool:EsperarActivarCMD[MAX_PLAYERS][MAX_VAR],
  81.     EsperarCMD[MAX_PLAYERS][MAX_VAR][2];
  82. stock EsperarCMD_Contador(playerid, tiempo, slot) {
  83.     KillTimer(TimerVar(playerid,slot));
  84.     SetVar(playerid,slot)=true;
  85.     GetSeg(playerid,slot)=tiempo;
  86.     TimerVar(playerid,slot)=SetTimerEx("EsperarCMD_Reset", 1000, true, "dd", playerid, slot);
  87. }
  88. forward EsperarCMD_Reset(playerid, slot);
  89. public EsperarCMD_Reset(playerid, slot) {
  90.     if(GetSeg(playerid,slot)>=0) {
  91.        GetSeg(playerid,slot)--;
  92.     } else {
  93.        KillTimer(TimerVar(playerid,slot));
  94.        GetSeg(playerid,slot)=0;
  95.        SetVar(playerid,slot)=false;
  96.     }
  97. }
  98. // ========== [ -|- FUNCION -|- ] ==========
  99.  
  100. /*
  101.              Prohibido TOTALMENTE el Robo de Créditos o la
  102.               Publicación de este INCLUDE sin Mi Permiso.
  103.  
  104.     SIMPLE INCLUDE --> SetTimerCMD
  105.     CREDITOS: OTACON ;)
  106.     NOTA: Menos Creditos para los que me los critican.. JO'PUTAS! :D xD ;)
  107.    
  108.     native GetSeg(playerid,slot) //Para Chequear Los Segundos que debe esperar para utilizar La Funcion correspondiente. [NOTA]: Utilizar con format.
  109.     native GetVar(playerid,slot) //Para Chequear si un contador esta activo.
  110.     native SetTimerCMD(playerid,slot,tiempo) //Para Establecer el Tiempo que se debe esperar entre segundos para utilizar la funcion correspondiente.
  111. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement