[Ajuda] Enviando mensagem de erro mesmo estando certo.
#1

Olб.

O comando a baixo, deveria enviar uma mensagem de erro informando o jogador que nгo estб em uma casa, caso nгo esteje.. Porйm, ele envia a mensagem mesmo se o jogador estiver em uma casa.

Comando:

pawn Код:
CMD:vcasa(playerid, params[])
{
    for(new c = 0; c < MAX_CASAS; c++)
    {
        format(strc, sizeof(strc), "/Casas/Casa_%d.ini", c);
        if(IsPlayerInRangeOfPoint(playerid, 3.0, dini_Float(strc, "PosX"), dini_Float(strc, "PosY"), dini_Float(strc, "PosZ")))
        {
            if(strcmp(dini_Get(strc, "Dono"), pNick(playerid), true) == 0)
            {
                ShowPlayerDialog(playerid, D_VeiculoC, DIALOG_STYLE_LIST, "{DDA0DD}Veнculo Casa", "A a B\nC a D\nE a F\nG a H\nI a J\nK a L\nM a N\nO a P\nQ a R\nS a T\nU a V\nW a X\nY a Z", "Confirmar", "Cancelar");
            }
            else
            {
                SendClientMessage(playerid, CERRO, "| ERRO | Vocк nгo tem permissгo para usar este comando.");
            }
        }
        else
        {
            SendClientMessage(playerid, CERRO, "| ERRO | Vocк nгo estб em uma casa.");
            return 1;
        }
    }
    return 1;
}
Reply
#2

Isto deve resolver o seu problema :


pawn Код:
CMD:vcasa(playerid, params[])
{
    new bool:EmCasa;
    for(new c = 0; c < MAX_CASAS; c++)
    {
        format(strc, sizeof(strc), "/Casas/Casa_%d.ini", c);
        if(IsPlayerInRangeOfPoint(playerid, 3.0, dini_Float(strc, "PosX"), dini_Float(strc, "PosY"), dini_Float(strc, "PosZ")))
        {
            EmCasa = true;
            if(strcmp(dini_Get(strc, "Dono"), pNick(playerid), true) == 0)
            {
                ShowPlayerDialog(playerid, D_VeiculoC, DIALOG_STYLE_LIST, "{DDA0DD}Veнculo Casa", "A a B\nC a D\nE a F\nG a H\nI a J\nK a L\nM a N\nO a P\nQ a R\nS a T\nU a V\nW a X\nY a Z", "Confirmar", "Cancelar");
            }
            else
            {
                SendClientMessage(playerid, CERRO, "| ERRO | Vocк nгo tem permissгo para usar este comando.");
            }
        }
    }
    if(!EmCasa)
    {
        SendClientMessage(playerid, CERRO, "| ERRO | Vocк nгo estб em uma casa.");
    }
    return 1;
}


Espero ter ajudado .
Reply
#3

Valeu rjjj, deu certo.

aproveitando o topico, outro erro estranho

warning 213: tag mismatch

Em AddStaticVehicleEx do cуdigo

pawn Код:
for(new c = 0; c < M_C; c++)
    {
        format(strc, sizeof(vcstr), "/Carros/Carro_%s.ini", c);
        if(dini_Exists(vcstr))
        {
            AddStaticVehicleEx(dini_Float(vcstr, "CID"), dini_Float(vcstr, "cPosX"), dini_Float(vcstr, "cPosY"), dini_Float(vcstr, "cPosZ"), dini_Float(vcstr, "cPosA"), 0, 0, 20);
        }
    }
Ja tentei de tudo, mas nгo consigo arrumar..
Reply
#4

Quote:
Originally Posted by YaaN
Посмотреть сообщение
Valeu rjjj, deu certo.

aproveitando o topico, outro erro estranho

warning 213: tag mismatch

Em AddStaticVehicleEx do cуdigo

pawn Код:
for(new c = 0; c < M_C; c++)
    {
        format(strc, sizeof(vcstr), "/Carros/Carro_%s.ini", c);
        if(dini_Exists(vcstr))
        {
            AddStaticVehicleEx(dini_Float(vcstr, "CID"), dini_Float(vcstr, "cPosX"), dini_Float(vcstr, "cPosY"), dini_Float(vcstr, "cPosZ"), dini_Float(vcstr, "cPosA"), 0, 0, 20);
        }
    }
Ja tentei de tudo, mas nгo consigo arrumar..
A tag do primeiro parвmetro da funзгo AddStaticVehicleEx й a _: .



Sendo assim o argumento do mesmo deve estar associado a ela :


pawn Код:
for(new c = 0; c < M_C; c++)
    {
        format(strc, sizeof(vcstr), "/Carros/Carro_%s.ini", c);
        if(dini_Exists(vcstr))
        {
            AddStaticVehicleEx(dini_Int(vcstr, "CID"), dini_Float(vcstr, "cPosX"), dini_Float(vcstr, "cPosY"), dini_Float(vcstr, "cPosZ"), dini_Float(vcstr, "cPosA"), 0, 0, 20);
        }
    }


Espero ter ajudado .
Reply
#5

Valeu rjj.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)