[Consulta] їComo pongo un temporizador para volver a usar un comando?
#1

Bueno, quisera saber como poner un tiempo una vez que un jugador usa el comando por ejemplo /curarse que tenga que esperar 1 minuto (por ejemplo) para volver a usar el cmd
Reply
#2

https://sampforum.blast.hk/showthread.php?tid=440531
Reply
#3

Quote:
Originally Posted by OTACON
Посмотреть сообщение
Porque mejor no le enseсas como se hace? No hay una minima necesidad para un include, si se podria llamar include a eso. Es un snippet, no un include, bueno ni eso, solo son defines y una variable.

Es tan simple como lo siguiente:
pawn Код:
new tsHola[MAX_PLAYERS];

CMD:hola(playerid, params[])
{
    if((gettime() - tsHola[playerid]) < 60 * 3) return SendClientMessage(playerid, -1, "Tienes que esperar 3 minutos para utilizar este comando de nuevo!");

    tsHola[playerid] = gettime();
    return 1;
}
Reply
#4

No comprendo para que otacon pone ese include en cada duda asн, en primera ese include se limita, segunda es mбs fбcil hacerlo como lo puso SickAtack ..
Reply
#5

Quote:
Originally Posted by SickAttack
Посмотреть сообщение
Porque mejor no le enseсas como se hace? No hay una minima necesidad para un include, si se podria llamar include a eso. Es un snippet, no un include, bueno ni eso, solo son defines y una variable.

Es tan simple como lo siguiente:
pawn Код:
new tsHola[MAX_PLAYERS];

CMD:hola(playerid, params[])
{
    if((gettime() - tsHola[playerid]) < 60 * 3) return SendClientMessage(playerid, -1, "Tienes que esperar 3 minutos para utilizar este comando de nuevo!");

    tsHola[playerid] = gettime();
    return 1;
}
por que sea poco cуdigo eso no significa que no sea un include, ya deberias saber que es un include.
el include es la misma formar que diste con mas opciones.

saludos.

Quote:
Originally Posted by _Zume
Посмотреть сообщение
No comprendo para que otacon pone ese include en cada duda asн, en primera ese include se limita, segunda es mбs fбcil hacerlo como lo puso SickAtack ..
no comprendo para que _Zume dice siempre lo mismo y ni siquiera ha visto el cуdigo, en primer lugar el include tienetres versiones y la recomendada no tiene limitaciones de hecho es la misma forma que dio SickAttack.

saludos.
Reply
#6

Quote:
Originally Posted by OTACON
Посмотреть сообщение
por que sea poco cуdigo eso no significa que no sea un include, ya deberias saber que es un include.
el include es la misma formar que diste con mas opciones.

saludos.



no comprendo para que _Zume dice siempre lo mismo y ni siquiera ha visto el cуdigo, en primer lugar el include tienetres versiones y la recomendada no tiene limitaciones de hecho es la misma forma que dio SickAttack.

saludos.
Mira, mejor olvida lo que dije, no quiero peliar sobre algo que no tiene gran importancia. Si uno quiere usar tu include o no, pues ellos sabran.

Aunque, yo prefiero hacerlo de la forma que puse como ejemplo anteriormente ya que te permite asignar un nombre al variable y luego poder utilizarlo en donde quieras. Se que puedes definir unos macros para hacer todo eso, pero me gusta la forma mas practico.

Bueno, mi punto principal es lo siguiente: Porque mandastes al usuario a tu include directamente sin explicarle nada antes? No seria mejor explicarle como se hace, y tal vez recomendarle tu include posteriormente?
Reply
#7

Quote:
Originally Posted by SickAttack
Посмотреть сообщение
Mira, mejor olvida lo que dije, no quiero peliar sobre algo que no tiene gran importancia. Si uno quiere usar tu include o no, pues ellos sabran.

Aunque, yo prefiero hacerlo de la forma que puse como ejemplo anteriormente ya que te permite asignar un nombre al variable y luego poder utilizarlo en donde quieras. Se que puedes definir unos macros para hacer todo eso, pero me gusta la forma mas practico.

Bueno, mi punto principal es lo siguiente: Porque mandastes al usuario a tu include directamente sin explicarle nada antes? No seria mejor explicarle como se hace, y tal vez recomendarle tu include posteriormente?
no pasa nada.
es por el motivo que ya se ha discutido varias veces, cada uno tiene su formar de explicar y aprender, tambiйn se aprende viendo los cуdigos.

las dos respuestas son validas para ayudar al usuario ya despuйs es motivo de el.

saludos.
Reply
#8

No entendi
Reply
#9

revivo, haber si me explican, perdon, Gracias-.
Reply
#10

Quote:
Originally Posted by OTACON
Посмотреть сообщение
Este include es vergonzoso. En serio has necesitado TRES VERSIONES para usar gettime en vez de SetTimerEx? Y por favor, no me hagas empezar con la nomenclatura de las funciones. GetSegTimetCMD?

Quote:
Originally Posted by SickAttack
Посмотреть сообщение
Es tan simple como lo siguiente:
pawn Код:
new tsHola[MAX_PLAYERS];

CMD:hola(playerid, params[])
{
    if((gettime() - tsHola[playerid]) < 60 * 3) return SendClientMessage(playerid, -1, "Tienes que esperar 3 minutos para utilizar este comando de nuevo!");

    tsHola[playerid] = gettime();
    return 1;
}
Quote:
Originally Posted by ElBuho
Посмотреть сообщение
No entendi
Este es el modo correcto, por favor ElBuho te recomiendo que leas documentaciуn y uses la LУGICA para poder entender los comandos. Si no entiendes ese cуdigo tan primitivo no creo que puedas entender otras cosas mбs complejas.

A ver, gettime() es una funciуn para obtener el tiempo en segundos transcurridos desde el 1 de Enero de 1970 (Tiempo Unix). Puedes usar esta medida para referencia y calcular la diferencia de segundos entre un tiempo y el otro, usando esta diferencia para determinar si ha transcurrido cierto tiempo. Mi explicaciуn:

pawn Код:
if((gettime() - tsHola[playerid]) < 60 * 3) return SendClientMessage(playerid, -1, "Tienes que esperar 3 minutos para utilizar este comando de nuevo!");
/* Simplemente, si el Tiempo Unix en el instante que se introduce el comando menos el Tiempo Unix de la ъltima vez que se introduciу el comando es menor a 3 minutos (o sea, 60 x 3 segundos), saldrб error. */

tsHola[playerid] = gettime();
/* Si se ha introducido el comando se almacena el Tiempo Unix en una variable para compararlo con el Tiempo Unix la prуxima vez que se introduzca el comando. */
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)