Descripciуn
Funcionamiento
Utilizaciуn
include>a_tiempos;
#include <a_inc>
include>a_tiempos;
//include>a; //Incluir toda la librerнa
#include <a_inc2>
Funciones
//Variable
//Segundos
new TCrear:vart;
//Alguna callback
ATiempo(vart, 25);
//Variable
new tiempofaltante = OTiempo(vart);
//Variable
if(ETiempo(vart) == true) return printf("Si pasу el tiempo");
else return printf("Aъn no pasa el tiempo");
printf("30 minutos son %d segundos", min_s(30));
printf("6 horas son %d segundos", hrs_s(6));
printf("14 dias son %d segundos", dia_s(14));
Ejemplo
#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;
}
#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;
}
Descarga
Actualizaciones
#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;
}
#include <a_samp>
#include <a_inc>
include>a_tiempos;
#include <a_inc2>
new restriccion_cmd[MAX_PLAYERS], val=60000;
CMD:tele(playerid, params[])
{
if(restriccion_cmd[playerid] >= val) /*| 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;
}
Tengo una buena idea para este include, no se si te interese te la enviare por skype, esta bueno pero no le veo la diferencia con el uso de gettime()
|
Las librerias son para hacer el trabajo mas fбcil a los programadores, al igual que este include hace.
Incluso, el mismo ocupa la funciуn que citas. Solo que lo hace de una manera mas simple. |
Si la idea es que sea fбcil de usar lo podrias hacer con PVars y macros asн la gente lo usaria mбs.
|
El uso de "PVars" podria ocacionar problemas con los nombres de las variables. Macros? a que te refieres? no es posible devolver valores binarios ni de otro tipo mediante un macro...
|
El uso de "PVars" podria ocacionar problemas con los nombres de las variables. Macros? a que te refieres? no es posible devolver valores binarios ni de otro tipo mediante un macro...
|
#define Restringido(%1,%2) GetTickCount()<GetPVarInt(%1,%2)
#define Restringir(%1,%2,%3) SetPVarInt(%1,%2,%3+GetTickCount())
//Ejemplo
if(!strcmp("/curarme",cmdtext,true)) {
if(Restringido(playerid,"SALUD")) {
SendClientMessage(playerid,-1,"Por favor espera el tiempo requerido para usar nuevamente este comando");
return 1;
}
SetPlayerHealth(playerid,100.00);
SendClientMessage(playerid,-1,"Te has curado, podrбs usar el comando nuevamente dentro de 1 minuto");
Restringir(playerid,"SALUD",60000);
return 1;
}