[Ajuda] Segundos
#1

Galera queria saber se tem como eu colocar um comando
para ser executado somente de 40 em 40 segundos !
tipo se ele digitar o comando 2 vez,aparece o tanto de segundos que falta pra digitar dnv
Reply
#2

https://sampwiki.blast.hk/wiki/SetTimer
Reply
#3

Teste:

pawn Код:
new TempoFaltando[MAX_PLAYERS];
new Str[256];
new Timer;

CMD:teste(playerid)
{
    if(TempoFaltando[playerid] != 0)
    {
        format(Str, 256, "Ainda faltam %i segundos para vocк poder usar este comando novamente", TempoFaltando[playerid]);
        return SendClientMessage(playerid, -1, Str);
    }
    // FUNЗХES DO COMANDO
    TempoFaltando[playerid] = 40;
    Timer = SetTimerEx("DiminuirTempo", 1000, true, "i", playerid);
    return 1;
}

forward DiminuirTempo(playerid);
public DiminuirTempo(playerid)
{
    TempoFaltando[playerid]--;
    if(TempoFaltando == 0) KillTimer(Timer);
    return 1;
}
Reply
#4

Olha ai o comando
Код:
    if( !strcmp( cmdtext, "/consertar", true ))
	{
		if( pInfo[ playerid ][ Prof ] == MECANICO || aInfo[ playerid ][ Admin ] == 1 || aInfo[ playerid ][ Moderador ] == 1 )
		{
			if( !IsPlayerInAnyVehicle( playerid ))
			{
			    SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo estб em um veнculo !" );
			    return 1;
			}
			SendClientMessage( playerid, COLOR_AMARELO, "[ > ] Veнculo consertado !" );
  			new
			 	v = GetPlayerVehicleID( playerid )
	 		;
           	SetVehicleHealth( v, 1000 );
          	RepairVehicle( v );
            PlayerPlaySound( playerid, 1057, 0.0, 0.0, 10.0 );
		}
		else
		{
			SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo й um(a) Mecвnico(a) !" );
		}
		return 1;
	}
Poderiam colocar o comando nele pra min ?
Reply
#5

Quote:
Originally Posted by leonardoaparecido
Посмотреть сообщение
Olha ai o comando
Код:
    if( !strcmp( cmdtext, "/consertar", true ))
	{
		if( pInfo[ playerid ][ Prof ] == MECANICO || aInfo[ playerid ][ Admin ] == 1 || aInfo[ playerid ][ Moderador ] == 1 )
		{
			if( !IsPlayerInAnyVehicle( playerid ))
			{
			    SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo estб em um veнculo !" );
			    return 1;
			}
			SendClientMessage( playerid, COLOR_AMARELO, "[ > ] Veнculo consertado !" );
  			new
			 	v = GetPlayerVehicleID( playerid )
	 		;
           	SetVehicleHealth( v, 1000 );
          	RepairVehicle( v );
            PlayerPlaySound( playerid, 1057, 0.0, 0.0, 10.0 );
		}
		else
		{
			SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo й um(a) Mecвnico(a) !" );
		}
		return 1;
	}
Poderiam colocar o comando nele pra min ?
Testa:

Код:
new TempoFaltando[MAX_PLAYERS];
new Str[256];
new Timer;

 if (!strcmp(cmdtext, "/consertar", true))
 {
	 if(TempoFaltando[playerid] != 0)
	 {
	    format(Str, 256, "Ainda faltam %i segundos para vocк poder usar este comando novamente", TempoFaltando[playerid]);
	    return SendClientMessage(playerid, -1, Str);
	 }
     if (pInfo[playerid][Prof] == MECANICO || aInfo[playerid][Admin] == 1 || aInfo[playerid][Moderador] == 1)
     {
         if (!IsPlayerInAnyVehicle(playerid))
         {
             SendClientMessage(playerid, COLOR_ERRO, "[ x ] Vocк nгo estб em um veнculo !");
             return 1;
         }
         SendClientMessage(playerid, COLOR_AMARELO, "[ > ] Veнculo consertado !");
         new
         v = GetPlayerVehicleID(playerid);
         SetVehicleHealth(v, 1000);
         RepairVehicle(v);
         PlayerPlaySound(playerid, 1057, 0.0, 0.0, 10.0);
		TempoFaltando[playerid] = 40;
		Timer = SetTimerEx("DiminuirTempo", 1000, true, "i", playerid);
     }
     else
     {
         SendClientMessage(playerid, COLOR_ERRO, "[ x ] Vocк nгo й um(a) Mecвnico(a) !");
     }
     return 1;
 }

forward DiminuirTempo(playerid);
public DiminuirTempo(playerid)
{
	TempoFaltando[playerid]--;
	if(TempoFaltando == 0) KillTimer(Timer);
	return 1;
}
Usa isso caso de erro de Loose Identation: http://www.jotaquery.com.br/ferramentas/identar/
Reply
#6

Deu 1 error nisso aqui !
if(TempoFaltando == 0) KillTimer(Timer);
Reply
#7

if(TempoFaltando[playerid] == 0) KillTimer(Timer);

Malz ae, to com pressa, nem vi '-'
Reply
#8

Testei aqui deu certin vlw
Edit : A Hora que chega nos 0 segundos comeзa a contagem de -1 -2 -3
e nao para !
Reply
#9

tente:
pawn Код:
if(TempoFaltando[playerid] == 0) KillTimer(Timer), KillTimer(DiminuirTempo);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)