Comando bugado
#1

Meu comando de soltar refйm estб bugado, quando eu uso o comando /sequestrar ele cala o player, amarra e sequestra, porйm quando eu vou usar o comando soltar refйm o player fica amarrado.

PHP Code:
if(strcmp(cmd"/soltarrefem"true) == 0)
{
        new 
plid;
        new 
tmp[256];
        new 
string[256];
        
tmp strtok(cmdtextidx);
        if(!
strlen(tmp)) return SendClientMessage(playeridCOR_MARA7,"USE: /soltarrefem [id do jogador]");
        
plid strval(tmp);
        if(!
IsPlayerConnected(plid)) return SendClientMessage(playeridErro"| ERRO | Jogador(a) nгo conectado");
        if(
Sequestrado[plid] == 0)
        {
            
SendClientMessage(playeridErro" Esse jogador nгo estб sequestrado ");
            return 
1;
        }
        if(
GetDistanceBetweenPlayers(playerid,plid) >= 11)
        {
            
SendClientMessage(playeridCORX1,"| ERRO | Vocк estб muito longe do refйm, chegue mais perto!");
            return 
1;
        }
        
format(stringsizeof(string), "Vocк soltou o refem %s"PlayerName(plid));
        
SendClientMessage(playeridREDstring);
        
format(stringsizeof(string), "O vagabundo %s lhe soltou",PlayerName(playerid));
        
SendClientMessage(plidCOLOR_YELLOWstring);
        
Sequestrado[plid] = 0;
        
Amarrar[plid] = 0;
        
Calar[plid] = 0;
        return 
1;
    } 
pawn Code:
new Sequestrado[MAX_PLAYERS];
new Amarrar[MAX_PLAYERS];
new Calar[MAX_PLAYERS];
Reply
#2

Mostra os 2 comandos
Reply
#3

Quote:
Originally Posted by DelK
View Post
Mostra os 2 comandos
PHP Code:
if(strcmp(cmd"/sequestrar"true) == 0)
    {
        new 
preco;
        new 
string[256];
        new 
tmp[256];
        new 
plid;
        
plid ChecarUsuario(tmp);
        
tmp strtok(cmdtextidx);
        if(!
strlen(tmp)) return SendClientMessage(playeridCOR_MARA7,"USE: /sequestrar [id player]");
        
plid strval(tmp);
        
tmp strtok(cmdtextidx);
        if(!
strlen(tmp)) return SendClientMessage(playeridCOR_MARA7,"USE: /sequestrar [id player] [preco]");
        
preco strval(tmp);
        if(!
IsPlayerConnected(plid)) return SendClientMessage(playeridErro"| ERRO | Jogador(a) nгo conectado");
        if(
IsPlayerNPC(plid)) return SendClientMessage(playeridErro"| ERRO | Vocк nгo pode sequestrar um BOT!");
        if(
playerid == plid)
        {
                
SendClientMessage(playerid,CORX1"| ERRO | Vocк nгo pode sequestrar vocк mesmo!");
                return 
1;
        }
        if(
Sequestrado[plid] == 1)
        {
            
SendClientMessage(playeridErro" Esse jogador ja estб sendo sequestrado ");
            return 
1;
        }
        if(
preco 1||preco 100000)
        {
            
SendClientMessage(playeridErro" O preзo do resgate deve estar entre R$1 e R$ 100000!. ");
            return 
1;
        }
        if(
GetPlayerState(playerid) != || !IsPlayerInVehicle(plidGetPlayerVehicleID(playerid)))
        return 
SendClientMessage(playeridAzul" Vocк nгo й o motorista ou o jogador nгo estб no seu carro ");
        {
        
format(stringsizeof(string), "Vocк estб sequestrando o %s e estб pedindo R$ %d pelo resgate!",PlayerName(plid), preco);
        
SendClientMessage(playeridvermelhoxstring);
        
format(stringsizeof(string), "O jogador %s te sequestrou"PlayerName(playerid));
        
SendClientMessage(plidCOLOR_YELLOWstring);
        
TogglePlayerControllable(plid0);
        
SetPlayerWantedLevel(playerid3);
        
SendClientMessage(playeridRED"Agora vocк estб com 3 niveis de procura por sequestrar");
        
Sequestrado[plid] = 1;
        
Amarrar[plid] = 1;
        
Calar[plid] = 1;
        
PlayerSequestro[plid] = 1;
        }
        for(new 
0MAX_PLAYERS++)
        {
        if(
Profissao[Z] == Policia_Civil || Profissao[Z] == Anarcoticos || Profissao[Z] == 11 || Profissao[Z] == 12 || Profissao[Z] == 13 || Profissao[Z] == 14 || Profissao[Z] == 33 || Profissao[Z] == 34 || Profissao[Z] == 35 || Profissao[Z] == 40 || Profissao[Z] == 41 || Profissao[Z] == 47 || Profissao[Z] == Forca_aerea || (IsPlayerAdmin(Z)))
        {
        new 
X[128];
        
format(Xsizeof(X), "| DENЪNCIA | Sequestrador:{FFFFFF} O Sequestrador %s(%d) estб sequestrando, pegue-o imediatamente!"PlayerName(playerid), playerid);
        
SendClientMessage(ZCOR_PRINCIPALX);
                    }
                }
        return 
1;
    } 
Reply
#4

https://sampwiki.blast.hk/wiki/GetPlayerSpecialAction
https://sampwiki.blast.hk/wiki/SetPlayerSpecialAction
https://sampwiki.blast.hk/wiki/SpecialActions

Edit:
Aparentemente o jogador estб apenas "congelado"
https://sampwiki.blast.hk/wiki/TogglePlayerControllable
Reply
#5

Й isso, vocк congelou (TogglePlayerControllable) ele no sequestrar e esqueceu de descongelar ele no no soltar.
Reply
#6

Era este problema mesmo, consegui resolver. Obrigado
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)