Portal SAMP
[Ajuda] Problema em Codigo - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Problema em Codigo (/showthread.php?tid=333)



Problema em Codigo - Daniel_Pinx - 15/11/2020

//as forwards 

forward TimerPedreiroCimento(playerid);
public TimerPedreiroCimento(playerid)
{
TogglePlayerControllable(playerid, 1);
acaboudejogar[playerid] = 1;
}


forward TimerPedreiroTijolo(playerid);
public TimerPedreiroTijolo(playerid)
{
TogglePlayerControllable(playerid, 1);
jogoucimento[playerid] = 0;

}



//no comando de jogar cimento 

if(jogoucimento[playerid] == 0)
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Jogando Cimento...", 1000, 2);
SetTimerEx("TimerPedreiro", 1000, 0, "i", playerid);
}


//no comando de colocar tijolo

if(jogoucimento[playerid] == 1)
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Colocando Tijolo...", 1000, 2);
SetTimerEx("TimerPedreiroTijolo", 1000, false, "i", playerid);
}



Está acontecendo o seguinte, quando eu digito o comando /jogarcimento, fica congelado para sempre o timer nao acaba, e o jogoucimento nao fica em 1, continuar em 0.

Alguem ai consegue me ajudar???


Fica assim :


RE: Problema em Codigo - MarcosBrazz - 15/11/2020

Tente:

//as forwards


Código:
forward TimerPedreiroCimento(playerid);
public TimerPedreiroCimento(playerid)
{
TogglePlayerControllable(playerid, 1);
jogoucimento[playerid] = 1;
KillTimer(TimerPedreiroCimento);
}



forward TimerPedreiroTijolo(playerid);
public TimerPedreiroTijolo(playerid)
{
TogglePlayerControllable(playerid, 1);
jogoucimento[playerid] = 0;
KillTimer(TimerPedreiroTijolo);

}






//no comando de jogar cimento


Código:
if(jogoucimento[playerid] == 0)
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Jogando Cimento...", 1000, 2);
SetTimerEx("TimerPedreiroCimento", 1000, 0, "i", playerid);

}



//no comando de colocar tijolo


Código:
if(jogoucimento[playerid] == 1)
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Colocando Tijolo...", 1000, 2);
SetTimerEx("TimerPedreiroTijolo", 1000, false, "i", playerid);
}