[Ajuda] Tempo - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (
https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Tempo (
/showthread.php?tid=542881)
Tempo -
Valdemiro - 22.10.2014
Eae galera, beleza?
Estou precisando de uma ajudinha de vocкs fiz um comando pra blindar carro e estou querendo botar tipo um timer para usar esse tal comando que citei o "/blindar" tipo eu usei uma vez, ai eu quero usar novamente em menos de 5 minutos vai aparecer uma mensagem dizendo que so posso usar depois de tal minutos/segundos.
Exemplo: Vocк sу pode usar o comando novamente depois de 4m e 15s
Comando blindar
Код:
if (strcmp(cmdtext, "/blindar", true)==0)
{
RepairVehicle(GetPlayerVehicleID(playerid));
SetVehicleHealth(GetPlayerVehicleID(playerid), 999999999);
SendClientMessage(playerid, COR_PRINCIPAL, "Vc blindou o carro.");
return 1;
}
Desde jб agradeзo, abraзгo!
Re: Tempo -
MultiKill - 22.10.2014
Estude
variбveis, e use a funзгo
SetTimerEx.
O tempo й em milissegundos, entгo 1 segundo й
1000 (mil milissegundos), sabendo que um minutos й 60 segundos, multiplique
1000*60*5:
pawn Код:
SetTimerEx("Nome", 1000*60*5, false, "d", playerid);
O resultado serб
300000 em milissegundos que й 5 minutos. Recomendo usar uma variбvel booleana.
Re: Tempo -
Valdemiro - 22.10.2014
Serб que vocк nгo poderia fazer esse comando assim deste jeito nгo para mim, dai eu faзo os outros pra mim ter ideia de como funciona.
Re: Tempo -
MultiKill - 22.10.2014
Vou fazer um exemplo usando o zcmd:
pawn Код:
new bool: Variavelbooleana[MAX_PLAYERS];
// A variбvel booleana sу usa os valores false e true
// MAX_PLAYERS й mesma coisa que 500 mas pode ser redefinido para qualquer outro valor
// Um exemplo: Variavelbooleana[0] = true;
// 0 й como um endereзo para localizar e armazenar um valor
if(strcmp(cmdtext, "/exemplo6666666", true) == 0)
{
//verificamos se na variбvel estб com o valor armazenado true, e caso estiver envia uma mensagem ao console
if(Variavelbooleana[playerid] == true) return printf("Vocк nгo pode usar o comando.");
//Abaixo usamos o operador = para armazenar um valor no em um endereзo, que й o id do jogador
Variavelbooleana[playerid] = true;
//Abaixo deixa um tempo para chamar uma callback.
SetTimerEx("Nome_da_Callback", tempo, false,"d", playerid);
return 1;
}
forward Nome_da_Callback(id);
public Nome_da_Callback(id)
{
Variavelbooleana[playerid] = false;
return 1;
}
Olhe este tutorial.
Re: Tempo -
ipsLuan - 22.10.2014
Quote:
Originally Posted by MultiKill
Vou fazer um exemplo usando o zcmd:
pawn Код:
new bool: Variavelbooleana[MAX_PLAYERS]; // A variбvel booleana sу usa os valores false e true // MAX_PLAYERS й mesma coisa que 500 mas pode ser redefinido para qualquer outro valor // Um exemplo: Variavelbooleana[0] = true; // 0 й como um endereзo para localizar e armazenar um valor
if(strcmp(cmdtext, "/exemplo6666666", true) == 0) { //verificamos se na variбvel estб com o valor armazenado true, e caso estiver envia uma mensagem ao console if(Variavelbooleana[playerid] == true) return printf("Vocк nгo pode usar o comando."); //Abaixo usamos o operador = para armazenar um valor no em um endereзo, que й o id do jogador Variavelbooleana[playerid] = true; //Abaixo deixa um tempo para chamar uma callback. SetTimerEx("Nome_da_Callback", tempo, false,"d", playerid); return 1; } forward Nome_da_Callback(id); public Nome_da_Callback(id) { Variavelbooleana[playerid] = false; return 1; }
Olhe este tutorial.
|
Strcmp*
Lembrando: O timer й com milisegundo.