SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 05/06/2020, 03:57 AM   #1
ReturnZero
Little Clucker
 
Join Date: May 2020
Posts: 10
Reputation: 0
Default Erros depois de um tempo.

Olá pessoal, meu servidor assim que iniciado, tudo funciona, passado algumas horas, alguns sistemas que funcionavam perfeitamente, dão erros, killtimer, que funcionava antes, para de funcioar, alguém já viu algo parecido? Tenho um timer, na tela de carregamento, depois de umas horas com o servidor ligado, ele para de funcionar...

Cod: expecifico...

No topo
Code:
new TimerLogin[MAX_PLAYERS];
OnplayerRequestClass
Code:
TimerLogin[playerid] = SetTimerEx("mostrarTelaLogin", 50, true, "d", playerid);
Callback mostrarTelaLogin (parte do killtimer, e pucha a tela de login normal.)
Code:
if(CarregandoTelaLogin[playerid] >= 101)
	{
	    KillTimer(TimerLogin[playerid]);
		for( new text; text != 15; text++) TextDrawHideForPlayer(playerid, loadtela[text]);
		ShowLogin(playerid);
		return 1;
  	}
ReturnZero is offline   Reply With Quote
Old 05/06/2020, 03:11 PM   #2
Khivory
Huge Clucker
 
Khivory's Avatar
 
Join Date: Feb 2020
Posts: 280
Reputation: 17
Default Re: Erros depois de um tempo.

Diminua o intervalo dele, não há necessidade de 50ms para isso, com 500ms ou 1000ms está bom, este é um tempo em que mal percebemos passar.

Também deixe o com a repetição desativada, já ouvi falar de alguns casos em que o timer bugava quando estava com ela ligada.
PHP Code:
SetTimerEx("mostrarTelaLogin"1000false"d"playerid); 
PHP Code:
if(CarregandoTelaLogin[playerid] >= 101)
{
    for( new 
texttext != 15text++) TextDrawHideForPlayer(playeridloadtela[text]);    
    
ShowLogin(playerid);
    return 
1;
}
SetTimerEx("mostrarTelaLogin"1000false"d"playerid); 
Fazendo isso você não irá de precisar de um identificador para o timer, o próprio return da condição irá quebrá-lo pois impedira a chamada do mesmo.

Se você precisa matá-lo em outro lugar então pode deixar o identificador.
Khivory is online now   Reply With Quote
Old 05/06/2020, 05:01 PM   #3
caiolelis1
Little Clucker
 
Join Date: Aug 2017
Posts: 6
Reputation: 0
Default Re: Erros depois de um tempo.

Tenho um problema semelhante.
caiolelis1 is offline   Reply With Quote
Old 05/06/2020, 05:04 PM   #4
Khivory
Huge Clucker
 
Khivory's Avatar
 
Join Date: Feb 2020
Posts: 280
Reputation: 17
Default Re: Erros depois de um tempo.

Quote:
Originally Posted by caiolelis1 View Post
Eu preciso que ele repita, para aumentar o valor da variavel CarregandoTelaLogin, fazendo com que ela chegue a 101

Eu preciso que ele se repita eu mudei o intervalo, pra 1000
Ele ira repetir, preste atenção no código.

O timer é chamado novamente dentro da própria callback


* Conta errada né? kkk
Khivory is online now   Reply With Quote
Old 05/06/2020, 05:07 PM   #5
ReturnZero
Little Clucker
 
Join Date: May 2020
Posts: 10
Reputation: 0
Default Re: Erros depois de um tempo.

Quote:
Originally Posted by Khivory View Post
Ele ira repetir, preste atenção no código.

O timer é chamado novamente dentro da própria callback


* Conta errada né? kkk
SIm kk'
ReturnZero is offline   Reply With Quote
Old 05/06/2020, 05:24 PM   #6
ReturnZero
Little Clucker
 
Join Date: May 2020
Posts: 10
Reputation: 0
Default Re: Erros depois de um tempo.

Quote:
Originally Posted by Khivory View Post
Ele ira repetir, preste atenção no código.

O timer é chamado novamente dentro da própria callback

Mais o timer, não está sendo chamado novamente dentro da callback
ReturnZero is offline   Reply With Quote
Old 05/06/2020, 05:35 PM   #7
Khivory
Huge Clucker
 
Khivory's Avatar
 
Join Date: Feb 2020
Posts: 280
Reputation: 17
Default Re: Erros depois de um tempo.

Quote:
Originally Posted by ReturnZero View Post
Mais o timer, não está sendo chamado novamente dentro da callback
Amigo, eu te passei o código com tudo certo.



PHP Code:
SetTimerEx("mostrarTelaLogin"1000false"d"playerid); // Timer é chamado pela primeira vez 
Funções dentro do timer:

PHP Code:
if(CarregandoTelaLogin[playerid] >= 101)
{
    for( new 
texttext != 15text++) TextDrawHideForPlayer(playeridloadtela[text]);    
    
ShowLogin(playerid);
    return 
1;
}
SetTimerEx("mostrarTelaLogin"1000false"d"playerid); // Timer será chamado novamente, criando um "loop" 
Khivory is online now   Reply With Quote
Old 05/06/2020, 05:44 PM   #8
ipsLuan
High-roller
 
ipsLuan's Avatar
 
Join Date: Feb 2013
Location: Ilhéus, BA
Posts: 4,548
Reputation: 332
Default Re: Erros depois de um tempo.

Você está usando o CarregandoTelaLogin[playerid]++?

Faça também uma verificação pra definir um valor máximo.
pawn Code:
if(CarregandoTelaLogin[playerid] > 101) CarregandoTelaLogin[playerid] = 101;
__________________
Precisando de algum sistema? Me contate.
ipsLuan is offline   Reply With Quote
Old 05/06/2020, 07:07 PM   #9
ReturnZero
Little Clucker
 
Join Date: May 2020
Posts: 10
Reputation: 0
Default Re: Erros depois de um tempo.

Quote:
Originally Posted by ipsLuan View Post
Você está usando o CarregandoTelaLogin[playerid]++?

Faça também uma verificação pra definir um valor máximo.
pawn Code:
if(CarregandoTelaLogin[playerid] > 101) CarregandoTelaLogin[playerid] = 101;
Sim, entendi, eu estava moscando, o negócio obvio... Obrigado pessoal.
ReturnZero is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda] Comandos somem depois de um tempo. Griloso Português/Portuguese 4 29/04/2020 08:03 PM
[Off] Muito tempo depois... Meck Português/Portuguese 8 18/11/2019 05:06 PM
[Ajuda] Veículo respawnando depois de um tempo AztecaJr Português/Portuguese 2 05/02/2019 07:40 PM
[Ajuda] Flood SetTimer depois de um tempo pWesley Português/Portuguese 9 25/12/2017 08:15 PM
Não sai da cadeia depois do tempo! Zepetto67 Português/Portuguese 8 18/04/2013 12:47 AM


All times are GMT. The time now is 05:17 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.