[Ajuda] Como colocar duas variaveis em uma linha?
#1

Olб pessoal, estou montando o meu GM e tenho uma dъvida que nгo consigo sanar. Й o seguinte:

Код:
if(strcmp(cmd, "/kitsocio", true) == 0)
	{
        if(IsPlayerConnected(playerid))
	    {
  			if(PlayerInfo[playerid][pKitsocio] == 0 || PlayerInfo[playerid][pSocio] == 0)
			   {
                    SendClientMessage(playerid, COLOR_YELLOW, "Vocк nгo й um sуcio e nгo tem o KitSуcio Permanente. Compre um dos dois!");
					return 1;
Preciso que essa linha de comando perceba que, se o player nгo tiver o "pKitsocio" OU "pSocio" ele mande a mensagem. Como posso fazer isso?

PS: Jб tenho todo o resto pronto, sу preciso que o comando reconheзa essas variбveis.

Obrigado a atenзгo de todos
Reply
#2

Isso?

PHP код:
if(strcmp(cmd"/kitsocio"true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
              if(
PlayerInfo[playerid][pKitsocio] == || PlayerInfo[playerid][pSocio] == 0) return SendClientMessage(playeridCOLOR_YELLOW"Vocк nгo й um sуcio e nгo tem o KitSуcio Permanente. Compre um dos dois!"); 
Nesse cуdigo, se o jogador nгo tiver nenhum dos dois, o comando й finalizado antes de acessar as outras variбves e etc.
Reply
#3

Quote:
Originally Posted by rolex
Посмотреть сообщение
Isso?

PHP код:
if(strcmp(cmd"/kitsocio"true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
              if(
PlayerInfo[playerid][pKitsocio] == || PlayerInfo[playerid][pSocio] == 0) return SendClientMessage(playeridCOLOR_YELLOW"Vocк nгo й um sуcio e nгo tem o KitSуcio Permanente. Compre um dos dois!"); 
Nesse cуdigo, se o jogador nгo tiver nenhum dos dois, o comando й finalizado antes de acessar as outras variбves e etc.
Deu certo! Mas, mesmo o membro tendo sуcio e nгo tendo o kitsуcio permanente ele diz que "Vocк nгo й um sуcio[...]". E й aн que mora o problema, ele nгo da nenhum erro (nгo da com o seu e nem com o meu) mas, ele sу executa uma variбvel, que no caso й a primeira. Podendo ser "pSocio" ou "pKitsocio". Exemplo:

1є Exemplo:
Код:
if(PlayerInfo[playerid][pSocio] == 0 || PlayerInfo[playerid][pKitsocio] == 0)
Se o membro tiver o "KitSуcio permanente" e nгo tiver o "Sуcio" ele diz que nгo tem nenhum dos dois.

2є Exemplo:
Код:
if(PlayerInfo[playerid][pKitsocio] == 0 || PlayerInfo[playerid][pSocio] == 0)
Se o membro tiver o "Sуcio" e nгo tiver o "KitSуcio Permanente" ele diz que nгo tem nenhum dos dois.

Ou seja, ele sу reconhece a primeira variбvel, й como se a segunda nгo estivesse ali.
Reply
#4

Usa ZCMD .................................................. ...............................................

PHP код:
CMD:kitsocio(playerid)
{
  if(
IsPlayerConnected(playerid))  return SendClientMessage(playerid, -1"O jogador nгo esta conectado");
  if(
PlayerInfo[playerid][pKitsocio] == || PlayerInfo[playerid][pSocio] == 0) return SendClientMessage(playeridCOLOR_YELLOW"Vocк nгo й um sуcio e nгo tem o KitSуcio Permanente. Compre um dos dois!");  
   return 
1;

Reply
#5

Pessoal consegui, fique vendo o cуdigo inteiro e percebe que o problema:

Код:
SendClientMessage(playerid,COLOR_GREEN,"Vocк pegou o seu KitSуcio Permanente!");
               		SendClientMessage(playerid,COLOR_LIGHTRED,"Lembre-se: Vocк nгo pode estar em batalha, caso contrбrio levarб carandiru!");
 		       		format(string, sizeof(string), "%s Pegou o seu KitSуcio Permanente", PlayerName(playerid));
			   		ProxDetector(30.0, playerid, string, COLOR_DBLUE,COLOR_DBLUE,COLOR_DBLUE,COLOR_DBLUE,COLOR_DBLUE);
Esse message estava em cima da variбvel, por isso que toda hora que eu dava /kitsocio ele sу reconhecia uma.

Obrigado a ajuda de todos, +reputation!
Reply
#6

Teste por blocos:

PHP код:
if((PlayerInfo[playerid][pSocio] == 0) || (PlayerInfo[playerid][pKitsocio] == 0)) 
E Usa em ZCMD como o Guilherme falou.


@edit:
Nгo tinha visto teu post...

O Que precisar, chama aн!
Reply
#7

Pelo que entendi, Vocк quer que ele tenha um dos 2 para usar o comando. Logo use assim:

Код:
if((PlayerInfo[playerid][pSocio] == 0) && (PlayerInfo[playerid][pKitsocio] == 0)) return SendClient.....
Usando o ||, se ele o PlayerInfo[playerid][pSocio] for igual a 1, ele poderia usar o comando, mas como ta usando o || e o PlayerInfo[playerid][pKitsocio] for igual a 0, ele nгo vai poder usar o comando, portanto do jeito que ta o seu code ali, ele sу poderia usar caso as 2 variaveis fossem iguais a 1.

Com o && ele tem que ter no mнnimo uma das duas vars como 1, no caso se o PlayerInfo[playerid][pSocio] for igual a 1 e o PlayerInfo[playerid][pKitsocio] for igual a 0 ele vai poder usar o comando.

Espero que entenda.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)