SA-MP Forums Archive
[Ajuda] Estou com um Erro, algumas dicas? - 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: [Ajuda] Estou com um Erro, algumas dicas? (/showthread.php?tid=466804)



Estou com um Erro, algumas dicas? - lokos45 - 29.09.2013

Olб pessoal, na callback OnDialogResponse, eu tentei mudar o TogglePlayerControllable para quando a pessoa fechar uma dialog congelada por um administrador, ela continuar congelada, eu botei esse code aqui:

No lugar desse:

Код:
TogglePlayerControllable(playerid, 1):
Botei esse code:

Код:
if(PlayerInfo[playerid][pCongelado] == 1) 
{
TogglePlayerControllable(playerid, 0); 
} 
else 
{ 
TogglePlayerControllable(playerid, 1); 
}
pCongelado й a variбvel que quando um player й congelado por um administrador, passa a ser 1, quando й descongelado, passa a ser 0.

O problema й que apуs botar isso, quando eu vou compilar fica o maior tempгo compilando, e nгo compila, eu nгo sei se й erro ou se deixou a callback muito pesada para compilar ou algo assim, alguйm me da uma ajuda do que eu posso fazer?


Re: Estou com um Erro, algumas dicas? - bruxo00 - 29.09.2013

Coloque a funзгo inteira. O mais provбvel й nгo ter chavetas.


Re: Estou com um Erro, algumas dicas? - lokos45 - 29.09.2013

Quote:
Originally Posted by bruxo00
Посмотреть сообщение
Coloque a funзгo inteira. O mais provбvel й nгo ter chavetas.
Mas estб certo mano, tipo, se eu colocar o code que eu botei no lugar de 1 Controle(playerid, 1); , compila direitinho, mas se eu substituir em todos da callback OnDialogResponse, fica compilando o maior tempгo e nгo termina...


Re: Estou com um Erro, algumas dicas? - Maklister - 29.09.2013

Tente usar assim:

pawn Код:
stock Congelado( playerid, on = 0 )
{
    switch( on )
    {
        case 0: TogglePlayerControllable( playerid, false );
        case 1: TogglePlayerControllable( playerid, true );
    }
}



Re: Estou com um Erro, algumas dicas? - lokos45 - 29.09.2013

Quote:
Originally Posted by Maklister
Посмотреть сообщение
Tente usar assim:

pawn Код:
stock Congelado( playerid, on = 0 )
{
    switch( on )
    {
        case 0: TogglePlayerControllable( playerid, false );
        case 1: TogglePlayerControllable( playerid, true );
    }
}
Nгo funcionou...


Re: Estou com um Erro, algumas dicas? - Maklister - 29.09.2013

Quote:
Originally Posted by lokos45
Посмотреть сообщение
Nгo funcionou...
Como vocк usou ? й so colocar

pawn Код:
Congelado( playerid, 1);



Re: Estou com um Erro, algumas dicas? - lokos45 - 29.09.2013

Quote:
Originally Posted by Maklister
Посмотреть сообщение
Como vocк usou ? й so colocar

pawn Код:
Congelado( playerid, 1);
Eu usei isso no comando de congelar, atй ai tudo bem, mas eu quero saber como eu abro uma exceзгo para quando um player estiver congelado por um admin, ai quando ele for fechar uma dialog para se descongelar, nгo ser descongelado, entendeu?


Re: Estou com um Erro, algumas dicas? - PT - 29.09.2013

Talvez uma variavel global resolva isso....


Re: Estou com um Erro, algumas dicas? - Wellington1999 - 29.09.2013

Topo do GM
pawn Код:
new AdmCongelou[MAX_PLAYERS];
No Comando /congelar
pawn Код:
AdmCongelou[giveplayerid] = 1;
comando de abrir o dialog

pawn Код:
if(AdmCongelou[playerid] == 1)
{
     SendClientMessage( playerid,-1,"Vocк foi congelado por adm,espere ele o descongelar");
}
Flw


Re: Estou com um Erro, algumas dicas? - PT - 29.09.2013

n e bem isso

pawn Код:
new congelado[MAX_PLAYERS] = 0;

// comando

cmd:congelarme(playerid)
{
    TogglePlayerControllable( playerid, false );
    congelado[playerid] = 1;
    return 1;
}

cmd:descongelarme(playerid)
{
    TogglePlayerControllable( playerid, true );
    congelado[playerid] = 0;
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(congelado[playerid] == 1)
    {
        TogglePlayerControllable( playerid, false );
    }
    return 1;
}