0

TUTORIAL - Criando Um Novo NPC [PEDIDO]


A dúvida de muitos é criar um NPC, então muitas pessoas pediram para postar pela nossa página de contato, confira abaixo um tutorial.



GRAVANDO UM ARQUIVO DE REPRODUÇÃO

Primeiro de tudo, precisamos gravar um arquivo de reprodução para o nosso NPC usar. Inicie um servidor, de qualquer modo de jogo e então logue na rcon, e carregue o filterscript npc_record utilizando /rcon loadfs npc_record , agora, existem 3 comandos principais para gravação de seu NPC no filterscript NPC_RECORD...
/vrecord <nome_do_arquivo> - Inicia a gravação de um caminho de veículo para o nome do arquivo especificado.
/ofrecord <nome_do_arquivo> - Inicia uma gravação apé para o arquivo especificado.
/stoprecord - Para a gravação do veículo em trajetos apé.
Neste tutorial, vamos estar fazendo um trajeto do veículo, assim que entrar em um veículo, digite /vrecord meunpc (Você deve estar logado na rcon) para iniciar a gravação.
Faça sua trajetória e quando tiver terminado use /stoprecord .
Feche o jogo, e vá para o directório scriptfiles, deve haver um arquivo chamado meunpc.rec , mova-o para /npcmodes/recordings/ .
Feito isso, você já gravou um caminho para o NPC, e mudou o mesmo para o directório necessário.
Controlando o NPC - Você pode ter notado um monte de scripts de pawn no directório npcmodes, estes são autônomos 'mini" scripts que controlam o comportamento do seu NPC. Então, vamos criar um caminho para o seu recém-gravado!
Inicie um novo arquivo em PAWNO, e substitua seu conteúdo com
#define RECORDING "meunpc" //Este é o nome do seu arquivo de gravação, sem a extenção(.rec).
#define RECORDING_TYPE 1 //1 para gravações em veículo e 2 para gravações apé.

#include 
main(){}
public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

#if RECORDING_TYPE == 1
  public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);
  public OnNPCExitVehicle() StopRecordingPlayback();
#else
  public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
#endif
Isso pode parecer confuso, por isso agora explicarei isso por linha
#define RECORDING "meunpc" //Este é o nome do seu arquivo de gravação, sem a extenção(.rec).
Como diz o comentário, este é o nome do caminho que você gravou sem a extensão. Nossa reprodução de gravação foi nomeado meunpc, e seu arquivo foi meunpc.rec assim que entramos no "meunpc" .

#define RECORDING_TYPE 1 //1 para gravações em veículo e 2 para gravações apé.
Como diz o comentário de novo, este é o tipo de gravação. Se o seu NPC está apé, esta definição seria definida como 2, se estava em um veículo seria definida como 1.
#include <a_npc>
Incluindo as funções de SAMP NPC
public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

OnRecordingPlaybackEnd é uma CallBack incluida na biblioteca NPC, como mostrado na linha acima. Esta linha de código faz com que o ciclo de gravação, como quando a produção da gravação terminou, ele inicia a gravação. Ou seja, nunca parando.
public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);

Esta é uma outra CallBack incluida na livraria NPC. Iso irá iniciar a reprodução quando o NPC for colocado em um veículo.
public OnNPCExitVehicle() StopRecordingPlayback();

Contudo uma outra CallBack incluida na livraria NPC, isto irá parar a reprodução da gravação, se por qualquer razão, o NPC sai do veículo.
public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

Contudo uma outra CallBack incluida na livraria NPC, isso irá iniciar a reprodução quando o NPC spawnar. Como você pode ver, é tudo muito simples. Agora salve o seu NPC "mini" script como meunpc.pwn no directório de seu servidor SAMP /npcmodes/ e compile. Se for compilado, você pode continuar para a última etapa deste tutorial, se não conseguir compilar, certifique-se de que você atualizou seu SA-MP que inclui as últimas versões da 0.3, e certifique-se de não ter perdido qualquer parênteses ou semi -e-vírgula.

CONECTANDO SEU NPC

Então, nós temos o caminho do arquivo, temos o "mini" pawn script para controlar o NPC diretamente, agora precisamos carregar o NPC em um Gamemode ou Filterscript. Feche o mini script "pawn", e carregar o seu modo de jogo ou em uma filterscript em PAWNO, é hora de ser introduzida para a função ConnectNPC, e como o próprio nome sugere, é utilizado para conectar um NPC ao servidor. Vamos explorar estes parâmetros de funções, e ver oque eles significam...
ConnectNPC("Sucre","meunpc");
"Sucre" - O primeiro parâmetro é o nome do NP´C´s. Com isso você pode detectar diferentes personagens, e executar ações diferentes a eles.
"MeuNPC" - Este é o nome do arquivo (sem extensão), do "mini" script que criamos acima.
Com seus novos conhecimentos da função ConnectNPC, vamos tentar fazer nosso NPC ligar quando seu Gamemode ou Filterscript carregar.
public OnGameModeInit()
{
  print("meu gamemode");
  ConnectNPC("MeuPrimeiroNPC","meunpc");
  return 1;
}
Caso você esteja adcionando o NPC em um Filterscript 
public OnFilterScriptInit()
{
  print("meu filterscript");
  ConnectNPC("MeuPrimeiroNPC","meunpc");
  return 1;
}
Agora, como nós criamos um caminho em um veículo, temos de criar um veículo para o NPC a unidade em torno de pol OnGameModeInit se parece com isso, agora eu criei um veículo para o NPC de usar (caso você optou pela opção do NPC sem veículo, pule esta etapa).
new MeuPrimeiroNPCVehicle; //Variavel global
public OnGameModeInit()
{
  print("meu gamemode");
  ConnectNPC("MeuPrimeiroNPC","meunpc");
  MeuPrimeiroNPCVehicle = CreateVehicle(400, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);
  return 1;
}
Caso você esteja adcionando o NPC em um Filterscript
new MeuPrimeiroNPCVehicle; //Variavel global
public OnFilterScriptInit()
{
  print("meu filterscript");
  ConnectNPC("MeuPrimeiroNPC","meunpc");
  MeuPrimeiroNPCVehicle = CreateVehicle(400, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);
  return 1;
}
Note que a localização real do veículo não importa, já que será teleportado para onde o caminho começa a NPC´s, quando o caminho começa a reprodução.
Só mais uma coisa antes que você pode ir no jogo e testar seu primeiro NPC, é preciso colocar o NPC dentro do veículo que criamos para isso, eu fiz usando OnPlayerSpawn (caso você optou pela opção do NPC sem veículo, pule esta etapa).
public OnPlayerSpawn(playerid)
{
  if(IsPlayerNPC(playerid)) //Verifica se o jogador é um NPC.
  {
    new npcname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, npcname, sizeof(npcname)); //Obtendo o nome do(s) NPC(s).
    if(!strcmp(npcname, "MeuPrimeiroNPC", true)) //Checando se o nome do NPC é MeuPrimeiroNPC
    {
      PutPlayerInVehicle(playerid, MeuPrimeiroNPCVehicle, 0); //Colocar o NPC dentro do veículo que criamos para isso.
    }
    return 1;
  }
  //Outras coisas para os jogadores normais vai aqui!
  return 1;
}
Caso você queira adcionar a outra estrutura, como por exemplo 2 NPC´s
public OnPlayerSpawn(playerid)
{
  if(IsPlayerNPC(playerid)) //Checa se o jogador é um NPC.
  {
    new npcname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, npcname, sizeof(npcname)); //Obtendo o nome do(s) NPC(s).
    if(!strcmp(npcname, "MeuPrimeiroNPC", true)) //Checando se o nome do NPC é MeuPrimeiroNPC
    {
      PutPlayerInVehicle(playerid, MeuPrimeiroNPCVehicle, 0); //Colocar o NPC dentro do veículo que criamos para isso.
      return 1;
    }
    if(!strcmp(npcname, "MeuSegundoNPC", true))
    {
      PutPlayerInVehicle(playerid, OutroVehicleID, 0);
      return 1;
    }
    return 1;
  }
  //Outras coisas para os jogadores normais vai aqui!
  return 1;
}
Agora complie o seu Gamemode ou Filterscript e vá no jogo, com alguma sorte, você vai ver a sua condução NPC em torno do caminho que você definiu para ele, parabéns! Você fez o seu primeiro NPC !

Autor: Sucre Pleasure
Tamanho: N/A
Descrição: Caso você encontre algum problema, comente a postagem !
FACEBOOK
0 BLOGGER

Nenhum comentário:

Postar um comentário

www.FAMILIA-SAMP.blogspot.com

1. Não pedir parceria nesta postagem
2. Não Ofender
3. Aguarde, que iremos responder seu comentário o mais rápido possível

Nossa equipe agradece por sua compreensão

Seu comentário, só irá para a nossa caixa de comentários, quando aparecer uma pequena mensagem na caixa branca, onde você comenta. A mensagem é: "Seu comentário estará visível depois de ser aprovado." Assim que aparecer essa mensagem, tenha a certeza que foi publicado, enquanto não aparecer, comente novamente.

Samp vicio, Vicio samp, Forum Samp, Samp forum, Baixaki, Hacker, GTA Modes, GTA San Andreas, Samp team, Y_less, Facebook samp, samp exclusivo, Exclusivo, dominio, samp, gta, multiplayer, gamemodes, filterscripts, ds, dominiosamp, sa-mp, xat, online, powers, days, xats, downloads, gm, fs, sobeit, xiter, 0.3a, 0.3b, 0.3c, 0.3d, 0.3e, 0.3x, versões, pawno, pawn, c++, scripter, mapper, scripters, mappers, codar, exclusiva, divulgar, servidores, server, servidor, social, redes, facebook, socialsamp, samphost, host, painel, ls, sf, lv, los, santos, san, fierro, las, venturas, forum, blog, gratis, banner, mta, hts, chucksamp, knd, homehots, sampknd, chuck, pastebin, scriptfiles, plugin, DS, Jogar, Brasil, Eua, English, San Andreas, GTA Online, Mods, TuToriais, Mapas, RPG, DM, DRIFT, Video Aulas, Includes, Download, Rc1, Rc3, Rc6, Rc7, 0.3c, rcon, Baixar Completo, Codigos, pwn, amx, public, Armas, Carros, Parceria, Como Jogar, Hackers Sobeit, Xiter, Aplicativos, novidades, novas versoes, Host Para Samp, MTA Editor, Hts, Tudo Gratis, Ajuda, Divulgue, seu Servidor samp, No Chat, Xat, PublicSAMP, SAMP GM, GM RPG, gm 0.3x , SAMP 0.3x 0.3d 0.3c 0.3e, GTA SA, SA-MP GM, GM RPG Gratis, GM Dten, TDM, Mata mata, Roleplay, Facebook, 0.3z, gm 0.3z, fs 0.3z, aplicativos, códigos, tutoriais, videogames,video games,video game, SAMP, gamemode, gta samp, homehots, san mods, matheus, matheus felype, youtube, google, marck zuckenberg, reality textures v3, homehots, samp-vicio, samp vicio, vicio samp, hotshome, sampknd, samp knd, knd samp, google, familia, familiasamp, famíliasamp, familiasamp.com, carros para gta, mods gta, gta mods, gta sa mods, modificaes gta, gta rio, gta v, gta 5, v, 5, gta, san andreas, iv, grand theft auto, elite, mods, skins, programas, trainers, carros, vw, ford, gol, trainer, fraps, cleo 3, carros brasileiros, detonados, cheats, cdigos, tropa de elite, top gta, gta sa, gta 4, caminhes, carretas, rodas, equipamentos, series, tutoriais, tutorial, Gta,grand theft auto,gta,gta enb series,Grand theft auto 5,Grand theft auto V,Grand theft auto SA IV ,Grand theft auto SA vice,Tommy Vercetty,Ricardo Diaz,Gonzales,Phil Cassidy,Big Mitch Baker,Pastor Richards, inferno, stretch, freeway, voodoo,walton, virgo,GPX,banshee,rancher,videogames,video games,video game, SAMP, gamemode, gta samp, homehots, san mods, eraldo, Matheus Felype, youtube, google, marck zuckenberg, reality textures v3, Felype Matheus, san mods, texugo mods, gta rockstar, renovar gta, bras edition, google, sla, nada, carro, moto, facebook, samp, gamemode, filterscript, fs, include, server, samp, 0.3z, gamemode, filterscript, eraldo, jonathan, san mods, gta rockstar, google, asdasd, asdasd, mc daleste, Mods gta, mods, carros gta sa, motos gta sa, mods gta iv, mods, gta sa, download gta v pc, download gta iv, download gta sa pc, zmodeler, gta inside, carros para gta, mods gta, gta mods, gta sa mods, modificaes gta, gta rio, gta v, gta 5, v, 5, gta, san andreas, iv, grand theft auto, elite, mods, skins, programas, trainers, carros, vw, ford, gol, trainer, fraps, cleo 3, carros brasileiros, detonados, cheats, cdigos, tropa de elite, top gta, gta sa, gta 4, caminhes, carretas, rodas, equipamentos, series, tutoriais, tutorial, Gta,grand theft auto,gta,gta enb series,Grand theft auto 5,Grand theft auto V,Grand theft auto SA IV ,Grand theft auto SA vice,Tommy Vercetty,Ricardo Diaz,Gonzales,Phil Cassidy,Big Mitch Baker,Pastor Richards, inferno, stretch, freeway, voodoo,walton, virgo,GPX,banshee,rancher,videogames,video games,video game, SAMP, gamemode, gta samp, homehots, san mods, eraldo, matheus felype, youtube, google, marck zuckenberg, reality textures v3, carros para gta, mods gta, gta mods, gta sa mods, modificações gta, gta rio, gta v, gta 5, v, 5, gta, san andreas, vice city, iv, iii, grand theft auto, elite, mods, skins, programas, trainers, carros, vw, ford, gol, trainer, fraps, cleo 3, carros brasileiros, detonados, cheats, BAIXAR, GTA, FILTERSCRIPT, FIX, GAMEMODE, INCLUDE, MAPA, MODIFICAÇÕES, PLUGIN, PROGRAMA, TEXTURA, TUTORIAL, Tudo Para seu servidor SA-MP - Download Gamemodes, Filterscripts, Plugins, Tutoriais, Download de servidor SA-MP (GTA San Andreas), GTA Online, gamemodes, filterscipts, plugins, matheus felype, mods gta, mods para gta, gta sa, brothers designs, gta rockstar, san mods, eraldo, fábio, tudo para gta, mods de gta, como instalar, youtube, facebook, google, eraldo okado, okado eraldo, mods para gta v, gta v, gta sa, gta iv, gta vc, gta iii, tudo para gta, carros para gta, mods gta, gta mods, gta sa mods, modificaes gta, gta rio, gta v, gta 5, v, 5, gta, san andreas, iv, grand theft auto, elite, mods, skins, programas, trainers, carros, vw, ford, gol, trainer, fraps, cleo 3, carros brasileiros, detonados, cheats, cdigos, tropa de elite, top gta, gta sa, gta 4, caminhes, carretas, rodas, equipamentos, series, tutoriais, tutorial, Gta,grand theft auto,gta,gta enb series,Grand theft auto 5,Grand theft auto V,Grand theft auto SA IV ,Grand theft auto SA vice,Tommy Vercetty,Ricardo Diaz,Gonzales,Phil Cassidy,Big Mitch Baker,Pastor Richards, inferno, stretch, freeway, voodoo,walton, virgo,GPX,banshee,rancher,videogames,video games,video game, SAMP, gamemode, gta samp, homehots, san mods, eraldo, eraldo okado, youtube, google, marck zuckenberg, reality textures v3, bdgtamods, Mods para GTA SA e outros, Carros para GTA, Mods GTA San Andreas, GTA Mods, San Andreas, Carros, Mapas, Mods, Cleo 3, Cleo 4 Armas, Aviões, Barcos, Cheats, Detonados, Helicópteros, Motos, Patches, Programas, Savegames, Skins, Tutoriais para GRAND THEFT AUTO San Andreas, gta san andreas, san andreas, codigos gta,download gta,gta para pc,manhas,manhas gta,jogos gta,baixar gta,carros de gta,gta iv,gta v,mods,mods gta,mods para gta,mods cleo,cleo 4,skins,mapas gta,motos, hornet, honda, cbr, 2015, xat, xat.com, bdgtamods.com, brasil equipe na fixa, familia samp.