[Ajuda] Sistema de telefone.
#1

Galera, estou precisando de uma ajuda com esse sistema de telefone...

Eu testei o sistema, com 2 jogadores, um com id 0 e outro com id 1
o comando /sms, pelo oque eu testei, sу quem ta conseguindo mandar a sms, й o jogador com o ID 1, o ID 0 Quando manda aparece: a mensagem nгo foi entregue com exito... fala que nгo enviou.. sendo que o numero do telefone esta certo..
e o comando /chamar ta igual tambem... so quem conseguiu ligar foi o jogador com ID 1

pawn Код:
COMMAND:sms(playerid, params[])
{
    new string[126], smstext[126], tnum;
   
    if(PlayerStat[playerid][TelNumber] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "Vocк nгo tem um telefone!");
    if(sscanf(params, "is[126]", tnum, smstext)) SendClientMessage(playerid, COLOR_GREY, "DIGITE: /sms [nъmero] [texto]");

    else
    {
        format(string, sizeof(string), "* %s pega seu telefone e envia uma mensagem de texto.", NameInIC(playerid));
        SendNearByMessage(playerid, COLOR_ACTION, string, 30.0);

        new sender = PlayerStat[playerid][TelNumber];

        for(new i = 0; i < MAX_PLAYERS; i++)
        if(IsPlayerConnected(i))

        if(PlayerStat[i][TelNumber] == tnum)
        {
            if(onoff[i] == 0) return SendClientMessage(playerid, COLOR_WHITE, "O nъmero discado pode nгo existir ou o telefone estб desligado.");

            format(string, sizeof(string), "[SMS] %s, De: [%d]", smstext, sender);
            SendClientMessage(i, COLOR_ORANGE, string);

            SendClientMessage(playerid, COLOR_WHITE, "A mensagem de texto foi entregue com кxito.");
            return 1;
        }
        else
        {
            SendClientMessage(playerid, COLOR_WHITE, "A mensagem de texto nгo foi entregue com кxito.");
            return 1;
        }
    }
    return 1;
}
pawn Код:
COMMAND:chamar(playerid, params[])
{
    new tnum, string[126], sender = PlayerStat[playerid][TelNumber];

    if(PlayerStat[playerid][TelNumber] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "Vocк nгo tem um telefone!");
    if(sscanf(params, "d", tnum)) SendClientMessage(playerid, COLOR_GREY, "DIGITE: /chamar [nъmero]");
    else SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);

    for(new i = 0; i <  MAX_PLAYERS; i++)
    {
        if(PlayerStat[i][TelNumber] == tnum)
        {
            if(onoff[i] == 0)
            {
                SendClientMessage(playerid, COLOR_WHITE, "O nъmero discado pode nгo existir ou o telefone estб desligado.");
                SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
                ClearAnimations(playerid);
                return 1;
            }
            if(oncall[i] == 1) return SendClientMessage(playerid, COLOR_WHITE, "O nъmero que vocк discou jб estб em uma chamada.");
            if(iscalled[i] == 1) return SendClientMessage(playerid, COLOR_WHITE, "O nъmero que vocк discou jб estб sendo chamado.");

            Mobile[playerid] = i;
            format(string, sizeof(string), "^ O seu telefone estб tocando... (/atender). Chamada recebida de %d.", sender);
            SendClientMessage(i, COLOR_ORANGE, string);

            format(string, sizeof(string), "* %s pega seu telefone e disca um nъmero e liga em seguida para o mesmo.", NameInIC(playerid));
            SendNearByMessage(playerid, COLOR_ACTION, string, 30.0);
            iscalled[i] = 1;
            return 1;
        }
        else
        {
            SendClientMessage(playerid, COLOR_RED, "O nъmero discado estб ocupado.");
            SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
            ClearAnimations(playerid);
            return 1;
        }
    }
    return 1;
}
E quando o jogador com ID 1 ligava para o ID 0, aparece que entraram na chamada os dois, mas quando falavam nгo aparecia de um para o outro, e nem que tava em telefone...

Meu OnPlayerText

pawn Код:
public OnPlayerText(playerid, text[])
{

    new
        realchat = 1,
        str[ 128 ]
    ;
    if(IsPlayerConnected(playerid))
    {
        if(realchat)
        {
            if(PlayerStat[playerid][Accent] == 0)
            {
                format(str, sizeof(str), "%s diz: %s", NameInIC(playerid), text);
                SendNearByMessage(playerid, COLOR_WHITE, str, 20.0);
            }
            else
            {
                new
                    accent[20]
                ;
                switch(PlayerStat[playerid][Accent])
                {
                    case 1: accent = "Russo";
                    case 2: accent = "Italiano";
                    case 3: accent = "Alemгo";
                    case 4: accent = "Japonкs";
                    case 5: accent = "Franзкs";
                    case 6: accent = "Espanhol";
                    case 7: accent = "Chinкs";
                    case 8: accent = "Britвnico";
                }
                format(str, sizeof(str), "%s [Sotaque %s] diz: %s", NameInIC(playerid), accent, text);
                SendNearByMessage(playerid, COLOR_WHITE, str, 20.0);
            }
            return 0;
        }
        if(oncall[playerid] == 1)
        {
            for(new i = 0; i <= MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i) == 1)
                {
                    if(Mobile[i] == playerid)
                    {
                        new string[126];

                        format(string, sizeof(string), "%s [Telefone] diz: %s", NameInIC(playerid), text);
                        SendNearByMessage(playerid, COLOR_GREY, string, 20.0);

                        format(string, sizeof(string), "%s [Telefone] diz: %s", NameInIC(playerid), text);
                        SendClientMessage(i,  COLOR_YELLOW, string);
                    }
                }
            }
        }
        return 0;
    }
    return 1;
}
Me expliquem aonde eu errei? e me ajudem a consertar? Obrigado.
Reply
#2

up amgs
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)