SA-MP Forums

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

Reply
 
Thread Tools Display Modes
Old 06/01/2015, 10:48 PM   #1
Skun Fly
Big Clucker
 
Skun Fly's Avatar
 
Join Date: Jan 2012
Location: Marte
Posts: 162
Reputation: 4
Question Problema com comando

Boa a noite a todos!
Bem é o seguinte, eu criei um comando que depois de uma Team explodir com um portão a equipa inimiga possa coloca-lo de novo caso não esteja ninguem inimigo por perto, até ai tudo bem, o problema é que quando executo o comando no servidor recebo sempre a mensagem de comando inválido quando estou dentro das coordenadas e quando estou fora não aparece nada... Se me poderem ajudar agradeço!!

Comando:
pawn Code:
CMD:fportao(playerid, params[])
{
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 214.0234,1875.9612,13.1406))
    {
        if(Portao1Exploded && !Portao2Exploded)
        {
            if(IsEnemyOnRange())
            {
                SendClientMessage(playerid, COLOR_ERROR, "ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");
            }
            else
            {
                SendClientMessageToAll(COLOR_TDM, "[TDM] - {FFFFFF}O primeiro portão foi fechado pelos militares!");
                Portao1Exploded = false;
                Portao1 = CreateObject(8210,208.2000000,1875.2000000,13.2000000,0.0000000,180.0000000,180.0000000); //object(vgsselecfence12) (1)
            }
            //else{SendClientMessage(playerid, COLOR_ERROR, "ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");}
        }
        else
        {
            if(Portao2Exploded) { SendClientMessage(playerid, COLOR_ERROR, "[ERRO] - {FFFFFF}Primeiro precisas de fechar o segundo portão."); }
        }
    }
}
Função IsEnemyOnRange:
pawn Code:
public IsEnemyOnRange()
{
    new bool:Is=false;
    for(new i=0; i<=MAX_PLAYERS; i++)
    {
        if(Team[i]==TERRORISTS)
        {
            if(IsPlayerInRangeOfPoint(i, 10.0, 214.0234,1875.9612,13.1406))
            {  
                Is=true;
            }
        }
    }
    return Is;
}

Obrigado!!
__________________
Se você encontrar um caminho sem obstáculos, ele provavelmente não leva a lugar nenhum..
Skype:
mocadaspereira

Estou de volta!
Skun Fly is offline   Reply With Quote
Old 06/01/2015, 10:56 PM   #2
[BOPE]Seu._.Madruga
High-roller
 
[BOPE]Seu._.Madruga's Avatar
 
Join Date: Nov 2011
Location: São Paulo - SP
Posts: 1,079
Reputation: 79
Thumbs up Re: Problema com comando

Tente assim:
PHP Code:
CMD:fportao(playerid)
{
    if(
IsPlayerInRangeOfPoint(playerid5.0214.0234,1875.9612,13.1406))
    {
        if(
Portao1Exploded && !Portao2Exploded)
        {
            if(
IsEnemyOnRange()) return SendClientMessage(playeridCOLOR_ERROR"ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");
            
SendClientMessageToAll(COLOR_TDM"[TDM] - {FFFFFF}O primeiro portão foi fechado pelos militares!");
            
Portao1Exploded false;
            
Portao1 CreateObject(8210,208.2000000,1875.2000000,13.2000000,0.0000000,180.0000000,180.0000000); //object(vgsselecfence12) (1)
            
return 1;
        }
        else
        {
            if(
Portao2Exploded) return SendClientMessage(playeridCOLOR_ERROR"[ERRO] - {FFFFFF}Primeiro precisas de fechar o segundo portão.");
        }
    }
    return 
1;

__________________

_\|/_ Ei vey é Nozes _\|/_

Nick: LeozinIMPERATUS

Patente: Coronel 3

Página Oficial: Leonardo " lbs " Bradoks » www.facebo ok.com/leobradoks
Página de Programação: Programação em Foco » www.facebo ok.com/groups/ProgramacaoEmFoco
Atualmente focado ao competitivo de Point Blank
Email | Site Pessoal | Skype | Discord
O topo da inteligência é alcançar a humildade
[BOPE]Seu._.Madruga is offline   Reply With Quote
Old 07/01/2015, 01:51 PM   #3
Skun Fly
Big Clucker
 
Skun Fly's Avatar
 
Join Date: Jan 2012
Location: Marte
Posts: 162
Reputation: 4
Default Re: Problema com comando

Quote:
Originally Posted by [BOPE]Seu._.Madruga View Post
Tente assim:
PHP Code:
CMD:fportao(playerid)
{
    if(
IsPlayerInRangeOfPoint(playerid5.0214.0234,1875.9612,13.1406))
    {
        if(
Portao1Exploded && !Portao2Exploded)
        {
            if(
IsEnemyOnRange()) return SendClientMessage(playeridCOLOR_ERROR"ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");
            
SendClientMessageToAll(COLOR_TDM"[TDM] - {FFFFFF}O primeiro portão foi fechado pelos militares!");
            
Portao1Exploded false;
            
Portao1 CreateObject(8210,208.2000000,1875.2000000,13.2000000,0.0000000,180.0000000,180.0000000); //object(vgsselecfence12) (1)
            
return 1;
        }
        else
        {
            if(
Portao2Exploded) return SendClientMessage(playeridCOLOR_ERROR"[ERRO] - {FFFFFF}Primeiro precisas de fechar o segundo portão.");
        }
    }
    return 
1;

Está igual..

@EDIT acho que o problema está na função IsEnemyOnRange, pois quando tiro a função funciona bem
__________________
Se você encontrar um caminho sem obstáculos, ele provavelmente não leva a lugar nenhum..
Skype:
mocadaspereira

Estou de volta!
Skun Fly is offline   Reply With Quote
Old 07/01/2015, 02:04 PM   #4
s4kuL
High-roller
 
s4kuL's Avatar
 
Join Date: Apr 2012
Posts: 1,114
Reputation: 158
Default Re: Problema com comando

Você declarou a forward?

Tente usar assim:

pawn Code:
stock IsEnemyOnRange(playerid)
{
    new bool:Is = false;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(Team[i] == TERRORISTS)
        {
            if(IsPlayerInRangeOfPoint(i, 10.0, 214.0234,1875.9612,13.1406))
            {
                Is = true;
            }
        }
    }
    return Is;
}
s4kuL is offline   Reply With Quote
Old 07/01/2015, 02:58 PM   #5
lucas_mdr1235
Gangsta
 
lucas_mdr1235's Avatar
 
Join Date: Jan 2010
Location: Ipatinga - MG
Posts: 746
Reputation: 34
Default Re: Problema com comando

PHP Code:
CMD:fportao(playeridparams[])
{
    if(
IsPlayerInRangeOfPoint(playerid5.0214.0234,1875.9612,13.1406))
    {
        if(
Portao1Exploded && !Portao2Exploded)
        {
            if(!
IsEnemyOnRange(playerid))
            {
                
SendClientMessage(playeridCOLOR_ERROR"ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");
            }
            else
            {
                
SendClientMessageToAll(COLOR_TDM"[TDM] - {FFFFFF}O primeiro portão foi fechado pelos militares!");
                
Portao1Exploded false;
                
Portao1 CreateObject(8210,208.2000000,1875.2000000,13.2000000,0.0000000,180.0000000,180.0000000); //object(vgsselecfence12) (1)
            
}
        }
        else
        {
            if(
Portao2Exploded) { SendClientMessage(playeridCOLOR_ERROR"[ERRO] - {FFFFFF}Primeiro precisas de fechar o segundo portão."); }
        }
    }
    else
    {
        
SendClientMessage(playeridCOLOR_ERROR"ERRO: {FFFFFF}Você não está perto do portão !");
    }

__________________
O impossível e aquilo que ninguém consegue fazer. Até que você faça ! ! !
PlAy ViRtUaL ReAlItY
Minha mãe me disse certa vez que ninguém me amava mais do que DEUS. Eu perguntei a ela se ela enviaria alguém atrás de mim para me ferir, torturar e causar dor eterna se algum dia eu a renegasse. Ela olhou para mim chocada e respondeu:
-Claro que não! Eu disse a ela, bom, já temos uma pessoas que me ama mais do que DEUS.
By: Neal Jordan
Se, numa discussão, um dos muitos que gostariam de saber de tudo, mas se recusam a aprender qualquer coisa, nos pergunta a respeito da continuação da vida após a morte, a resposta mais adequada e mais correta e:"Após a morte você será o que era antes de nascer."
By: Arthur Schopenhauer
lucas_mdr1235 is offline   Reply With Quote
Old 07/01/2015, 05:09 PM   #6
Skun Fly
Big Clucker
 
Skun Fly's Avatar
 
Join Date: Jan 2012
Location: Marte
Posts: 162
Reputation: 4
Default Re: Problema com comando

Quote:
Originally Posted by s4kuL View Post
Você declarou a forward?

Tente usar assim:

pawn Code:
stock IsEnemyOnRange(playerid)
{
    new bool:Is = false;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(Team[i] == TERRORISTS)
        {
            if(IsPlayerInRangeOfPoint(i, 10.0, 214.0234,1875.9612,13.1406))
            {
                Is = true;
            }
        }
    }
    return Is;
}
Sim está declarada e não funcionou assim
__________________
Se você encontrar um caminho sem obstáculos, ele provavelmente não leva a lugar nenhum..
Skype:
mocadaspereira

Estou de volta!
Skun Fly is offline   Reply With Quote
Old 07/01/2015, 05:13 PM   #7
Skun Fly
Big Clucker
 
Skun Fly's Avatar
 
Join Date: Jan 2012
Location: Marte
Posts: 162
Reputation: 4
Default Re: Problema com comando

Quote:
Originally Posted by lucas_mdr1235 View Post
PHP Code:
CMD:fportao(playeridparams[])
{
    if(
IsPlayerInRangeOfPoint(playerid5.0214.0234,1875.9612,13.1406))
    {
        if(
Portao1Exploded && !Portao2Exploded)
        {
            if(!
IsEnemyOnRange(playerid))
            {
                
SendClientMessage(playeridCOLOR_ERROR"ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");
            }
            else
            {
                
SendClientMessageToAll(COLOR_TDM"[TDM] - {FFFFFF}O primeiro portão foi fechado pelos militares!");
                
Portao1Exploded false;
                
Portao1 CreateObject(8210,208.2000000,1875.2000000,13.2000000,0.0000000,180.0000000,180.0000000); //object(vgsselecfence12) (1)
            
}
        }
        else
        {
            if(
Portao2Exploded) { SendClientMessage(playeridCOLOR_ERROR"[ERRO] - {FFFFFF}Primeiro precisas de fechar o segundo portão."); }
        }
    }
    else
    {
        
SendClientMessage(playeridCOLOR_ERROR"ERRO: {FFFFFF}Você não está perto do portão !");
    }

Também não funcionou ....
__________________
Se você encontrar um caminho sem obstáculos, ele provavelmente não leva a lugar nenhum..
Skype:
mocadaspereira

Estou de volta!
Skun Fly is offline   Reply With Quote
Old 08/01/2015, 03:20 PM   #8
Skun Fly
Big Clucker
 
Skun Fly's Avatar
 
Join Date: Jan 2012
Location: Marte
Posts: 162
Reputation: 4
Default Re: Problema com comando

Ajuda?
__________________
Se você encontrar um caminho sem obstáculos, ele provavelmente não leva a lugar nenhum..
Skype:
mocadaspereira

Estou de volta!
Skun Fly is offline   Reply With Quote
Old 08/01/2015, 10:26 PM   #9
Loleco
Little Clucker
 
Join Date: Mar 2014
Posts: 15
Reputation: 1
Default Re: Problema com comando

Esse portão exploded não tem nenhum valor? e outra coloque um return true no final do comando, antes da ultima chave

pawn Code:
}
      return true;
}
Se não der teste assim
pawn Code:
CMD:fportao(playerid, params[])
{
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 214.0234,1875.9612,13.1406))
    {
        if(Portao1Exploded && !Portao2Exploded)
        {
            /*if(!IsEnemyOnRange(playerid))
            {
                SendClientMessage(playerid, COLOR_ERROR, "ERRO: {FFFFFF}Não podes reparar o portão enquanto um inimigo estiver por perto!");
                return true;
            } */

            //else
            if(IsPlayerConnected(playerid))
            {
                SendClientMessageToAll(COLOR_TDM, "[TDM] - {FFFFFF}O primeiro portão foi fechado pelos militares!");
                Portao1Exploded = false;
                Portao1 = CreateObject(8210,208.2000000,1875.2000000,13.2000000,0.0000000,180.0000000,180.0000000); //object(vgsselecfence12) (1)
            }
        }
        else
        {
            if(Portao2Exploded) { SendClientMessage(playerid, COLOR_ERROR, "[ERRO] - {FFFFFF}Primeiro precisas de fechar o segundo portão."); return true;}
        }
    }
    else
    {
        SendClientMessage(playerid, COLOR_ERROR, "ERRO: {FFFFFF}Você não está perto do portão !");
        return true;
    }
    return true;
}
se não der assim o problema será na public IsEnemyOnRange, se não der poderá ser a variável PortaoExploded
Loleco is offline   Reply With Quote
Old 09/01/2015, 01:53 PM   #10
Skun Fly
Big Clucker
 
Skun Fly's Avatar
 
Join Date: Jan 2012
Location: Marte
Posts: 162
Reputation: 4
Default Re: Problema com comando

Ok, quando tiver disponibilidade testarei, obrigado.
Mas só 2 coisas: return 1 é igual a return true e a variável portaoExploded não tem nada de mal pois, eu a uso em outros comandos e funçoes e está tudo certa, inclusive até já tinha criado um comando para debug e está tudo ok. Mas mais uma vez obrigado mais tarde postarei resultados.
__________________
Se você encontrar um caminho sem obstáculos, ele provavelmente não leva a lugar nenhum..
Skype:
mocadaspereira

Estou de volta!
Skun Fly 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] Problema com o comando? bombomloko Português/Portuguese 6 23/11/2013 10:06 AM
[Ajuda] Problema com comando /ir Standby Português/Portuguese 4 25/06/2013 01:19 AM
[Ajuda] Problema com comando :S Sonik_Paintballer Português/Portuguese 2 12/10/2012 05:46 AM


All times are GMT. The time now is 07:47 AM.


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