23.05.2013, 21:23
a_tiempos
v0.1 - 23/05/2013
v0.1 - 23/05/2013
Descripciуn
- crea restricciones de tiempo en comandos y funciones en general.
Funcionamiento
- guarda los tiempos en variables y mediante funciones internas del include detecta si ese tiempo mencionado ya pasу o no.
- Vйase [servidor\DesingMyCry\tests\a_tiempos.pwn]
Utilizaciуn
- entre los 2 includes principales (vйase el enlace principal) colocar.
pawn Код:
include>a_tiempos;
- Quedando finalmente.
pawn Код:
#include <a_inc>
include>a_tiempos;
//include>a; //Incluir toda la librerнa
#include <a_inc2>
Funciones
- ATiempo;
- asignar un valor ("periodo de tiempo") a alguna variable
pawn Код://Variable
//Segundos
new TCrear:vart;
//Alguna callback
ATiempo(vart, 25); - estariamos dandole 25 segundos a la variable "vart"
- asignar un valor ("periodo de tiempo") a alguna variable
- OTiempo;
- obtener los segundos faltantes de una variable
pawn Код://Variable
new tiempofaltante = OTiempo(vart); - le asignaria a la variable "tiempofaltante" cuantos segundos faltan para que llege a cero (0) el contador de la variable "vart"
- obtener los segundos faltantes de una variable
- ETiempo;
- devuelve "true" o "false" dependiendo si ya pasу el tiempo de la variable o nу
pawn Код://Variable
if(ETiempo(vart) == true) return printf("Si pasу el tiempo");
else return printf("Aъn no pasa el tiempo");
- devuelve "true" o "false" dependiendo si ya pasу el tiempo de la variable o nу
- min_s;
- transforma de minutos a segundos
pawn Код:printf("30 minutos son %d segundos", min_s(30));
- transforma de minutos a segundos
- hrs_s;
- transforma de horas a segundos
pawn Код:printf("6 horas son %d segundos", hrs_s(6));
- transforma de horas a segundos
- dia_s;
- transforma de dias a segundos
pawn Код:printf("14 dias son %d segundos", dia_s(14));
- transforma de dias a segundos
Ejemplo
- suponiendo que queremos hacer que no puedan usar un comando durante 60 segundos (1 minuto), el cуdigo serнa asн.
pawn Код:
#include <a_samp>
#include <a_inc>
include>a_tiempos;
#include <a_inc2>
new TCrear:restriccion_cmd[MAX_PLAYERS];
CMD:tele(playerid, params[])
{
if(ETiempo(restriccion_cmd[playerid])) /*| o tambiйn "ETiempo(destriccion_cmd[playerid]) == true" |*/
{
//Pudo usar el comando
//Le asignamos nuevamente un tiempo de 1 minuto
ATiempo(restriccion_cmd[playerid], min_s(1)); //o "ATiempo(restriccion_cmd[playerid], 60)"
//Le avisamos que usу el comando correctamente
return SendClientMessage(playerid, -1, "Usaste el comando correctamente");
}
else
{
//Aun no pasa el tiempo (el minuto asignado)
//Mensaje de error
return SendClientMessage(playerid, -1, "Aun no pasan los 60 segundos");
}
return 1;
}
- tambien podriamos hacerlo mostrando el tiempo faltante.
pawn Код:
#include <a_samp>
#include <a_inc>
include>a_tiempos;
#include <a_inc2>
new TCrear:restriccion_cmd[MAX_PLAYERS];
CMD:tele(playerid, params[])
{
if(ETiempo(restriccion_cmd[playerid])) /*| o tambiйn "ETiempo(destriccion_cmd[playerid]) == true" |*/
{
//Pudo usar el comando
//Le asignamos nuevamente un tiempo de 1 minuto
ATiempo(restriccion_cmd[playerid], min_s(1)); //o "ATiempo(restriccion_cmd[playerid], 60)"
//Le avisamos que usу el comando correctamente
return SendClientMessage(playerid, -1, "Usaste el comando correctamente");
}
else
{
//Aun no pasa el tiempo (el minuto asignado)
//Mensaje de error
new error[62];
format(error, sizeof error, "Hasta dentro de %d segundos, no puedes usar el comando", OTiempo(restriccion_cmd[playerid]);
return SendClientMessage(playerid, -1, error);
}
return 1;
}
- bastante simple, no?
Descarga
Actualizaciones
- 23-05-2013
- publicaciуn v0.0.1