[Ajuda] Por que nгo se deve usar o goto ?
#5

Sim mas,se caso eu procure usar o goto em algo,como eu saberia que tudo que digitei depois do cуdigo que fora planejado para a label estaria fora da mesma ?

Й por isso que eu digo que pode ser melhor deixar as labels para o final da callback para garantir pelo menos que,elas serгo fechadas quando vocк fechar a callback.

PHP код:
public OnPlayerText(playeridtext[]) 

        if(!
strcmp(text[0],"How",true) && !strcmp(text[2],"can",true)) goto question_Handler
        else if(!
strcmp(text,"Pilar",true) || !strcmp(text[0],"Pilar",true) && !strcmp(text[1],".",true)) goto conversation_Handler;
        
question_Handler:
        
printf("Pilar: %s made a question to me,can't answer because I'm not able to do that now."GetPlayerExactlyName(playerid));
        
//Code stays on that label     -    O cуdigo abaixo deve continuar nessa label
        
SendClientMessage(playerid, -1"Pilar: That's me,how can I help ya ?");
        
//Another label to close the question label
        
conversation_Handler:
        
printf("Pilar: %s is starting a conversation with me,I'm so nervous.."GetPlayerExactlyName(playerid));
        
SendClientMessage(playerid, -1"Pilar: Yes ?");
        
//The next code can't be a part of the actual label
       //code...

EDIT: Serб que iria ser necessбrio fazer outra label para o resto do cуdigo ?

PHP код:
public OnPlayerText(playeridtext[]) 

        if(!
strcmp(text[0],"How",true) && !strcmp(text[2],"can",true)) goto question_Handler
        else if(!
strcmp(text,"Pilar",true) || !strcmp(text[0],"Pilar",true) && !strcmp(text[1],".",true)) goto conversation_Handler;
        else goto 
continueCode;    // <-----   No,just...no.
        
question_Handler:
        
printf("Pilar: %s made a question to me,can't answer because I'm not able to do that now."GetPlayerExactlyName(playerid));
        
//Code stays on that label     -    O cуdigo abaixo deve continuar nessa label
        
SendClientMessage(playerid, -1"Pilar: That's me,how can I help ya ?");
        
//Another label to close the question label
        
conversation_Handler:
        
printf("Pilar: %s is starting a conversation with me,I'm so nervous.."GetPlayerExactlyName(playerid));
        
SendClientMessage(playerid, -1"Pilar: Yes ?");
        
//The next code can't be a part of the actual label
        
continueCode:
       
//code...

Reply


Messages In This Thread
Por que nгo se deve usar o goto ? - by Detoria - 02.08.2015, 21:58
Re: Por que nгo se deve usar o goto ? - by Dolby - 02.08.2015, 22:14
Re: Por que nгo se deve usar o goto ? - by Detoria - 02.08.2015, 22:27
Re: Por que nгo se deve usar o goto ? - by Dolby - 02.08.2015, 22:48
Re: Por que nгo se deve usar o goto ? - by Detoria - 02.08.2015, 23:10
Re: Por que nгo se deve usar o goto ? - by Dolby - 02.08.2015, 23:19
Re: Por que nгo se deve usar o goto ? - by Detoria - 02.08.2015, 23:32
Re: Por que nгo se deve usar o goto ? - by Dolby - 02.08.2015, 23:45

Forum Jump:


Users browsing this thread: 2 Guest(s)