SA-MP Forums Archive
[Pedido] Ajuda tempo /roubar - 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: [Pedido] Ajuda tempo /roubar (/showthread.php?tid=482892)



Ajuda tempo /roubar - gmstrikker - 23.12.2013

Eu to conseguindo fazer meu /roubar, mas tem um problema...

As pessoas vгo ficar roubando o tempo todo, e seria bom pra GZ tbm, pq o cara fica dando /roubar toda hora e tal

Como eu faria?

if (strcmp("/roubar", cmdtext, true, 10) == 0)
{

if(roubar [org] == 1) return SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб na ammunation clandestina");

GivePlayerMoney(playerid,-2000);
SETAR TEMPO PRA ORG DE 2 HORAS PRA PODER USAR O CMD DE NOVO
return 1;
}

Pra cada org ter um tempo algeum ajuda ai!


Re: Ajuda tempo /roubar - Ley - 23.12.2013

Primeiro crie uma booleana no topo de seu Game Mode:

PHP код:
new bool:Roubo[MAX_PLAYERS]; // Essa booleana irб dar efeito em todos os jogadores. 
Crie uma SetTimerEx, para comeзar uma contagem а um jogador:
Adicione a linha abaixo no seu comando de roubo.
PHP код:
SetTimerEx("LiberarRoubo"600000false"i"playerid); // Isso irб fazer com que bloqueie por 1 hora.
Roubo[playerid] = true
Depois crie a callback para poder ser executada depois que o SetTimerEx chegar em seu tйrmino:

PHP код:
forward LiberarRoubo(playerid);
public 
LiberarRoubo(playerid)
{
     
// Aqui serб o local onde irб ocorrer a desbloqueamento, vamos colocar a booleana а false.
     
Roubo[playerid] = false;
     
SendClientMessage(playerid, -1,"Vocк foi liberado para roubar.");
     return 
1;

Volte а seu comando de roubo, e adicione a seguinte linha, uma condiзгo:

PHP код:
if(Roubo[playerid] == true) return SendClientMessage(playerid, -1,"Vocк jб roubou o local, aguarde uma hora."); 
Somente uma base, creio que irб ajuda-lo.
Boa sorte.


Re: Ajuda tempo /roubar - gmstrikker - 23.12.2013

Criar a variavel pra player eu sei, toda vez vcs respondem isso...
no seu exemplo um player vai dar o comando e sу dps de 2 hrs ele vai poder mandar de novo, mas eu nгo queria de player pra player e sim de ORG
Tipo se eu der o /roubar sу daqui a 2 hrs qlqr membro da minha org vai poder usar esse cmd de novo


Re: Ajuda tempo /roubar - JonathanFeitosa - 23.12.2013

Bote a variavel Global.

pawn Код:
new bool:Roubo[MAX_PLAYERS];
// para
new bool:Roubo;

// Exemplo de uso Uso ao roubar:
Roubo = true;  

// Exemplo para Bloquear se jб foi roubado
if(Roubo == true) return SendClientMessage(playerid, -1,"Esse Local jб foi roubado Cara.");

// Para Voltar ao Normal
Roubo = false;  
...
Especifique melhor e eu irei ajudar. Nesse jeito que fiz, quando um rouba, serve para todos os PLAYERS.


Re: Ajuda tempo /roubar - gmstrikker - 24.12.2013

Quote:
Originally Posted by JonathanFeitosa
Посмотреть сообщение
Bote a variavel Global.

pawn Код:
new bool:Roubo[MAX_PLAYERS];
// para
new bool:Roubo;

// Exemplo de uso Uso ao roubar:
Roubo = true;  

// Exemplo para Bloquear se jб foi roubado
if(Roubo == true) return SendClientMessage(playerid, -1,"Esse Local jб foi roubado Cara.");

// Para Voltar ao Normal
Roubo = false;  
...
Especifique melhor e eu irei ajudar. Nesse jeito que fiz, quando um rouba, serve para todos os PLAYERS.
Eu fiz com variavel global p/ da um tempinho pros caras esperarem os caixas voltarem a funciona, mas eu queria um jeito tipo, a org 1 deu /roubar, a org 2 pode da o /roubar, mas o timer sу vale pra org 1, saca?

Tipo desse jeito q vc passou todo mundo n pode roubar em 1 hr, eu queria q a org 1 (no caso a que usou) sу pude-se usar daqui a 1 hr (a org 1, qlqr player q seja da org 1), mas qlqr um da org 2,3,4 possa usar o comando, ai qnd eles usarem o timer fique sу pra org