[Pedido] NPC bug nos carros das orgs
#1

Galera quase nem posto muito as minhas dъvidas que й pra nгo incomodar muito vocкs aqui do fуrum.

Minha Duvida й o seguinte, criei um NPC Taxi e tipo queria colocar o ED BOT criado pelo Bruno para conversar com os passageiros, tentei mas nгo consegui.

Minha outra Dъvida й que quando eu coloco o NPC no server os carros das orgs tambйm ficam Bugados tipo quando um player da org vagos por exempro entra em um carro de sua org diz a mensagem vocк nгo й policia Militar por isso nгo tem as chaves.


pawn Код:
#include <a_samp>
#include <a_npc>
// ===========================================================================
#if !defined HTTP_ERROR_BAD_HOST
        #include a_http
#endif
#define function::%0(%1) forward %0(%1); public %0(%1)
// ===========================================================================
new Chuck_NorrisNPCVehicle;
// ===========================================================================
public OnFilterScriptInit()
{
    print("edbot");
    printf("ED BOT em Pawn Carregado !!");
    ConnectNPC("Chuck_Norris","edbot");
    Chuck_NorrisNPCVehicle = CreateVehicle(431, 0.0, 0.0, 5.0, 0.0, 3, 1, 5000);
    return 1;
}
// ===========================================================================
public OnPlayerSpawn(playerid)
{
    SendClientMessage(playerid, -1, "[Info] Para conversar com Chuck_Norris use /bot [frase] ..");
    if(!IsPlayerNPC(playerid)) return 1;
    new npcname[64];
    GetPlayerName(playerid,npcname,64);
    if(!strcmp(npcname,"Chuck_Norris",true))
    {
        {
            PutPlayerInVehicle(playerid, Chuck_NorrisNPCVehicle, 0); //Colocar o NPC dentro do veнculo que criamos para isso.
            SetPlayerSkin(playerid, 61);
            SetPlayerColor(playerid,0x33AA33AA);
            SetSpawnInfo(playerid,0,255,1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0 );
            new Text3D:Chuck_NorrisNPCVehicle = Create3DTextLabel("Chuck_Norris",0x33AA33AA,30.0,40.0,50.0,40.0,0);
            Attach3DTextLabelToPlayer(Chuck_NorrisNPCVehicle, playerid, 0.0, 0.0, 0.5);
        }
        return 1;
    }
    //Outras coisas para os jogadores normais vai aqui!
    return 1;
}
// ===========================================================================
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/bot", true, 4))
    {
        if( !cmdtext[4] )
        {
        return SendClientMessage(playerid, -1, "[Erro] Use corretamente: /bot [frase]");
        }
        RobotCheck(playerid, cmdtext[5]);
        return true;
    }
    return false;
}
// ===========================================================================
// ===========================================================================
function::RobotCheck(playerid, texto[])
{
    new link[1024];
    format(link, 1024, "www.inbot.com.br/cgi-bin/bot_gateway.cgi?server=bot.insite.com.br:8085&charset=text&pure=1&js=1&admi=&msg=%s", urlencode(texto));
    HTTP(playerid, HTTP_GET, link, "\0", "RobotResponse");
    return true;
}
// ===========================================================================
function::RobotResponse(playerid, c, data[])
{
    if ( c ==  200  )
    {
        removeLine(data);
        new mensagem[256];
        format(mensagem, 256, "{FF0000}Chuck_Norris:{FFFFFF} %s", data);
        SendClientMessage(playerid, -1, mensagem);
        print(data);
    }
    return true;
}
// ===========================================================================
//
//  Url encodes a specific string
//  @param string string
//  @author DracoBlue
//
// ===========================================================================
urlencode(string[])
{
    new ret[1024];
    ret[0] = 0;
    new i = 0;
    new p = 0;
    new s = 0;
    while (string[i] != 0)
    {
        if
        (
        (string[i] >= 'A' && string[i] <='Z')
        || (string[i] >= 'a' && string[i] <='z')
        || (string[i] >= '0' && string[i] <='9')
        || (string[i] == '-')
        || (string[i] == '_')
        || (string[i] == '.')
        )
        {
            ret[p] = string[i];
        }
        else
        {
            //
            ret[p] = '%';
            p++;
            s = (string[i] % 16); //
            ret[p+1] = (s>9) ? (55+s) : (48+s); // 64 - 9 = 55
            s = floatround((string[i] - s)/16);
            ret[p] = (s>9) ? (55+s) : (48+s); // 64 - 9 = 55
            p++;
        }
        p++;
        i++;
    }
    return ret;
}
// ===========================================================================
function::removeLine(texto[])
{
    for(new i, c; texto[i]; i++)
    {
        if(texto[i] == '\n')
        {
            texto[i] = ' ';
        }
        if(texto[i] == '<')
        {
            c = i;
            while(texto[++i])
            {
                if(texto[i] == '>')
                {
                    strdel(texto, c, i+1);
                    break;
                }
            }
        }
    }
    return true;
}
// ===========================================================================
Nгo vejo muita importвncia no +rep mas se me ajudarem darei com muito prazer.

Des de jб agradeзo a todos.
Reply
#2

Bugou os ids do carros.

Acho que й isso, o resto eu nгo sei
Reply
#3

Algum abenзoado?
Reply
#4

Alguйm ai pra me ajudar? por favor.
Reply
#5

Boa idйia... Explique como vc quer que ele converse com os passageiros?
Reply
#6

Tipo comeзando a conversa no "OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)" Olб tudo bem, bom dia, boa tarde, boa noite e etc... ai ja no decorrer da corrida o player vai comeзar a conversar com o bot sabendo que pode falar com ele tipo assim.

Tambйm acho que dб pra colocar no "OnPlayerExitVehicle(playerid, vehicleid)" Tchau, atй mais, atй logo e etc...
Reply
#7

Quote:
Originally Posted by alexcordeiro
Посмотреть сообщение
Tipo comeзando a conversa no "OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)" Olб tudo bem, bom dia, boa tarde, boa noite e etc... ai ja no decorrer da corrida o player vai comeзar a conversar com o bot sabendo que pode falar com ele tipo assim.
Quem tem que comeзar a conversa й o player!

e o cуdigo principal й esse
pawn Код:
RobotCheck(playerid, VARIAVEL TEXTO);
Vocк pode usar em qualquer outro local do seu script
Reply
#8

Quote:
Originally Posted by Schocc
Посмотреть сообщение
Quem tem que comeзar a conversa й o player!

e o cуdigo principal й esse
pawn Код:
RobotCheck(playerid, VARIAVEL TEXTO);
Vocк pode usar em qualquer outro local do seu script
й mesmo acho que й sу colocar assim:
pawn Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    SendClientMessage(playerid, COLOR_GREY, "Converse com o Motorista Chuck_Norris!");
    return true;
}
Reply
#9

Exemplo de como vc pode estar fazendo
pawn Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    SendClientMessage(playerid, COLOR_GREY, "Converse com o Motorista Chuck_Norris!");
    return true;
}
public OnPlayerText( playerid, text[] )
{
    if( IsPlayerInVehicle( playerid, ID DO VE BUSГO ) )
    {
        RobotCheck(playerid, text );
    }
    return true;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)