[Ajuda] KillTimer
#1

Alguйm pode me ajudar a retirar esse bug que me irrita, tipo a pessoa vai para o hospital e fica em coma.. na hora de receber alta ela buga.. tipo o meu KillTimer nгo й funcional.. nгo sei pq, entгo desejo ajuda de vocкs para me ajudar a desbugar esse cуdigo, caso esteja bugado, pois ajuda que й bug do SA-MP

Cуdigo:
PHP код:
new animacao_forcada3[MAX_PLAYERS];
if(
MedicTime[i] == 1//Momento que o Timer й iniciado 
{
     
animacao_forcada3[i] = SetTimerEx("AnimacaoEmComa"1500true"i"i);
}
if(
MedicTime[i] >= NeedMedicTime[i]) //Momento que o Timer й desativado(na maioria das vezes nгo й funcional)
{
     
KillTimer(animacao_forcada3[i]);
    
//Pois executa os cуdigos abaixo, e й executado o KillTimer tambйm mais nгo desativa a anim.
}
forward AnimacaoEmComa(playerid);
public 
AnimacaoEmComa(playerid)
{
    
TogglePlayerControllable(playerid0);
    
ApplyAnimation(playerid"CRACK""crckdeth2"4.01001200000);

Comando feito abaixo:
PHP код:
    if (strcmp(cmd"/altadebug"true) == 0)
    {
        if (
IsPlayerConnected(playerid))
        {
            
tmp strtok(cmdtextidx);
            if (!
strlen(tmp))
            {
                
SendClientMessage(playeridCOLOR_WHITE"USE: /altadebug [ID/Nome]");
                return 
true;
            }
            
giveplayerid ReturnUser(tmp);
                if (
IsPlayerConnected(giveplayerid))
                {
                    
TogglePlayerControllable(giveplayerid1);
                    
KillTimer(animacao_forcada3[giveplayerid]);
                    
ClearAnimations(giveplayerid);
                    
SetPlayerSpecialAction(giveplayeridSPECIAL_ACTION_NONE);
                }
                return 
true;
            }
        }
        return 
true;
    } 
Obs: jб fiz um comando para desativar a "TIMER", mais nгo й nem um pouco funcional(Bug no TIMER!).
Reply
#2

mostra mais cуdigo, nгo entendo porque nгo usas o parвmetro playerid
Reply
#3

Quote:
Originally Posted by PT
Посмотреть сообщение
mostra mais cуdigo, nгo entendo porque nгo usas o parвmetro playerid
Й tudo que tenho, o que precisa acho que estб ae(pois no resto sу tem algo que nгo tem nada a ver com o bug acima).. ou precisa mais de algo e outra isso ae й para um sу jogador e nгo para todos por isso o parвmetro playerid.
Reply
#4

Quote:

//Pois executa os cуdigos abaixo, e й executado o KillTimer tambйm mais nгo desativa a anim.

Percebo que seu problema й em relaзгo a parar a animaзгo, e nгo quanto a destruir um timer.

https://sampwiki.blast.hk/wiki/ClearAnimations
Reply
#5

Tentei melhorar pelomenos o comando que desbuga e nгo deu..

PHP код:
 if (strcmp(cmd"/debugalta"true) == 0)
    {
        if (
IsPlayerConnected(playerid))
        {
            
tmp strtok(cmdtextidx);
            if (!
strlen(tmp))
            {
                
SendClientMessage(playeridCOLOR_WHITE"USE: /debugalta [ID/Nome]");
                return 
true;
            }
            
giveplayerid ReturnUser(tmp);
            if (
PlayerInfo[playerid][pAdmin] >= 4)
            {
                if (
IsPlayerConnected(giveplayerid))
                {
                    if (
PlayerInfo[playerid][pAdminStats] != && PlayerInfo[playerid][pAdmin] <= 5)
                    {
                        
SendClientMessage(playeridCOLOR_GRAD1,"ERRO: Vocк nгo estб no modo admin! (/trabalhar)");
                        return 
true;
                    }
                        if (
Hospital[giveplayerid] != 0)
                    {
                        
SendClientMessage(playeridCOLOR_GRAD1,"ERRO: O personagem estб em coma.");
                        return 
true;
                    }
                    
ClearAnimations(giveplayerid);
                    
TogglePlayerControllable(giveplayerid1);
                    
KillTimer(animacao_forcada3[giveplayerid]);
                }
                return 
true;
            }
 
        }
        return 
true;
    } 
Ou seja.. o KillTimer(animacao_forcada3[giveplayerid]); nгo estб sendo executado ou algo do tipo.. isso nгo foi ocorrido por mim.. alguйm?
Reply
#6

Nгo entendi o uso da variбvel i. Pode explicar?
Reply
#7

Код:
KillTimer(animacao_forcada3[giveplayerid]);
ClearAnimations(giveplayerid);
TogglePlayerControllable(giveplayerid, 1);
Tente nessa ordem...
Reply
#8

NeedMedicTime[i] ? Essa var recebe que valor?
Reply
#9

@Feitosa

Entгo, a gm й god fahter e em uma certa parte da gm no comeco й trocado pelo i ou seja.. era para ser playerid e foi i.

@awo
cara eu sei que estб tentando ajudar E agradeзo.. Mais isso nгo vai mudar nada pois o erro nгo estб na animaзгo no. Oque й no playerid para i eu acho ��

@nick
essa vai contar o tempo no hospital.. tambйm nгo muda nada isso.. pois o erro estб no timer ou no i.


Desculpe pelo portuguкs.. no celular agora.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)